본문 바로가기

docker6

Kubernetes EnvVar / 쿠버네티스, 패턴, pattern, 환경변수, dockerfile, env Kubernetes EnvVar Application은 서비스 접근, 분리 등등 다양한 케이스에서 설정이 필요 Application 내부에 환경변수를 설정하는것은 옳지 않음 Container영역에서 사용할 수 있도록 해주는 것이 EnvVar 👎bad case, 하드코딩된 기본 설정값을 사용하는 방식 예전에 Dockerfile에 대해 공부할 때 사용했던 ENV 명령어로 직접 정의 가능 https://dev-chicken.tistory.com/22 Container Image / 컨테이너 이미지, Kubernetes, Docker, Dockerfile Container Image 컨테이너 이미지는 root filesystem과 이미지 설정 정보로 저장 즉 이미지는 root filesystem에 복사되어 사용.. 2023. 1. 25.
Container Image / 컨테이너 이미지, Kubernetes, Docker, Dockerfile Container Image 컨테이너 이미지는 root filesystem과 이미지 설정 정보로 저장 즉 이미지는 root filesystem에 복사되어 사용되는 것이고, Dockerfile과 같은 이미지 build관련 설정 명령어들로 이루어지는 것 - Dockerfile 이미지 build 관련 명령어들을 저장 아래 표에 간단하게 명령어들을 정리해봤다. 명령어 동작 FROM Base Image를 지정하는 것 FROM alpine:3.10과 같이 사용 ADD 파일을 이미지에 복사하여 추가 ADD test.zip / 보통 압축 해제할 때 사용 COPY ADD와 비슷한 기능을 함, 복사 COPY test.sh /copy-test.sh RUN shell 커맨드를 사용한다고 보면 됨 apt-get update 커.. 2023. 1. 11.
Mount Namespace / Container 기초, 파일시스템, 마운트, 네임스페이스, 컨테이너, 간단 정리 Mount Namespace 전에 공부할때 확인했듯이 리눅스는 루트 파일 시스템으로 구성 루트로 시작하는 계층 구조 파일, 디렉토리 제어 정보 생성, 삭제, 마운트 등의 기능을 제공 Mount namespace는 각 프로세스에 격리된 파일시스템 마운트 포인트를 제공 VFS(virtual filesystem)으로 데이터 구조, 저장 매체를 추상화하여 사용 가능 매체의 특징에 따라 파일시스템을 어떻게 나눌지 결정하는 것이 많음 unshare 명령어를 통해 Mount namespace 생성 가능 보통 이미지를 통해 mountns를 관리하는데, 중복된 이미지 때문에 리소스 낭비가 심할 수 있음 Union Mount 중복된 이미지로 인한 리소스 낭비를 해결하기 위해 사용 복수의 filesystem을 하나로 mou.. 2023. 1. 10.
Network Namespace / Container 기초, 네트워크, 네임스페이스, 컨테이너, 간단 정리 Network Namespace 컨테이너가 볼수 있는 네트워크 인터페이스와 라우팅 테이블을 제한 lsns로 Network namespace 확인 가능 $lsns NS TYPE NPROCS PID USER COMMAND 4026534275 net 93 1 root ~~ ... 새로운 Network namespace는 loopback interface 만 존재 외부통신을 위해서는 한쌍의 virtual ethernet interface가 필요 추가로 인터페이스에 IP주소를 부여하여 라우팅테이블에도 등록해야함 다양한 케이스가 존재하고 각각의 케이스별로 연결 방식이 상이함 1. 호스트 안의 각각의 네임스페이스간 직접 통신 2. 호스트의 bridge를 통해 네임스페이스간 통신 3. namespace -> host .. 2023. 1. 6.
Docker vs Containerd / Container runtime, 쿠버네티스, 도커, 차이점, 장단점 Container Runtime 때문에 문제가 생겼던 적이 있었다... Containerd와 Docker를 혼용하다가 생긴 문제였다. 다들 알다시피 Kubernetes version 1.24부터 Docker를 사용하지 못하게 됐다. 더보기 Dockershim Removed from kubelet After its deprecation in v1.20, the dockershim component has been removed from the kubelet in Kubernetes v1.24. From v1.24 onwards, you will need to either use one of the other supported runtimes (such as containerd or CRI-O) or use.. 2023. 1. 4.
Kubernetes Components (Worker Node) / 쿠버네티스 컴포넌트, 워커 노드, 노드 컴포넌트 Kubernetes Node Components Control-plane component를 볼때 확인했던 Kubernetes component 구성요소이다. Worker node component로 해당되는 것들은 그림에 따로 빨간색으로 표시해둔 것들이다. - kubelet 각 노드에서 실행되는 agent 노드의 파드, 컨테이너들의 실행을 보장하도록 관리해주는 컴포넌트 파드의 상태(스케줄링, 모니터링, 종료 등)를 kube-apiserver에 지속적으로 전달 - kube-proxy 각 노드에서 실행되는 네트워크 프록시, 서비스의 구현부 네트워크 규칙을 관리, 클러스터 외부에서 파드와 통신이 가능하도록 함 원래는 userspace에서 proxy동작을 하기때문에 이름이 이렇게 붙여졌지만, kernelspa.. 2022. 12. 28.
반응형