본문 바로가기

DevOps23

[CKA] 105-115 105. A note about Secrets 인코딩 Secret은 base64 형식으로 데이터를 인코딩한다. base64로 인코딩된 암호를 가진 사람은 누구나 암호를 디코딩할 수 있다. 따라서 Secret은 그다지 안전하지 않은 것으로 간주될 수 있다. Secret은 암호 및 기타 중요한 데이터가 실수로 노출될 위험이 줄어들기 때문에 일반 텍스트로 저장하는 것보다 안전하다. 보관, 관행 Secret 정의 파일을 소스 코드 레포지토리에 올리지 않는다 ETCD에 암호화되어 저장되도록 ETCD에 저장될 때 Secret에 대한 암호화를 가능하게 한다 생명주기 저장 쿠버네티스는 Secret을 안전하게 처리하기 위해 Secret은 해당 노드의 파드에 필요한 경우에만 노드로 전송된다. kubelet은 Secret이.. 2023. 4. 7.
[CKA] 94-104 Configure Application, Commands, ConfigMap, Secret 94. Solution: Rolling update : (Optional) 95. Configure Application Configuring applications comprises of understanding the following concepts: Configuring Command and Arguments on applications Configuring Environment Variables Configuring Secrets We will see these next 96. Commands Docker 컨테이너는 특정 작업을 실행하기 위한 것이기 때문에 작업이 완료되면 컨테이너가 종료된다. 컨테이너에서 실행되는 프로세스는 Dockerfile에 의해 정의되며, CMD는 컨테이너 안에서 실행될 .. 2023. 4. 5.
[CKA] 62-75 Node Affinity, Taints and Tolerations, DaemonSets, Static Pod 62-75 63. Solution - Node Affinity 주요 목적 Pod가 특정 노드에서 호스팅되도록 하는 것 apiVersion: v1 kind: Pod metadata: name: myapp-pod spec: containers: - name: data-processor image: data-processor affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: size operator: In values: - Large - Medium key 필드 값 설명 In values[] 필드에 설정한 값 중 레이블에 있는 값과 일치하는 것이 하나.. 2023. 4. 3.
[Terraform] 프로덕션 수준의 테라폼 코드 서론 프로덕션 수준 인프라 구축은 어렵다. 여기서 말하는 인프라란 서버, 데이터 저장소, 로드 밸런서, 보안 기능, 모니터링 및 경고 도구, 파이프라인 구축 및 비즈니스 운영에 필요한 기타 모든 기술을 의미한다. 매니지드 서비스를 사용하더라도 작업은 꽤 오래걸리며 깊은 전문성을 갖춘 인력이 팀에 없거나, 끌려다녀 집중할 시간을 갖지 못한다면 시간은 훨씬 더 오래 걸릴 수 있다. 1. 프로덕션 수준 인프라 구축에 오랜 시간이 걸리는 이유 호프스태터의 법칙 “호프스태터의 법칙을 계산에 넣어도 항상 예상한 것보다 더 오래 걸린다.” SW 프로젝트에 걸리는 시간 추정치는 아주 부정확하다. 데브옵스 프로젝트에는 예상 시간보다 2배가 더 소요될 수 있다. 1.1. 데브옵스 산업이 아직 초기 단계이다 테라폼, 도커,.. 2023. 4. 2.
[Terraform] 테라폼의 팁과 요령: 반복문, if문, 배포 및 주의사항 개요 테라폼은 선언적 언어로써 추론하기 쉬운 장점이 있다. 다만 선언적 언어는 보통 반복문, 조건문이 없어 논리적인 수행이 어렵다. 테라폼은 이를 보완하기 위한 다양한 기능들을 제공한다. count 메타 변수 for_each 표현식 for 표현식 create_before_destroy 같은 생명주기 블록 3항 연산자 다양한 함수 1. 반복문 테라폼은 조금씩 다른 상황에 사용하도록 고안된 몇 가지 반복문 구성을 제공한다 count 매개 변수: 리소스를 반복 for_each 표현식: 리소스 내에서 리소스 및 인라인 블록을 반복 for 표현식: 리스트와 맵을 반복 for 문자열 지시어: 문자열 내에서 리스트와 맵을 반복 1.1 count 매개 변수를 이용한 반복 count? 같은 리소스를 n개 생성할 때 사용.. 2023. 4. 2.
[CAK] 36-48 Sevice, Namespace, Kubectl commands Certified Kubernetes Administrator (CKA) with Practice Tests 정리 내용입니다. 36. Service 서비스는 다양한 컴포넌트들을 외부 앱과 통신할 수 있도록 해준다. Pods 그룹 간의 연결이 가능하도록 해준다. 쿠버네티스 Object 줄임말은 svc External Communication 랩톱으로 웹 서버에 접근하는 방법 쿠버네티스 노드에 있는 팟 ip는 별도의 네트워크에 있음으로 바로 접근할 수 없다. SSH 로 Node에 접근해서 curl 등의 통신을 하는 방법 Service 를 사용하는 방법 1. SSH 2. Service 를 이용 직접적으로 요청을 할 수 없음으로 중간에서 요청을 매핑하는데 도움이 되는 무언가가 필요하다. Service Types.. 2023. 3. 30.
[CKA] 28-35 Replica Controller, ReplicaSet, Deployment, Labels and Selectors Certified Kubernetes Administrator (CKA) with Practice Tests 정리 내용입니다. 28 Practice Test - Solution (Optional) 29 ReplicaSet Kubernetes Controller 쿠버네티스의 두뇌이다. 쿠버네티스 개체를 모니터링하는 프로세스이다. Replica Controller 레플리카 컨트롤러는 클러스터 내에서 파드 여러개 띄울수 있도록 도와주며. 이를 통해 high availability 를 제공한다. 레플리카 컨트롤러는 desired count의 팟이 배포되는 것을 보장한다 레플리카 컨트롤러를 사용하면 여러개의 노드로 팟을 부하 분산 할 수 있다, 팟이 균형있게 로드가 되도록 확장을 도와준다. Difference b.. 2023. 3. 30.
[CKA] 18-27 kubelet, kube-proxy, POD, YAML, Certified Kubernetes Administrator (CKA) with Practice Tests 정리 내용입니다. 18. kubelet Kubelet은 배의 선장으로 예시를 들 수 있음 스케줄러의 요청을 받아 컨테이너를 싣거나 내린다. 컨테이너 상태를 주기적으로 모니터링하고 kube-apiserver 로 보고한다. Installing kubelet kubeadm으로 설치하더라도 자동으로 설치되지 않음으로 수동 설치해야한다. 19. kube-proxy Kube-proxy는 kubernetes 클러스터의 각 노드에서 실행되는 프로세스. Kube-proxy 와 서비스를 통해 실제 팟으로 요청이 간다. Installing kube-proxy kubeadm 툴이 kube-proxy를 각 노드에 배포한.. 2023. 3. 29.
[CKA] 1-17 Certified Kubernetes Administrator (CKA) with Practice Tests 정리 내용입니다. 2023. 3. 29.
[Terraform] 테라폼의 팁과 요령: 반복문 테라폼은 선언적 언어로써 추론하기 쉬운 장점이 있다. 다만 선언적 언어는 보통 반복문, 조건문이 없어 논리적인 수행이 어려운데 테라폼은 이를 보완하기 위한 다양한 기능들을 제공한다. 테라폼을 관리하는 팁과 요령에 대해 알아보자. count 메타 변수 for_each 표현식 for 표현식 create_before_destroy 같은 생명주기 블록 3항 연산자 다양한 함수 1. 반복문 테라폼은 조금씩 다른 상황에 사용하도록 고안된 몇 가지 반복문 구성을 제공한다 count 매개 변수: 리소스를 반복 for_each 표현식: 리소스 내에서 리소스 및 인라인 블록을 반복 for 표현식: 리스트와 맵을 반복 for 문자열 지시어: 문자열 내에서 리스트와 맵을 반복 1.1 count 매개 변수를 이용한 반복 cou.. 2023. 3. 27.