inflearn logo
강의

Course

Instructor

Certified Kubernetes Security Specialist (CKS) – Practical Exam Guide

[📌Problem Solving] Using NetworkPolicy

NetworkPolicy에서 NamespaceSelector 설정 관련

Resolved

77

temprmn

1 asked

0

안녕하세요.

NetworkPolicy 문제에서 allow-from-prod 를 작성할 때, 아래와 같은 설정을 답안으로 작성해 주셨습니다.

spec:
  ...
  ingress:
  - from:
    - namespaceSelector:
        matchExpressions:
        - key: env
	  operator: In
          values: ["prod"]

 

혹시 아래와 같이 작성하여도 정답이 맞을지 여쭤보고 싶어서 글 작성하게 되었습니다. 저는 문서에서 해당 파트를 참고하여 작성하였습니다.(https://kubernetes.io/docs/concepts/services-networking/network-policies/#networkpolicy-resource)

spec:
  ...
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          env: prod

테스트 결과 통신은 아래와 같이 되는 것을 확인하였습니다.

# pod 들의 IP와 port 확인
$ k get pod -A -o wide
NAMESPACE            NAME                                      READY   STATUS    RESTARTS      AGE   IP              NODE           NOMINATED NODE   READINESS GATES
data                 postgres-5d6dd5946-rbz9m                  1/1     Running   0             10m   192.168.1.92    node01         <none>           <none>
data                 test-pod                                  1/1     Running   0             10m   192.168.1.164   node01         <none>           <none>
default              test-pod                                  1/1     Running   0             10m   192.168.1.99    node01         <none>           <none>
kube-system          cilium-9cpx4                              1/1     Running   1 (44m ago)   27d   172.30.2.2      node01         <none>           <none>
...
prod                 test-pod                                  1/1     Running   0             10m   192.168.1.184   node01         <none>           <none

$ k exec test-pod -it -n prod -- /bin/sh
/# ping 192.168.1.164    # -n data 의 pod
------------------------------
PING 192.168.1.164 (192.168.1.164): 56 data bytes
64 bytes from 192.168.1.164: seq=0 ttl=63 time=0.070 ms
64 bytes from 192.168.1.164: seq=1 ttl=63 time=0.079 ms
64 bytes from 192.168.1.164: seq=2 ttl=63 time=0.052 ms
64 bytes from 192.168.1.164: seq=3 ttl=63 time=0.074 ms
^C
--- 192.168.1.164 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 0.052/0.068/0.079 ms

통신과는 별개로 다른 부분에서 문제가 될 가능성이 있지 않을까 싶어서 여쭤봅니다.

 

감사합니다.

kubernetes security devops infrastructure container

Answer 1

0

1pro

그렇게 하셔도 됩니다.

그게 일반적인 라벨 연결 방법이고요.

제가 자료실 작성한 내용은 좀더 세부적인 조건식을 넣기 위한 방법인데, 문제에서의 라벨 연결은 단순 연결이기 때문에 지금 작성하신 대로 하는 게 더 적절하긴 합니다.

Apple Silicon에서 CI 빌드 이미지가 재시작을 반복할 때 (jib platforms 수정)

1

9

0

제공된 스크립트를 어디서 받을 수 있나요?

0

10

0

미션 제출 방식 건의

0

10

0

Deployment 업데이트-2 해결 방식 문의

1

15

1

미션 진행 방식에 대한 질문입니다.

0

19

1

수업자료

0

17

1

파킹 페이지와 대기열 큐 질문입니다.

0

37

1

virtualbox 설치시

1

40

1

실행중인 컨테이너를 모두 삭제하는 방법(윈도우버전)

0

65

2

winpty docker 설정

0

56

2

vs code설치했는데도, easy docker 파일 열기에서 vs code 아이콘은 안보여요

0

42

1

가명정보에 대한 문의

0

57

2

https:// studio.opentofu.click 로 접속이 안돼요

0

43

1

자료

0

40

1

에이전트 프로그램 다운로드 불가

0

71

2

verify.sh 4단계 실패 — Jenkins 컨테이너에서 127.0.0.1:6443 connection refused

0

61

2

아무 수정도 안하고 주어진 소스로 그대로 했는데 패스워드 에러가 남

0

77

1

처음 실행 시 계속 패스워드가 틀리다고 나옴. 수정하고 해도 마찬가지임

1

94

2

재수강 할인이 있는지 문의 드립니다.

0

58

2

설치 가이드대로 해도 안되는 경우가 있더라고요

0

65

2

구현 방법에 대한 문의

0

72

2

Github repo 404 not found

0

53

1

image pull 에러

1

73

2

카페 접근 권한이 없습니다.

1

98

2