주제 : 조건에 맞는 파드를 생성하라

조건 : 

  • pod name : nginx
  • env : var = value
  • 생성 후 env 확인
kubectl run nginx --image=nginx --restart=Never --env=var1=value1 --dry-run=client -o yaml

[위 명령어로 생성되는 yaml 파일을 아래와 같이 수정]
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    run: nginx
  name: nginx
spec:
  containers:
  - env:
    - name: var1
      value: value1
    image: nginx
    name: nginx
    resources: {}
  dnsPolicy: ClusterFirst
  restartPolicy: Never


[생성 후 pod 의 env 확인 방법]
kubectl exec -it nginx -- env
kubectl exec -it nginx -- sh -c 'echo $varl'
kubectl describe nginx | grep value1

https://kubernetes.io/ko/docs/tasks/inject-data-application/define-environment-variable-container/

'k8s > CKA' 카테고리의 다른 글

[연습]9. etcd backup AND restore  (0) 2023.03.04
[연습]7. pod_mount  (0) 2023.03.04
[연습]5. Pod run  (0) 2023.03.02
[연습]4. expose AND service  (0) 2023.03.02
[연습]3. NetworkPolicy  (0) 2023.03.02

주제 : 명령어를 사용하여 POD 실행

조건 : 

  • 이름 : nginx
  • nodeselector : disk = ssd
  • image = nginx
kubectl run nginx-name --image=nginx --dry-run=cliend -o yaml

[위명령어를치면 yaml 파일이 나오는데 아래와 같이 수정 하면 됨]
apiVersion: v1
kind: Pod
metadata:
  name: nginx-name
spec:
  containers:
  - image: nginx
    name: nginx
  nodeSelector:
    disk: ssd

 

'k8s > CKA' 카테고리의 다른 글

[연습]7. pod_mount  (0) 2023.03.04
[연습]6. Pod run with env  (0) 2023.03.02
[연습]4. expose AND service  (0) 2023.03.02
[연습]3. NetworkPolicy  (0) 2023.03.02
[연습]2. cordon AND drain  (0) 2023.03.02

주제 : grafana deploy 에서 사용하고 있는 3000번 포트에 대한 NodePort로의 서비스를 생성하라

조건

  • 타입 : NodePort
  • 포트 : TCP 3000
  • 이름 : grafana
kubectl expose deployment grafana --name=grafana --port=3000 --type=NodePort --protocol=TCP

[참고] 위 내용을 실행하면 아래와같은 서비스가 배포가됨
apiVersion: v1
kind: Service
metadata:
  creationTimestamp: null
  labels:
    app.kubernetes.io/instance: grafana
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: grafana
    app.kubernetes.io/version: 9.3.6
    helm.sh/chart: grafana-6.50.7
  name: grafana
spec:
  ports:
  - port: 3000
    protocol: TCP
    targetPort: 3000
  selector:
    app.kubernetes.io/instance: grafana
    app.kubernetes.io/name: grafana
  type: NodePort

 

https://kubernetes.io/docs/tutorials/services/connect-applications-service/

'k8s > CKA' 카테고리의 다른 글

[연습]6. Pod run with env  (0) 2023.03.02
[연습]5. Pod run  (0) 2023.03.02
[연습]3. NetworkPolicy  (0) 2023.03.02
[연습]2. cordon AND drain  (0) 2023.03.02
[연습]1. Create ClusterRole AND ClusterRoleBinding  (0) 2023.03.02

주제 : 조건에 맞는 NetworkPolicy 생성

조건 : 

  • name : test-network-policy
  • namespace : default
  • 레이블이 "role=db"인 pod를 선택
  • 네임스페이스와 "project=myproject" 를 레이블로 가지는 모든 파드
  • port : TCP, 6379 포트
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:
    matchLabels:
      role: db
  policyTypes:
    - Ingress

  ingress:
    - from:
        - namespaceSelector:
            matchLabels:
              project: myproject
      ports:
        - protocol: TCP
          port: 6379

 

 

https://kubernetes.io/docs/concepts/services-networking/network-policies/

'k8s > CKA' 카테고리의 다른 글

[연습]6. Pod run with env  (0) 2023.03.02
[연습]5. Pod run  (0) 2023.03.02
[연습]4. expose AND service  (0) 2023.03.02
[연습]2. cordon AND drain  (0) 2023.03.02
[연습]1. Create ClusterRole AND ClusterRoleBinding  (0) 2023.03.02

주제 : 특정 노드에 대하여 스케줄을 중지하고 배포된 파드를 다른 노드로 옮기는 작업

kubectl cordon [node name]
kubectl drain --ignore-daemonset --force --delette-emptydir-data [node name]
kubectl uncordon [node name]

 

https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/

 

'k8s > CKA' 카테고리의 다른 글

[연습]6. Pod run with env  (0) 2023.03.02
[연습]5. Pod run  (0) 2023.03.02
[연습]4. expose AND service  (0) 2023.03.02
[연습]3. NetworkPolicy  (0) 2023.03.02
[연습]1. Create ClusterRole AND ClusterRoleBinding  (0) 2023.03.02

+ Recent posts