|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
查错
故障排除 SUSE® Security 部署
使用与应用程序工作负载相同的编排工具来部署、管理和更新 SUSE® Security 容器。请务必查看在线文档,以了解部署过程中每个步骤的必要性。通常,部署是通过简单地复制示例 yaml 文件并在未事先查看步骤的情况下进行的,例如正确配置注册表、密钥或 RBAC/角色绑定。
初始部署
-
检查 SUSE® Security 容器是否可以使用正确的身份验证进行拉取。检查所使用的密钥,并确保集群能够访问适当的注册表。
-
确保 yaml 文件中所需的更改(例如 NodePort 或 LoadBalancer)或 Helm 值设置已正确设置。
-
检查平台和容器运行时,并根据需要进行更改(例如 PKS、containerd、CRI-O)。
调试日志
要查看 SUSE® Security 容器的日志,例如控制器Pod的日志
kubectl logs neuvector-controller-pod-777fdc5668-4jkjn -n neuvector
这些日志可能显示集群连接问题、管理员操作、扫描活动和其他有用的条目。如果有多个控制器在运行,可能需要检查每一个。这些日志可以通过管道传输到文件中,以便发送给SUSE® Security支持。
使用CLI开启调试模式
使用用户和密码登录到 SUSE® Security 管理器 Pod(建议在单独的终端窗口中进行)。
kubectl exec -it neuvector-manager-pod-5bb76b6754-rlmnp -n neuvector -- cli
#neuvector-svc-controller.neuvector> login
获取控制器列表。找到 Leader = True 的控制器。
show controller
使用控制器的 ID 或名称,在 Leader 控制器中开启调试模式。
set controller 4fce427cf963 debug -c all
在所有控制器上开启调试模式。
set system controller_debug -c all
在 SUSE® Security 中执行您希望调试的活动。然后查看控制器日志(在单独的终端窗口中)。
kubectl logs <leader_controller_pod_name> -n neuvector
如有需要,捕获日志并将其发送到 SUSE® Security。
在控制器上关闭调试模式(返回到 CLI 窗口)。
set controller 4fce427cf963 debug
exit
检查控制器调试状态。
show controller setting 289d67396fcb
使用 REST API 开启调试模式。
设置访问令牌,包含您的 IP、用户和密码:
_controllerIP_="<your_controller_ip>"
_controllerRESTAPIPort_="10443"
_neuvectorUsername_="admin"
_neuvectorPassword_="admin"
|
对于基于 Kubernetes 的部署,您可以在以下命令输出中获取控制器 IP: |
kubectl get pod -n neuvector -o wide | grep controller
|
如果从集群外部访问 REST API,请参阅自动化部分的说明。 |
获取身份验证令牌。
curl -k -H "Content-Type: application/json" -d '{"password": {"username": "'$_neuvectorUsername_'", "password": "'$_neuvectorPassword_'"}}' "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/auth" > /dev/null 2>&1 > token.json
_TOKEN_=`cat token.json | jq -r '.token.token'`
|
您可能需要安装 jq($sudo yum install jq)。 |
启用调试模式。
curl -X PATCH -k -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" -d '{"config": {"controller_debug": ["cpath", "conn"]}}' "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/system/config" > /dev/null 2>&1 > set_debug.json
#debug options - cpath, conn, mutex, scan, cluster , all
在集群中的所有控制器上禁用调试。
curl -X PATCH -k -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" -d '{"config": {"controller_debug": []}}' "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/system/config" > /dev/null 2>&1 > set_debug.json
检查集群中控制器的调试状态。
curl -k -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/system/config" > /dev/null 2>&1 > system_setting.json
cat system_setting.json | jq .config.controller_debug
注销
echo `date +%Y%m%d_%H%M%S` log out
curl -k -X 'DELETE' -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/auth" > /dev/null 2>&1