9.3. 프로젝트 버전 간 허용된 연결의 차이점 확인
이 명령을 사용하면 두 프로젝트 버전 간의 허용된 연결 차이점을 이해하는 데 도움이 됩니다. 각 버전의 디렉터리에 있는 워크로드 및 Kubernetes 네트워크 정책 매니페스트를 분석하고 텍스트 형식의 차이점을 나타냅니다.
텍스트,md,dot, csv 등 다양한 출력 형식의 연결 차이점 보고서를 볼 수 있습니다.
9.3.1. roxctl netpol connectivity diff 명령을 사용하여 연결 차이점 보고서 생성 링크 복사링크가 클립보드에 복사되었습니다!
연결 차이점 보고서를 생성하기 위해 roxctl netpol connectivity diff 명령에는 각각 네트워크 정책을 포함하여 Kubernetes 매니페스트가 포함된 두 개의 폴더 dir1 및 dir2 가 필요합니다.
프로세스
다음 명령을 실행하여 지정된 디렉터리에 있는 Kubernetes 매니페스트 간의 연결 차이점을 확인합니다.
roxctl netpol connectivity diff --dir1=<folder_path_1> --dir2=<folder_path_2> [flags]
$ roxctl netpol connectivity diff --dir1=<folder_path_1> --dir2=<folder_path_2> [flags]1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 폴더 경로를 지정합니다. 여기에는 YAML 리소스 및 분석을 위한 네트워크 정책이 포함된 하위 폴더가 포함될 수 있습니다. 명령은 두 디렉토리의 전체 하위 폴더 트리를 스캔합니다. 예를 들어 <
folder_path_1>은netpol-analysis-example-minimal/이고 <folder_path_2>는netpol-diff-example-example-minimal/입니다. 선택적으로 매개변수를 지정하여 명령의 동작을 수정할 수도 있습니다.
선택적 매개변수에 대한 자세한 내용은 roxctl netpol connectivity diff 명령 옵션을 참조하십시오.
참고이 명령은
kubectl apply -f를 사용하여 수락할 수 있는 모든 YAML 파일을 고려한 다음, 이러한 파일은roxctl netpol connectivity diff명령에 유효한 입력이 됩니다.예 9.2. 출력 예
Expand diff-type 소스 대상 dir 1 dir 2 workloads-diff-info changed
default/frontend[Deployment]
default/backend[Deployment]
TCP 9090
TCP 9090,UDP 53
추가됨
0.0.0.0-255.255.255.255
default/backend[Deployment]
연결 없음
TCP 9090
의미 체계 차이 보고서는 dir1 에서 허용되는 연결에 비해 dir2 에서 변경, 추가 또는 제거된 연결에 대한 개요를 제공합니다. 출력을 검토할 때 각 행은 dir1 에 비해 dir2 에서 추가, 제거 또는 변경된 허용된 연결을 나타냅니다.
다음은 다양한 형식으로 roxctl netpol 연결 diff 명령으로 생성된 출력의 예입니다.
해당하는 경우 workloads-diff-info 는 추가 또는 제거된 연결과 관련된 추가 또는 제거된 워크로드에 대한 추가 세부 정보를 제공합니다.
예를 들어 워크로드 B 가 삭제되어 워크로드 A 에서 워크로드 B 로의 연결이 제거되면 workloads-diff-info 는 워크로드 B 가 제거되었음을 나타냅니다. 그러나 네트워크 정책으로 인해 이러한 연결이 제거되고 워크로드 A 또는 B 가 삭제되지 않은 경우 workloads-diff-info 가 비어 있습니다.
9.3.2. roxctl netpol connectivity diff 명령 옵션 링크 복사링크가 클립보드에 복사되었습니다!
roxctl netpol connectivity diff 명령은 다음 옵션을 지원합니다.
| 옵션 | 설명 |
|---|---|
|
| 입력 리소스의 첫 번째 디렉터리 경로입니다. 이는 필수 옵션입니다. |
|
| 첫 번째 디렉터리 경로와 비교할 입력 리소스의 두 번째 디렉터리 경로입니다. 이는 필수 옵션입니다. |
|
|
처음 발생한 오류 발생 시 실패합니다. 기본값은 |
|
|
|
|
| 연결 차이점 출력을 특정 파일에 저장합니다. |
|
|
출력 형식을 구성합니다. 지원되는 형식은 |
|
|
이미 존재하는 경우 출력 경로를 제거합니다. 기본값은 |
|
|
연결 차이점 출력을 기본 파일에 저장합니다. 기본값은 |
|
|
경고를 오류로 처리합니다. 기본값은 |
9.3.3. 구문 및 의미 차이 출력 구분 링크 복사링크가 클립보드에 복사되었습니다!
다음 예에서 dir1 은 netpol-analysis-example-minimal/ 이며 dir2 는 netpol-diff-example-minimal/ 입니다. 디렉터리 간의 차이점은 네트워크 정책 backend-netpol 에서 약간의 변경 사항입니다.
dir1 의 정책 예:
dir2 의 변경 사항은 difference 출력을 생성하는 ports 속성 앞에 추가됩니다.
9.3.3.1. 구문 차이 출력 링크 복사링크가 클립보드에 복사되었습니다!
프로세스
다음 명령을 실행하여 지정된 두 디렉터리에 있는
netpols.yaml파일의 내용을 비교합니다.diff netpol-diff-example-minimal/netpols.yaml netpol-analysis-example-minimal/netpols.yaml
$ diff netpol-diff-example-minimal/netpols.yaml netpol-analysis-example-minimal/netpols.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
12c12 < - ports: --- > ports:
12c12 < - ports: --- > ports:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.3.3.2. 의미 체계 차이 출력 링크 복사링크가 클립보드에 복사되었습니다!
프로세스
다음 명령을 실행하여 지정된 두 디렉터리에 있는 Kubernetes 매니페스트와 네트워크 정책 간의 연결 차이점을 분석합니다.
roxctl netpol connectivity diff --dir1=roxctl/netpol/connectivity/diff/testdata/netpol-analysis-example-minimal/ --dir2=roxctl/netpol/connectivity/diff/testdata/netpol-diff-example-minimal
$ roxctl netpol connectivity diff --dir1=roxctl/netpol/connectivity/diff/testdata/netpol-analysis-example-minimal/ --dir2=roxctl/netpol/connectivity/diff/testdata/netpol-diff-example-minimalCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Connectivity diff: diff-type: changed, source: default/frontend[Deployment], destination: default/backend[Deployment], dir1: TCP 9090, dir2: TCP 9090,UDP 53 diff-type: added, source: 0.0.0.0-255.255.255.255, destination: default/backend[Deployment], dir1: No Connections, dir2: TCP 9090
Connectivity diff: diff-type: changed, source: default/frontend[Deployment], destination: default/backend[Deployment], dir1: TCP 9090, dir2: TCP 9090,UDP 53 diff-type: added, source: 0.0.0.0-255.255.255.255, destination: default/backend[Deployment], dir1: No Connections, dir2: TCP 9090Copy to Clipboard Copied! Toggle word wrap Toggle overflow