분류 전체보기
-
14. 서비스 매시 환경 모니터링 도구 istio 시작하기24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 31. 20:11
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 istio란 무엇인가 쿠버네티스는 도커를 편리하게 컨트롤할 수 있으며 다양한 이점을 제공한다. 하지만 다수의 컨테이너가 동작할 때 컨테이너의 트래픽을 관찰하고 정상 동작하는지 모니터링하는 것은 매우 어렵다. 이를 해결하는 것이 서비스 매쉬란 개념이고 이에 대한 구현체 중 하나가 istio이다. istio를 사용하면 다음과 같은 장점이 생긴다. 쿠버네티스의 복잡성을 감소시킬 수 있다. 트러블 슈팅과 디버깅이 매우 쉬워져서 운영하는데 큰 도움을 준다. 하지만 각 Pod당 ..
-
13. 리소스 로깅과 모니터링24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 30. 21:07
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 쿠버네티스 모니터링 아키텍처 k8s의 모니터링 아키텍처는 다음과 같다. 기본적으로 k8s에서의 메트릭 수집은 다음 컴포넌트들로 데이터를 수집한다. metrics-server (kubectl top 명령어 사용 가능, 단기 메모리 저장소) cAdvisor (컨테이너 메트릭 수집) 로그는 Docker가 저장하는 로그를 수집한다. 경로는 다음과 같다. /var/lib/docker/containers//-json.log 이러한 것들을 이용해서 k8s의 모니터링 시스템을 구축할..
-
12. 애플리케이션 스케줄링과 라이프사이클 관리 (2)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 20. 20:48
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 컨테이너 리소스 요청과 제한하는 방법 이번 절은 GCP에서 진행한다. k8s에서 컨테이너 생성 시 CPU, 메모리를 요청 및 제한할 수 있다. request : 최소 스펙 요청 사항 limit : 최대 리소스 제한 CPU는 다음 단위를 사용한다. m (0.1 = 100m) 메모리는 다음 단위를 사용한다. Ti (1024 ^ 4) Gi (1024 ^ 3) Mi (1024 ^ 2) Ki (1024) T (1000 ^ 4) G (1000 ^ 3) M (1000 ^ 2) K ..
-
11. 애플리케이션 스케줄링과 라이프사이클 관리 (1)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 17. 07:09
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 컨테이너 환경 변수 전달 (1) YAML k8s에서 Pod에 실행되는 컨테이너에 환경 변수를 전달하는 방법은 크게 3가지가 있다. Yaml 파일에 직접 명시 "spec.containers[*].env" Secret ConfigMap 이 절에서는 이 중 첫 번째 Yaml로 전달하는 방식을 알아본다. env-yaml.yaml을 다음과 같이 생성한다. src/ch11/k8s/env-yaml.yaml apiVersion: v1 kind: Pod metadata: name: e..
-
10. 쿠버네티스 핵심 개념 (5)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 14. 18:30
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 네트워크 볼륨 (NFS) Kubernetes는 스토리지로 네트워크 파일 시스템(NFS, GlusterFS)을 이용할 수 있다. 이 절에서는 NFS를 볼륨으로 이용하는 것에 대해서 다룬다. 이 절은 "VM"에서 진행한다. 먼저 모든 노드에 NFS를 설치한다. $ sudo -i # apt-get install nfs-common nfs-kernel-server portmap -y 그리고 노드 1개를 선택해서 다음 작업을 진행한다. 나는 "슬레이브2"에서 진행했다. ## n..
-
09. 쿠버네티스 핵심 개념 (4)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 5. 07:28
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 쿠버네티스 네트워크 (1) Pod - Container 통신 일반적으로 컨테이너 간 통신을 위한 도커 네트워크 구조는 다음과 같다. 각 컨테이너는 veth라는 가상의 네트워크 인터페이스를 통해서 통신을 한다. 반면에, 쿠버네티스에서 컨테이너 간 통신 구조는 살짝 다르다. 하나의 veth 가상 네트워크 인터페이스에 여러 컨테이너가 연결되어 있다. 그리고 pause라는 녀석이 옆에 붙어서 이들 통신을 지원해준다. VM에 다음을 입력해보자. $ sudo docker ps |..
-
[2판] 01. 왜 테라폼인가24년 11월 이전/Terraform Up and Running 2021. 8. 2. 20:01
이 문서는 책 "테라폼 업앤러닝"을 읽고 작성되었습니다. 최대한 요약해서 책 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 책을 구매하시는 것을 추천드립니다. => 책 링크 용어 정리 "Devops"란 Devops는 소프트웨어를 효율적으로 전달하는 프로세스이다. 다음과 같은 핵심 가치 4가지가 존재한다. Culture Automation Measurement Sharing 이 책은 2번, 특히 인프라스트럭처 배포 자동화에 초점을 맞춘다. "IaC"란 IaC는 "Infrastructure As Code"의 약자로써, 코드로 인프라를 관리하는 것을 의미한다. 서버, DB, 네트워크, 로그, 애플리케이션 구성, 문서, 자동화된 테스트, 배포 프로세스 등 거의 모든 작업을 코드..
-
08. 쿠버네티스 핵심 개념 (3)24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 7. 25. 19:42
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 네임스페이스 namespace란 물리 쿠버네티스 클러스터 내에서 동작하는 가상 쿠버네티스 클러스터이다. 약간 실제 물리서버에서 동작하는 VM과 성격이 비슷한데, 쉽게 생각해서 리소스들을 분리된 영역으로 격리시켜 관리하는 기술이다. 기본적으로 쿠버네티스 클러스터에는 다음의 4가지 네임스페이스가 자동으로 생성된다. $ kubectl get namespace NAME STATUS AGE default Active 15d kube-node-lease Active 15d kub..