분류 전체보기
-
kubectl Image를 이용한 pod 내에서 secret 생성하기K8S 2022. 8. 5. 16:05
틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! pod내에서 secret을 생성해야 할 일이 있어서 나중에 내가 다시 보려고 포스팅 한다. 명시할 리소스들은 다음과 같다. Service account Role Role binding Pod apiVersion: v1 kind: ServiceAccount metadata: name: kubectl apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: create-secret-role rules: - apiGroups: [""] resources: ["secrets"] verbs: ["create", "list"] apiVersion: rbac.auth..
-
안정 해시 설계시스템 설계 2022. 8. 2. 22:35
[가상 면접 사례로 배우는 대규모 시스템 설계]를 읽고 작성하는 포스트 입니다. 틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! 수평적 규모 확장성 구조를 위해서는 데이터나 요청을 서버에 균등하게 나누는 것이 중요하다. 이번 포스팅에서는 수평적 규모 확장성 구조에 왜 안정해시 설계가 필요한지에 대해서 작성한다. 우선 안정 해시 설계에 대해서 알아보기전에, 어떤 문제를 풀려고 하는지에 대해서부터 알아보자. 다음 문제에 주목하자. 해시 키 재배치(rehash) 문제 4개의 캐시 서버가 있다고 가정하자. 보편적으로 데이터를 4개의 캐시 서버에 고루 배정할 때 다음과 같은 해시 함수를 사용할 수 있다. serverIndex = hash(key) % 4 예를 들어 hash(..
-
처리율 제한 장치(Rate Limiter) 설계시스템 설계 2022. 7. 31. 17:20
[가상 면접 사례로 배우는 대규모 시스템 설계]를 읽고 작성하는 포스트입니다. 틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! 이번 포스팅은 처리율 제한 장치의 개념, 설계할 때 고려해야 할 부분 등에 대한 내용을 정리한다. 처리율 제한 장치(Rate Limiter)란? - 처리율 제한 장치는 클라이언트 또는 서비스가 보내는 트래픽의 처리율을 제어하기 위한 장치다. - 특정 기간 동안 전송되는 클라이언트의 요청을 제한하는 장치다. - 정의된 임계치를 넘어가면 이후에 들어온 모든 요청들의 처리를 중단한다. 구체적으로 다음과 같은 경우들을 예로 들 수 있다. - 사용자는 초당 2회 이상의 새 글을 올릴 수 없음 - 같은 IP 주소로 하루에 10개 이상의 계정을 생성할 ..
-
대규모 시스템에서 데이터베이스 사용시스템 설계 2022. 7. 24. 23:12
틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! 대규모 시스템 설계에서 필요한 데이터베이스 사용에 대해 학습한 내용을 정리했다. 어떤 데이터베이스를 사용할 것인가 데이터베이스에는 여러가지 종류가 있지만, 크게 RDBMS와 NoSQL 이 두가지에 대해서 알아본다. 1. RDBMS 자료를 테이블, 행과 열을 통해서 표현한다. 테이블의 관계에 따라 Join이 가능하다. 정규화를 거쳐 데이터 중복 없이 한번만 저장할 수 있다. 스키마로 인해 데이터가 유연하지 못하다. Mysql, Oracle, postgresql, sqlite 2. NoSQL Not only SQL이라는 슬로건에서 생겨난 데이터베이스로 key와 value로 데이터를 관리한다. 관계형 모델을 사용하지 않으며..
-
K8S에서 secret을 통해 AWS credential 사용시 invalid header errorTrouble Shooting 2022. 7. 23. 00:53
틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! pod 내부에서 secret을 통해 aws credential을 사용해야 했는데, secret에 값이 뭔가 잘못 들어갔는지 다음과 같은 에러가 출력되었다. invalid header field value "AWS4-HMAC-SHA256 Credential=AWS-ACCESS-KEY-ID\n/20180808/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=74fe603e8f353df20d2d87fdd9761f~~~~" for key Authorization (정확한 에러는 기억이 나지 않아 비슷한 에러를 긁어 ..
-
스레드(Thread) 관리운영체제 2022. 7. 11. 00:11
틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! 스레드(사용자 수준 스레드) 사용의 이점 1. 프로세스 내 스레드들은 자원을 공유해서 사용하기 때문에 비용이 적은 스레드 수준의 context switching만 발생한다. 2. 일부 스레드 처리가 지연되어도, 다른 스레드들은 작업을 계속 처리할 수 있다. 3. 멀티 프로세서 시스템에서 병렬 처리가 가능하다. 4. 프로세스 수준의 context switching가 발생하지 않기 때문에 멀티 프로세스를 사용하는 것 보다 경제적이다. 사용자 스레드와 커널 스레드 스레드는 크게 사용자 수준 스레드와 커널 수준 스레드로 나눌 수 있다. 운영체제에서는 사용자 수준 스레드와 커널 수준 스레드를 다대다 맵핑하여 사용한다. 1. 사..
-
Process 실행 원리와 context switching운영체제 2022. 7. 10. 18:13
틀린 내용이 있을 수도 있습니다! 틀린 내용이 있다면 댓글로 달아주시면 감사하겠습니다! 프로세스 실행 원리 1. 프로세스가 실행되기 전 프로세스는 HDD나 SSD에 올라가 있으며, 이 상태를 job 또는 Program이라고 한다. 2. job을 실행시키면 프로세스 당 PCB가 하나 생성되어 시스템 커널에 등록된다. 커널에 등록된 후(커널 메모리에 할당) 메모리 할당 받기전 상태를 created 상태라고 한다. 3. created 상태에 있는 프로세스는 메모리 할당을 받게 되면 프로세스 상태는 ready 상태로 변경된다. 이 때부터 프로세스는 프로세서 외 필요한 모든 자원을 할당 받은 상태가 되며, 프로세서만 할당 받게 되면 즉시 실행가능한 상태가 된다. 4. 프로세스 스케줄링에 의해 해당 프로세스를 실행..
-
정보보호론 과제 정리메모 및 기타 2021. 10. 19. 21:54
정보보호의 3대 목표를 기술하고 각각에 대하여 설명하시오 기밀성, 무결성, 사용성을 정보보호의 3대 목표로 한다. 기밀성은 정보의 소유자가 원하는 대로 정보의 비밀이 유지되어야 하는 원칙이다. 정보는 소유자의 인가를 받은 사람만이 접근할 수 있어야 하며, 인가되지 않은 정보는 공개가 금지되어야 한다. 무결성은 비인가된 자에 의한 정보의 변경, 삭제, 생성 등으로부터 보호되어 정보의 정확성, 완전성이 보장되어야 한다는 원칙이다. 정보는 항상 정확성을 일정하게 유지하여야 하며, 인가받은 방법에 대해서만 변경이 가능해야한다. 가용성은 정보시스템은 적절한 방법으로 작동되어야 하며, 정당한 방법으로 권한이 주어진 사용자에게 정보서비스를 거부하여서는 안 된다는 원칙이다. 사용자가 소유하고 있는 정보를 적시에 적절하..