티스토리 뷰

1. Network Policies 

1) 정의

(1) Kubernetes에서 특정 파드 그룹이 서로 및 다른 네트워크 엔트포인트와 어떻게 통신할 수 있는지를 정의 

- IP 주소, 포트 수준에서 작동하며 ingress(들어오는), egress(나가는) 트래픽을 허용 및 차단하며 관리한다. 

2) 네트워크 정책의 구성요소 

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: example-policy
  namespace: default
spec:
  podSelector:
    matchLabels:
      role: db
  policyTypes:
  - Ingress
  - Egress
  ingress:
  - from:
    - podSelector:
        matchLabels:
          role: frontend
    ports:
    - protocol: TCP
      port: 6379
  egress:
  - to:
    - ipBlock:
        cidr: 10.0.0.0/8
    ports:
    - protocol: TCP
      port: 5978


1) 파드 셀렉터 : 네트워크 정책이 적용될 파드를 결정(여기서는 역할(Role)이 db인 파드를 한해서 네트워크 정책이 적용된다)

2) 정책 유형 : ingress, egress 또는 둘 다에 영향을 미치는지를 정의

(1) Ingress나 Egress만 있는 경우, 한쪽에만 적용된다.

- 예를 들어 Ingress만 있다고 가정한 경우, frontend 역할을 가지고 있는 pod로부터 6379포트로만 받는다. 그 이외의 INgress 트래픽을 허용하지 않는다. 한편 egress는 all allow다. (명시되지 않은 정책 유형은 all allow)

(2) 둘다 명시되어 있는 경우, Ingress, Egress 둘 다 명시된 정책에만 제한된다. 

3) 인그레스 및 이그레스 규칙: 트래픽의 허용된 소스나 목적지를 지정한다. 특정 파드, 네임스페이스, IP블록을 포함한다. 

- 여기서는 ingress 의 경우 frontend역할을 가진 pod로부터 들어오는 트래픽을 6379포트에서만 받는다. 

- egress의 경우, 10.0.0.0/8 대역로 향하며, 5978포트에서 출발하는 트래픽만 나갈 수 있다.  

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함