어떤 파드에 Network Policy가 적용되어 있나요?
controlplane ~ ➜ kubectl get netpol
NAME POD-SELECTOR AGE
payroll-policy name=payroll 13m
POD-SELECTOR 에 payroll로 정의됨
어떤 taffic을 handle하나요?
controlplane ~ ➜ kubectl describe netpol payroll-policy
Name: payroll-policy
Namespace: default
Created on: 2024-12-13 13:53:04 +0000 UTC
Labels: <none>
Annotations: <none>
Spec:
PodSelector: name=payroll
Allowing ingress traffic:
To Port: 8080/TCP
From:
PodSelector: name=internal
Not affecting egress traffic
Policy Types: Ingress
Policy Types에 Ingress로 정의되어 있음
이 Network Policy에 어떤 rule이 정의되어 있나요?
Policy Types가 Ingress이므로 내부 트래픽이 Payroll POD로 전달된다
내부 파드는 8080 포트를 통해 Payroll POD로 접근가능하다
새로운 Network Policy를 만드세요
Policy Name: internal-policy
Policy Type: Egress
Egress Allow: payroll
Payroll Port: 8080
Egress Allow: mysql
MySQL Port: 3306
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: internal-policy
namespace: default
spec:
policyTypes:
- Egress
egress:
- ports:
- protocol: TCP
port: 3306
to:
- podSelector:
matchLabels:
name: mysql
- ports:
- protocol: TCP
port: 8080
to:
- podSelector:
matchLabels:
name: payroll
kubectl get pod [mysql, payroll] -o yaml 명령어로 매치할 수 있는 라벨 확인 후
podSelector.matchLabels에 명시
'DevOps' 카테고리의 다른 글
CKA 예제 리마인더 - 28. CNI (0) | 2024.12.19 |
---|---|
CKA 예제 리마인더 - 27. Explore Environment (0) | 2024.12.19 |
CKA 예제 리마인더 - 26. Security Contexts (0) | 2024.12.13 |
CKA 예제 리마인더 - 25. Image Security (0) | 2024.12.13 |
CKA 예제 리마인더 - 24. Service Accounts (1) | 2024.12.13 |