실습
Single-container Pod
Pod 생성
배포된 웹서버 호출
웹서버 로그 확인
Pod 삭제
Multi-container Pod
Pod 생성
Pod 상태 확인
위의 명령어를 실행하면 아래와 같은 결과를 확인할수 있습니다.
Pod가 정상적으로 실행되지 않는 이유 확인
사용한 컨테이너 이미지에 대한 상세 내용 확인 - https://hub.docker.com/r/curlimages/curl
Pod 재생성
생성한 Pod의 명시한 모든 컨테이너가 정상 동작하는지 확인
curl 컨테이너에서 nginx 컨테이너에서 실행중인 웹서버 호출
nginx 컨테이너에서 웹서버 로그 확인
curl 컨테이너에서 마운트한 볼륨에 생성된 파일 확인
curl 컨테이너에서 nginx 컨테이너 실행중인 웹서버가 생성한 로그파일 확인
Pod 삭제
Commands and Arguments
Pod 생성
Pod에 명시한 이미지는 아래와 같은 Dockerfile을 통해서 생성 되었습니다.
생성된 Pod 확인
Pod 상태 확인
아래의 명령어를 통해서 Pod 상태가 무엇을 의미하는지 확인
Pod 로그 확인
Pod 재생성
Pod 로그 확인
터미널에서 아래의 같은 명령어를 실행해서 나오는 결과 확인
Pod 재생성
Pod 로그 확인
Pod 삭제
Pod Networking
Pod 생성
nginx Pod의 IP 주소 확인
nginx Pod의 IP 주소 확인
curl Pod에서 nginx Pod 호출 시도
curl Pod에서 nginx Pod 호출 재시도
Session Manager 플러그인 설치
Node들의 인스턴스 아이디 확인
nginx Pod의 IP 주소 확인
한개의 Node로 Session Manager 연결
curl 명령어를 통해서 nginx Pod의 IP 호출
Session Manager 종료
Pod 삭제
Init Containers
Pod 생성
Pod에 설정된 환경변수 확인
웹서버 인덱스 페이지 확인
EC2 Metadata를 통해서 Pod가 배포된 Node의 가용영역 확인
웹서버 인덱스 페이지 업데이트
웹서버 인덱스 페이지가 업데이트 됐는지 확인
Pod 생성
Pod가 생성되었는지 확인
Cloud9 인스턴스의 8080 포트를 nginx-int Pod의 80 포트로 포워딩
Preview -> Preview Running Application 을 클릭해서 NGINX 웹서버로 접근
미리보기 창 및 kubectl port-forward 프로세스 종료
Pod 삭제
Logs
Pod 생성
Pod 로그 확인
웹서버 호출
Pod 로그 확인
마지막 5줄의 로그를 확인하고 새로운 라인을 표시
새로운 터미널을 열고 웹서버 호출
기존 터미널로 돌아와서 새로운 로그가 보이는지 확인
Ctrl+C를 입력해서 5번에서 실행한 프로세스 종료
Pod가 배포된 Node 확인
Pod가 배포된 노드의 인스턴스 아이디 확인
다른 터미널로 이동해서 Pod가 배포된 Node로 Session Manager 연결
실행중인 도커 컨테이너 확인
Pause 컨테이너란??
다른 터미널로 이동해서 컨테이너에 ps 바이너리 설치
컨테이너에서 실행중인 프로세스 확인
Pod 상태 확인
Init 프로세스 (PID 1) 종료
Pod 상태 확인
생성된 Pod의 재시작 정책 확인
아래의 명령어를 통해서 Pod 재시작 정책이 무엇을 의미하는지 확인
다른 터미널로 이동해서 실행중인 도커 컨테이너 확인
nginx 컨테이너의 ID 확인
nginx 컨테이너의 로그 경로 확인
컨테이너 로그 확인
다른 터미널로 이동해서 Pod 로그 확인
24번 명령어로 확인한 로그와 25번 명령어로 확인한 로그 비교
Pod 삭제
23번 명령어로 확인한 로그 경로가 여전히 존재하는지 확인
Environment Variables
Pod 생성
Pod 상태 확인
위의 명령어를 실행하면 아래와 같은 결과를 확인할수 있습니다.
Pod 로그 확인
kubectl run 명령어의 도움말 확인
Pod 삭제
Pod 재생성
Pod 상태 확인
Pod에 설정된 환경변수 확인
아래의 명령어를 실행해서 mysql에 접속 시도
Pod 삭제
Last updated