[Kubernetes] CKA 시험 준비 - Core Resoureces

bluewhale·2021년 11월 1일
0

kubernetes

목록 보기
7/11
post-thumbnail

Core Resoureces

Pod

Create Pod (imperative)

busybox이미지를 사용하여, foo라는 이름의 팟 생성

$ kubectl run foo --image=busybox

expose port

$ kubectl run foo --image=busybox --port=8080

Create Pod (declarative)

busybox이미지를 사용하여, foo라는 이름의 팟 생성

$ kubectl run foo --image=busybox --dry-run=client -o yaml > foo.yaml
$ cat foo.yaml
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    run: foo
  name: foo
spec:
  containers:
  - image: busybox
    name: foo
    resources: {}
  dnsPolicy: ClusterFirst
  restartPolicy: Always
status: {}

$ kubectl apply -f foo.yaml
pod/foo created

Pod이 위치한 노드 확인

$ kubectl get pods foo -o wide

Replicaset

Replicaset에 사용된 이미지 확인

$ kubectl describe replicasets | grep Image

Replicaset의 apiVersionapps/v1이다.

Replicaset scaling
foo라는 이름의 Replicaset에 속한 Pod 개수를 3개로 수정

$ kubectl scale --replicas=3 rs/foo

Deployment

Create Deployment: Imperative
foo라는 이름의 Deployment를 busybox 이미지를 사용하여 3개의 replica로 생성

$ kubectl create deployment foo --replicas=3 --image=busybox 

Create Deployment: Declarative

$ kubectl create deployment foo --replicas=3 --image=busybox --dry-run=client -o yaml > foo.yaml 
$ kubectl apply -f foo.yaml

Namespace

Get Pods in a namespace

$ kubectl get pods -n bar

Get Pods in all namespace

$ kubectl get pods --all-namespaces

Create a Pod to a namespace: Imperative

$ kubectl create foo --image=bar -n zoo

Service

Get target port of a service

$ kubectl describe svc foo | grep TargetPort

Create a Nodeport: Imperative

$ kubectl create service nodeport foo --tcp=80:80 --node-port=30080

Create a Nodeport: Declarative

$ kubectl create service nodeport foo --tcp=80:80 --node-port=30080 --dry-run=client -o yaml > foo.yaml
$ kubectl apply -f foo.yaml
profile
안녕하세요

0개의 댓글