8.2. 使用 roxctl netpol connectivity map 命令连接映射
连接映射根据 Kubernetes 清单中定义的网络策略,提供不同工作负载之间允许的连接详情。您可以视觉化并了解 Kubernetes 环境中的不同工作负载如何根据您设置的网络策略相互通信。
要检索连接映射信息,roxctl netpol connectivity map
命令需要一个目录路径,其中包含 Kubernetes 工作负载和网络策略清单。输出详细介绍了分析的 Kubernetes 资源中的连接详情。
8.2.1. 从 Kubernetes 清单目录中检索连接映射信息 复制链接链接已复制到粘贴板!
使用 roxctl netpol connectivity map
命令,从 Kubernetes 清单目录检索连接映射信息。
流程
要检索连接映射信息,请运行以下命令:
roxctl netpol connectivity map <folder_path> [flags]
roxctl netpol connectivity map <folder_path> [flags]
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定文件夹的路径,其中包括包含 YAML 资源和网络策略的子文件夹,例如
netpol-analysis-example-minimal/
。命令扫描整个子文件夹树。另外,您还可以指定参数来修改命令的行为。
Expand 表 8.2. 输出示例 src dst conn 0.0.0.0-255.255.255.255
default/frontend[Deployment]
TCP 8080
default/frontend[Deployment]
0.0.0.0-255.255.255.255
UDP 53
default/frontend[Deployment]
default/backend[Deployment]
TCP 9090
输出中会显示一个表,列出了允许的连接行。每行由以下元素组成:
-
src
:: 代表源端点。 -
dst
:: 代表目标端点。 -
conn
:: 代表允许的连接属性。
端点的格式是 namespace/name[Kind]
。例如,default/backend[Deployment]
。
8.2.2. 连接映射输出格式和视觉化 复制链接链接已复制到粘贴板!
您可以使用各种输出格式,包括 txt
、md
、csv
、json
和 dot
。dot
格式非常适合将输出可视化为连接图形。它可以通过图形软件(如 Graphviz 工具 )查看,以及对 VSCode 的扩展。您可以使用 Graphviz 将 点
输出转换为格式,如 svg
、jpeg
或 png
,无论是在本地安装还是通过在线查看器安装。
8.2.3. 使用 Graphviz 从点输出生成 svg 图形 复制链接链接已复制到粘贴板!
按照以下步骤,从 点
输出以 svg
格式创建图形。
先决条件
- Graphviz 安装在本地系统中。
流程
运行以下命令以
svg
格式创建图形:dot -Tsvg connlist_output.dot > connlist_output_graph.svg
$ dot -Tsvg connlist_output.dot > connlist_output_graph.svg
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下是点输出的示例以及 Graphviz 生成的图形: