GCP Kubernetes GKE Pod 생성, 배포, 접속

2023. 10. 14. 22:15·Cloud & Architecture/Kubernetes
728x90

 

 

2023.10.10 - [Cloud&DevOps/GCP] - GCP GKE 클러스터 생성 | 구글 클라우드 플랫폼, 쿠버네티스

 

GCP GKE 클러스터 생성 | 구글 클라우드 플랫폼, 쿠버네티스

https://cloud.google.com https://cloud.google.com 영상 통화, 이메일, 채팅, 문서 공동작업을 한곳에 통합할 수 있습니다. cloud.google.com https://console.cloud.google.com Google 클라우드 플랫폼 로그인 Google 클라우드

karla.tistory.com

 

1. pod 생성

Pod란?
쿠버네티스 애플리케이션의 기본 실행 단위이다. 각 파드는 클러스터에서 실행중인 워크로드(쿠버네티스에서 구동되는 애플리케이션)의 일부를 나타낸다.

 

Kubernetes에서 애플리케이션을 배포하기 위해 create deployment 명령어를 입력한다.

kubectl create deployment dpy-nginx --image=nginx

 

kubectl run nginx --image=nginx

run vs create deployment
run으로 파드를 생성하면 단일 파드 1개만 생성되고 관리된다.
create deployment로 생성하면 디플로이먼트라는 관리 그룹 내에서 파드가 생성된다.
run vs create deployment
run :  초코파이 1개
create deployment : 초코파이 상자에 들어있는 초코파이 1개

 

kubectl get pods

Pod 의 정보를 넓게 출력하여 추가적인 정보를 확인할 수 있다.

kubectl get pod -o wide

Pod의 세부 정보를 확인할 수 있다.

kubectl describe pod [pod NAME]

namespace 는 기본적으로 default 로 정해진다.
Ip 는 있지만, 아직 외부 통신이 불가능하다. 외부 통신을 위해서는 반드시 Service 가 있어야 한다.

 

2. pod 배포

deployment
쿠버네티스에서 가장 많이 쓰이는 디플로이먼트 오브젝트는 파드에 기반을 두고 있으며, 레플리카셋 오브젝트를 합쳐 놓은 형태다.
kubectl expose deployment nginx --port=80 --type=LoadBalancer

kubectl get services

kubectl  get pod,svc,ep
kubectl describe svc

 

[서비스 외부 IP(부하분산기IP)]: [서비스포트]

 

3. pod 접속

kubectl exec -it nginx -- bash

Pod 내부에 들어왔다. 여기서 Port 를 통해 Container 에 들어갈 수 있다.

localhost 는 현재 Pod 의 Ip 이다. Ip는 Pod 에 한 개 할당되며, 안에 Container 들은 Port 로 접속이 가능하다.
따라서, Pod 내부의 Container 들에는 Ip 가 할당되지 않고, Port 로만 사용한다. localhost:80 을 하면, 현재 localhost 주소인 Pod 의 80 번 Port 를 사용하는 nginx Container 를 말하는 것이다.
Pod 접속시 바로 Container 에 들어가는 이유는 Container 가 하나 있기 때문이다. 만약, Container 가 다수가 있다면 Port 를 지정해줘야 한다.

 

 


예약 단축어

이름
축약어
오브젝트 이름
nodes
no
Node
namespaces
ns
Namespace
deployments
deploy
Deployment
pods
po
Pod
services
svc
Service

 

728x90
'Cloud & Architecture/Kubernetes' 카테고리의 다른 글
  • Kubernetes 인그레스(Ingress), 로드밸런서 LoadBalancer, metallb
  • GCP GKE Kubernetes 인그레스(Ingress), 노드포트(Nodeport) 접속
  • 쿠버네티스(Kubernetes) 배포 업데이트, 롤백
  • GCP Kubernetes GKE Pod 레플리카셋, Deployment
Karla Ko
Karla Ko
𝘾𝙤𝙣𝙩𝙞𝙣𝙪𝙤𝙪𝙨𝙡𝙮 𝙄𝙢𝙥𝙧𝙤𝙫𝙞𝙣𝙜, 𝘾𝙤𝙣𝙨𝙩𝙖𝙣𝙩𝙡𝙮 𝘿𝙚𝙫𝙚𝙡𝙤𝙥𝙞𝙣𝙜 𝙔𝙚𝙨!
    250x250
  • Karla Ko
    karlaLog
    Karla Ko
  • 전체
    오늘
    어제
    • Total (467)
      • Spring (19)
      • JPA (4)
      • Cloud & Architecture (15)
        • Kubernetes (5)
        • Docker (3)
        • MSA (2)
        • GCP (1)
        • AWS (4)
      • Devops (1)
      • Message Queue (4)
        • Kafka (2)
        • RabbitMQ (2)
      • Git (4)
      • DB (4)
      • Java (9)
      • Python (4)
      • CS (11)
        • OS (8)
        • Network (2)
        • Algorithm (1)
      • Coding Test (392)
        • programmers (156)
        • Graph (43)
        • DP (37)
        • Search (31)
        • Tree (13)
        • Data Structure (26)
        • Combination (12)
        • Implement (18)
        • Geedy (23)
        • Sort (7)
        • Math (21)
        • geometry (2)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    그리디
    DP
    LIS
    구간합
    월간코드챌린지
    프로그래머스
    동적계획법
    구현
    파이썬
    그래프
    스택
    조합
    트리
    백준
    최단거리
    힙
    DFS
    다익스트라
    자료구조
    BFS
    최대공약수
    플로이드워셜
    알고리즘
    이분탐색
    Algorithm
    큐
    최소신장트리
    정렬
    덱
    재귀
  • hELLO· Designed By정상우.v4.10.3
Karla Ko
GCP Kubernetes GKE Pod 생성, 배포, 접속
상단으로

티스토리툴바