1. Secretes1) 개념(1) 정의- 민감한 데이터를 안전하게 관리하기 위한 리소스- 비밀번호, API키, TLS 인증서와 같은 민감한 정보를 일반텍스트로 저장되지 않고, base64로 인코딩되어 저장 (2) 특징 - 민감한 정보 저장: 비밀번호, 키, 인증정보를 저장- 인코딩된 형식: base64로 인코딩되어 저장되며, 완전한 암호화는 아님- Pod와 통합: 환경 변수 또는 볼륨으로 Pod에 주입 가능 2) 생성 방법 (1) 명령어를 사용한 생성- kubectl create secret generickubectl create secret generic app-secret \ --from-literal=DB_Host=mysql \ --from-literal=DB_User=root \ --fro..
보호되어 있는 글입니다.
1. 환경변수1) Pod 정의 파일에서 직접 설정 - Pod 정의 파일에서 환경변수를 설정하려면 env속성을 사용 - env는 배열 형식이며 각 항목은 name과 value 속성을 포함 apiVersion: v1kind: Podmetadata: name: simple-webapp-colorspec: containers: - name: simple-webapp-color image: simple-webapp-color ports: - containerPort: 8080 env: - name: APP_COLOR value: "blue"- 위 예제는 'APP_COLOR'라는 환경 변수를 설정하고 값으로 blue를 제공 - 이 환경변수는 컨테이너 내부에서 어플리케이션이 ..
1. Docker에서의 Commands와 Arguments1) 기본 개념 - Docker 컨테이너는 특정 프로세스를 실행하기 위해 설계- 컨테이너 내부에서 실행되는 프로세스는 Docker이미지의 CMD 또는 ENTRYPOINT 지시어에 의해 정의- 컨테이너가 시작되면 이 지시어에 정의된 명령어가 실행 2) CMD(1) 정의 - CMD: 컨테이너가 시작될 때 실행할 기본 명령어(default)를 정의- 커맨드 라인 인수로 대체 가능 - ex) Ubuntu 이미지를 기본적으로 bash를 실행하도록 설정 CMD ["bash"]3) ENTRYPOINT(1) 정의- 컨테이너가 시작될때 반드시 실행해야 하는 명령어를 정의- CMD와 달리 ENTRYPOINT는 명령어를 고정하며, 추가적인 인수를 커맨드라인에서 전달..
1. Rolling Updates1) 개념- 쿠버네티스의 기본 배포 전략으로 어플리케이션의 가용성을 유지하면서 점진적으로 새로운 버전을 배포- 어플리케이션의 가용성을 유지하면서 점진적으로 새로운 버전을 배포2) 특징(1) 점진적 업데이트- 기존 Pod를 하나씩 종료하고, 동시에 새로운 Pod를 하나씩 생성 - 이 과정을 통해 어플리케이션의 다운타임 없이 업데이트가 가능(2) 자동 ReplilcaSet생성 - 새로운 버전이 배포되면 쿠버네티스는 자동으로 새로운 ReplicaSet을 생성하여 새로운 Pod를 관리- 이전 ReplicaSet은 점진적으로 축소 3) 예시(1) 현 상황 기존 Nginx 1.7.1 버전을 사용하는 어플리케이션이 3개의 복제본으로 실행중임을 가정 (2) 이를 Nginx 1.9.1로 ..
1. 모니터링 구성요소1) 노드 수준 메트릭- 노드 상태 메트릭: 클러스트 내 노드의 수와 각 노드의 상태- 리소스 사용량: CPU, 메모리, 디스크 I/O, 네트워크 대역폭 등의 사용량2) 파드 수준 메트릭- 파드 수 : 실행 중인 파드의 수- 리소스 사용량: 각 파드의 CPU 및 메모리 사용량, 재시작 횟수, 상태(실행 중, 대기 중 등)3) 컨트롤 플레인 매트릭- API 서버나 스케줄러와 같은 컨트롤 플레인 구성요소에는 발생하는 메트릭은 시스템 작동 상태를 보여줌 - 스케줄링 지연 시간이나 대기중 인 파드 수 등을 확인 4) 주요 모니터링 도구(1) Metrics Server : 경령화된 실시간 모니터링 솔루션- 노드와 파드의 CPU 및 메모리 사용량 데이터를 수집- kubectl top node..