1. 기본 명령어
1.1. Kubernetes 클러스터에 존재하는 모든 네임스페이스를 조회 : kubectl get namespace
1.2. 현재 클러스터에서 사용 가능한 네임스페이스 목록을 조회 : kubectl get namespaces
1.3. team1이라는 이름의 네임스페이스를 새로 생성 : kubectl create namespace team1
1.4. 현재 사용 중인 Kubernetes 네임스페이스(namespace) 내의 모든 파드(pod)를 조회 : kubectl get pods
1.5. kube-system 네임스페이스 안에 있는 모든 파드를 조회 : kubectl get pods -n kube-system
1.6. team1 네임스페이스와 그 안에 있는 모든 리소스를 삭제 : kubectl delete namespace team1
2. YAML 파일을 사용한 리소스 관리
2.1. vi 텍스트 에디터를 사용하여 name.yml이라는 YAML 파일을 생성하거나 수정 : vi name.yml
* YAML 파일은 Kubernetes 리소스(예: Pod, Service, Deployment 등)를 정의
apiVersion: v1 # 뛰어쓰기 중요 kind: Namespace metadata: name: 1team # 뛰어쓰기 중요 |
2.2. name.yml 파일에 정의된 Kubernetes 리소스를 클러스터에 생성 : kubectl apply -f name.yml
2.3. 생성된 네임스페이스를 포함하여 모든 네임스페이스를 조회 : kubectl get namespaces
2.4. name.yml 파일에 정의된 리소스를 삭제 : kubectl delete -f name.yml
2.5. 네임스페이스 목록을 조회 : kubectl get namespaces
3. Pod 생성 및 관리
3.1. test-nginx 파드 생성, nginx 이미지 사용, 80번 포트 개방 : kubectl run test-nginx --image=nginx --port=80
3.2. 현재 네임스페이스에서 실행 중인 모든 파드를 조회 : kubectl get pods
3.3. test-nginx 파드의 상태를 조회 : kubectl get pods test-nginx
3.4. test-nginx 파드의 세부 정보를 확인 : kubectl describe pod test-nginx
* 이벤트, 상태, 포트, 환경 변수, 오류 메시지 등을 확인 가능
4. Pod와 서비스(Service)
4.1. 192.168.104.1 IP에 요청 : curl 192.168.104.1
4.2. test-nginx 파드에 대해 NodePort 서비스(Service)를 생성, 외부에서 파드에 접근할 수 있는 방식을 설정
: kubectl expose pod test-nginx --type NodePort
4.3. 현재 네임스페이스에서 생성된 모든 서비스(Service)를 조회 : kubectl get svc
4.4. test-nginx와 연결된 서비스를 삭제 : kubectl delete svc test-nginx
4.5. test-nginx라는 이름의 파드를 삭제 : kubectl delete pod test-nginx
5. 네임스페이스와 Pod
5.1. 1team이라는 네임스페이스를 생성 : kubectl create ns 1team
5.2. 2team이라는 네임스페이스를 생성 : kubectl create ns 2team
5.3. 현재 네임스페이스에 test-nginx라는 이름의 파드를 생성 : kubectl run test-nginx
5.4. 1team 네임스페이스 안에 test-nginx 파드 생성 : kubectl run test-nginx --image nginx --port 80 -n 1team
5.5. 1team 네임스페이스에 있는 모든 파드를 조회 : kubectl get pods -n 1team
5.6. 1team 네임스페이스와 그 안의 모든 리소스를 삭제 : kubectl delete ns 1team