본문 바로가기

Infra/도커 & 쿠버네티스 기초

쿠버네티스 (3)

728x90

매니페스트 파일

- 정의 파일

- etcd에 바림작한 상태를 등록

- YAML, JSON 지원

- 이름은 자유되, 조직에 맞게 사용

- 리소스 단위로 작성 (파드, 서비스, 디플로이먼트, 레플리카세트)

 

매니페스트 작성 내용

- API 그룹 및 리소스 유형 (kubectl api-resources)

- 메타데이터와 스펙

- 레이블과 셀렉터 (레이블로 복잡한 액션을 지정 가능)

 

파드 작성

apiVersion: v1
kind: Pod
metadata: 
  name: apa000pod
  labels:
    app: apa000kube
spec:
  containers:
    - name: apa000ex91
      images: httpd
      ports: 
      - containerPort: 80

 

디플로이먼트 작성

- 앞서 작성한 파드를 이용해 디플로이먼트를 완성한다.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: apa00dep
spec:
  selector:
    matchLabels:
      app: apa000kube
  replicas: 3
  template:
    metadata:
      labels:
        app: apa000kube
    spec:
      containers:
      - name: apa000ex91
        image: httpd
        ports:
        - containerPort: 80

 

서비스의 작성

- ClusterIP, NodePort, LoadBalancer, ExternalName 4개 유형

- 클러스터 내부 통신용, 워커 노드 직접 접근, 로드밸런서, 내부에서 외부 접근 용

apiVersion: v1
kind: Service
metadata: 
  name: apa000ser
spec: 
  type: NodePort
  ports:
  - port: 8099
    targetPort: 80
    protocol: TCP
    nodePort: 30080
  selector:
    app: apa000kube
300x250

'Infra > 도커 & 쿠버네티스 기초' 카테고리의 다른 글

쿠버네티스 (4)  (0) 2022.11.13
쿠버네티스 (2)  (0) 2022.11.09
쿠버네티스 (1)  (0) 2022.11.09
도커 컴포즈  (0) 2022.07.14
도커 허브  (0) 2022.07.12