2022. 9. 27. 21:10ㆍ교육/클라우드 인프라
사용프로그램
Docker Desktop, CMD(명령프롬프트)
실습 개요
Kubernetes를 로컬에서 간단히 테스트하는 예제
쿠버네티스 설치 환경
지금 하려는 실습은 로컬 노드를 단일 노드로 컨테이너를 구동하기 때문에 쿠버네티스의 기능을 완벽하게 사용하기에는 무리가 있습니다.
쿠버네티스의 핵심기능은 여러 서버의 자원을 클러스터링하여 컨테이너를 배치하는 것인데 단일 노드로는 이를 확인할 수 없습니다.
쿠버네티스 환경 체크하기
Docker Desktop 설치 가이드는 아래 링크를 통해 진행하시면 됩니다.
https://limestory07.tistory.com/34?category=1053565
Docker Desktop 설치하기
Doker Desktop 설치 https://www.docker.com/products/docker-desktop/ Docker Desktop - Docker MOST COMMON www.docker.com Get Started 클릭합니다. Download for Windows 클릭합니다. 위와같은 프로그램이..
limestory07.tistory.com
Docker를 실행하여 오른쪽 상단의 톱니바퀴 모양을 클릭합니다.
설정에 들어가서 Kubernetes 카테고리를 선택 후 Enable Kubernetes 체크를 합니다. 이후 Kubernetes 설치가 진행됩니다.
실습 시작
모든 리소스는 오브젝트 형태로 관리됩니다.
※ Kubernetes(쿠버네티스) Yaml 파일
- apiVersion : yaml 파일에서 정의한 오브젝트의 API 버전
- kind : 리소스의 종류(kubectl api-resources 명령어의 KIND 항목에서 확인 가능)
- metadata : 리소스의 부가 정보
- spec : 리소스를 생성하기 위한 자세한 정보
nginx-pod.yaml 파일 내용
# Nginx 컨테이너로 구성된 파드를 직접 생성하는 yaml 파일 예시
apiVersion: v1
kind: Pod
metadata:
name: my-nginx-pod
spec:
containers:
- name: my-nginx-container
image: nginx:latest
ports:
- containerPort: 80
protocol: TCP
|
우선 nginx-pod.yaml 파일을 만들 경로를 잡고 파일을 만듭니다.
명령프롬프트를 실행해 파일을 저장한 경로로 이동합니다.(cd 명령 이용)
kubectl apply -f nginx-pod.yaml |
nginx pod를 생성했으나 외부에서 접근할 수 있도록 노출된 상태가 아닙니다. 따라서 pod의 nginx 서버로 요청을 보내려면 pod 컨테이너의 내부 IP로 접근해야합니다.
kubectl describe pods my-nginx-pod |
위 명령어를 통해 my-nginx-pod의 IP 주소를 확인할 수 있습니다. 이는 외부에서 접속할 수 없고 클러스터 내부에서만 접근할 수 있기 때문에 my-nginx-pod에 직접 접속해보겠습니다.
kubectl exec my-nginx-pod -it -- bash |
실행중인 pod의 쉘에 접속할 수 있습니다. 이제 위에서 확인한 pod의 IP로 HTTP 요청을 전송해보겠습니다
nginx pod가 HTTP response를 보낸 것을 확인할 수 있습니다
참고자료
https://velog.io/@rhee519/k8s-getting-started
쿠버네티스 Kubernetes, K8S 기초
시작하세요! 도커/쿠버네티스의 내용을 공부하여 정리한 포스트입니다! 🌈 쿠버네티스를 로컬에서 간단히 테스트하는 예제를 따라가는 포스트입니다.
velog.io
'교육 > 클라우드 인프라' 카테고리의 다른 글
네트워크 플러그인(Network Plugin) (1) | 2022.09.30 |
---|---|
컨테이너간 통신 실습하기 (1) | 2022.09.30 |
Kubernetes(쿠버네티스) 간단한 설명 (0) | 2022.09.27 |
컨테이너 개념 및 이해하기 (0) | 2022.09.26 |
Docker Desktop 이용하여 Nginx 설치하기 (0) | 2022.09.26 |