본문 바로가기

가상화/Kubernetes

(32)
[kubernetes] Pod 재시작 개요 Pod를 재시작하는 방법 구성환경 kubernetes v1.17.4, docker-ce 19.03.8 kubernetes Pod 재시작 Usage : kubectl get pod -n -o yaml | kubectl replace --force -f- 문법을 보면 알겠지만 파드(Pod)를 재시작한다라기 보다 삭제하고 다시 만든다고 보는게 맞을것 같다. 예시) web Pod 재시작 shell> kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 443/TCP 10d web ClusterIP 10.105.13.154 8080/TCP 40h web2 ClusterIP 10.105.146.106..
[kubernetes] 인그레스(Ingress)를 사용하여 HTTP(S) 부하 분산기 구성 #2 - HTTPS 부하 분산 개요 이전 시간에는 HTTP 트래픽에 대한 부하 분산기 구성에 대해 알아보았다. 이번 시간에는 HTTPS 트래픽에 대한 부하 분산기 구성에 대해서 알아 보도록 하자. 구성환경 kubernetes v1.17.4, docker-ce 19.03.8, nginx-ingress-controller 0.30.0 구성절차 1. ngninx-ingress-controller 설치 및 서비스 생성 2. 앱 배포 만들기 3. 인증서 및 키 만들기 4. 인그레스에 대한 인증서 지정 5. 부하 분산기 테스트 1. ingress-controller 설치 및 서비스 생성 1.1 nginx-ingress-controller 설치 shell> kubectl apply -f https://raw.githubusercontent.com..
[Docker] 컨테이너와 로컬 파일 시스템간에 파일 / 폴더 복사 개요 로컬파일시스템과 컨테이너간에 파일 및 폴더를 복사하는 방법에 대해서 알아본다. 구성환경 docker 19.03.5 1. 단일 파일 복사 Usage : docker cp CONTAINER: docker cp container: 예시 1) busyboxtest 컨테이너의 /etc/hosts 파일을 로컬 /tmp/hosts로 복사 shell> docker run -it --name busyboxtest busybox:latest shell> docker cp busyboxtest:/etc/hosts /tmp/hosts shell> cat /tmp/hostname shell> cat hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe..
[kubernetes] 인그레스(Ingress)를 사용하여 HTTP(S) 부하 분산기 구성 #1 - HTTP 부하 분산 개요 NGINX Ingress 컨트롤러는 NGINX를 사용하여 Kubernetes 클러스터의 HTTP 서비스에 대한 외부 액세스를 관리하는 Ingress 컨트롤러입니다. kubernetes에서 서비스를 생성하면 -service-node-port-range(default 30000~32767) 범위내에서 서비스에 포트를 할당하게 된다. 이 경우 웹서비스에 접근하기 위해서는 http://{IP}:{NodePort} 형태로 실제로 서비스하기에는 부적접한 url 입니다. NGINX Ingress를 사용하여 일반적인 http://www.doman.com형태로 서비스하는 방법에 대해 알아 보도록 하겠습니다. 구성환경 minikube v1.9.0, kubectl v1.18.0, CentOS 7.6 참고 문서 : ht..
[Docker] docker-compose 활용 개요 docker-compose는 다중 컨테이너 Docker 애플리케이션을 정의하고 실행하기위한 도구입니다. Compose에서는 YAML 파일을 사용하여 애플리케이션 서비스를 구성합니다. 그런 다음 단일 명령으로 구성에서 모든 서비스를 작성하고 시작합니다. 구성환경 docker-19.3 , docker-compse-1.18 Docker-compose 를 사용하기 위해서는 Docker-compose를 설치해야한다. 설치 방법은 아래와 같다. 1. 설치 shell> yum install docker-compose : centos shell > apt install docker-compose : debian/ubuntu Docker-compose를 사용 전후를 한번 비교해보도록 하자. 아래는 docker ru..
[Docker] Priviate registry 구성 #3 - 인증 구성 개요 구성환경 Docker version 19.03.5, registry 2.7.1 1. 인증 사용자/패스워드 생성 shell> mkdir /opt/registry/auth/ => htpaswd 파일이 저장될 디렉토리 shell> docker run --entrypoint htpasswd registry:2.7.1 -Bbn "user1" "password123" > /opt/registry/auth/htpasswd 2. Registry 서버 인증을 사용하여 기동 docker run -d \ --restart=always \ --name registry \ -v /opt/registry/certs:/certs \ -v /opt/registry/auth:/auth \ -e REGISTRY_AUTH=htpas..
[Docker] Private registry 이미지 삭제 개요 Reigistry의 이미지를 삭제하는 방법은 리포지토리(repository)내의 지정 버전(Tag)를 삭제, 리포지토리 삭제 두가지의 방법이 있다. 이 두가지 방법에 대해서 알아보도록 한다. 구성환경 Docker 19.03.5 , Registry 2.7.1 리포지토리내 지정 버전(Tag) 삭제 방법 1 : registry REST API 를 이용한 방법 *** curl 명령어로 이미지 삭제하고자 할때, Registry 서비스 시작시 -e REGISTRY_STORAGE_DELETE_ENABLED=true 환경변수를 지정하여야 한다. 1. 리포지토리 조회 - Usage : curl -X GET shell> curl -X GET https://registry.hoya.com/v2/_catalog {"re..
[kubernetes] NFS 구성 개요 kubernetes에서 지원하는 많은 볼륨중, 가장 많이 쓰이고 효율적인 NFS를 이용하여 파드를 구성하는 방법을 예로 들어 구성해보도록 한다. 구성환경 kubernetes 1.17.4, Docker 19.03.8 구성 절차 1. nfs 서버/클라이언트 구성 2. 이미지 빌드 및 registry 등록 3. 디플로이먼트 및 서비스 생성 1. NFS 구성 1.1 NFS 서버 - nfs 마운트 포인트 지점및 html Document Root 디렉토리, html파일 생성 shell> mkdir -p /opt/nfsvolumes/html shell> vi /opt/nfsvolumes/html/index.html - /etc/exports 파일 /opt/nfsvolumes *(rw,no_root_squash,..