본문 바로가기
자질구레

[kubernetes] NetworkPolicy 테스트

by jonnwon 2025. 2. 3.
728x90
반응형

 

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-port-from-namespace
  namespace: devops
spec:
  podSelector: {}
  policyTypes:
  - Ingress
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          project: llm
    ports:
    - protocol: TCP
      port: 80

 

위와 같은 NetworkPolicy는

"project= llm 이라는 레이블이 있는 네임스페이스에서 속한 pod들만 devops 네임스페이스의 모든 pod에 대해 TCP 80번 포트로 접근할 수 있도록 설정한 것"

 

 

 

테스트

 

kubectl create namespace test-ns
kubectl run test-wget --rm -it --image=busybox --namespace=test-ns --command -- sh
wget -qO- http://web-server.devops.svc.cluster.local:80

-> 안됨


kubectl label namespace test-ns project=llm
kubectl get ns --show-labels

kubectl run test-wget --rm -it --image=busybox --namespace=test-ns --command -- sh
wget -qO- http://web-server.devops.svc.cluster.local:80

-> 레이블을 설정 한 후 가능

 

728x90