5.2. 关于 Support Log Gather
支持 Log Gather Operator 基于传统 must-gather 工具的功能构建,以自动收集调试数据。它通过将收集的信息打包到一个 .tar 文件中来简化故障排除,并将其自动上传到指定的红帽支持问题单中。
Support Log Gather 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
Support Log Gather 的主要功能包括:
- 不需要管理员特权 :可让您收集和上传日志,而无需升级的权限,使非管理员用户更易于收集数据。
- 简化的日志收集 :从集群收集调试数据,如资源定义和服务日志。
-
可配置数据上传 :提供配置选项,可自动将
.tar文件上传到支持问题单,或者将其保存到本地以进行手动上传。
5.2.1. 使用 Web 控制台安装 Support Log Gather 复制链接链接已复制到粘贴板!
您可以使用 Web 控制台安装 Support Log Gather。
Support Log Gather 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
先决条件
-
您可以使用
cluster-admin权限访问集群。 - 访问 OpenShift Container Platform web 控制台。
流程
- 登陆到 OpenShift Container Platform Web 控制台。
-
进入到 Ecosystem
Software Catalog。 - 在过滤框中,输入 Support Log Gather。
- 选择 Support Log Gather。
- 从 Version 列表中,选择 Support Log Gather 版本,然后点 Install。
在 Install Operator 页中,配置安装设置:
为 Operator 选择 Installed Namespace。
默认 Operator 命名空间为
must-gather-operator。如果must-gather-operator命名空间不存在,则会自动创建它。选择一个 更新批准策略:
- 当有新版本可用时,选择 Automatic 以让 Operator Lifecycle Manager (OLM) 自动更新 Operator。
- 如果 Operator 更新必须由具有适当凭证的用户批准,请选择 Manual。
- 点 Install。
验证
验证 Operator 是否已成功安装:
-
进入到 Ecosystem
Software Catalog。 -
验证 Support Log Gather 是否在
must-gather-operator命名空间中 Status 为 Succeeded。
-
进入到 Ecosystem
验证 Support Log Gather pod 是否正在运行:
-
进入 Workloads
Pods 验证 Support Log Gather pod 的状态是否为 Running。
您只能在 pod 启动并运行后使用 Support Log Gather。
-
进入 Workloads
5.2.2. 使用 CLI 安装 Support Log Gather 复制链接链接已复制到粘贴板!
要为支持问题单启用自动日志收集,您可以从命令行界面 (CLI) 安装 Support Log Gather。
Support Log Gather 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
先决条件
-
您可以使用
cluster-admin权限访问集群。
流程
运行以下命令,创建一个名为
must-gather-operator的新项目:oc new-project must-gather-operator
$ oc new-project must-gather-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个
OperatorGroup对象:创建定义
OperatorGroup对象的 YAML 文件,如operatorGroup.yaml:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来创建
OperatorGroup对象:oc create -f operatorGroup.yaml
$ oc create -f operatorGroup.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
创建
Subscription对象:创建一个 YAML 文件,如
subscription.yaml,用于定义Subscription对象:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来创建
Subscription对象:oc create -f subscription.yaml
$ oc create -f subscription.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令,验证 Operator 命名空间中的 pod 状态。
oc get pods
$ oc get podsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME READY STATUS RESTARTS AGE must-gather-operator-657fc74d64-2gg2w 1/1 Running 0 13m
NAME READY STATUS RESTARTS AGE must-gather-operator-657fc74d64-2gg2w 1/1 Running 0 13mCopy to Clipboard Copied! Toggle word wrap Toggle overflow 所有容器集的状态都需要处于
Running状态。运行以下命令验证订阅是否已创建:
oc get subscription -n must-gather-operator
$ oc get subscription -n must-gather-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME PACKAGE SOURCE CHANNEL support-log-gather-operator support-log-gather-operator redhat-operators tech-preview
NAME PACKAGE SOURCE CHANNEL support-log-gather-operator support-log-gather-operator redhat-operators tech-previewCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令验证 Operator 是否已安装:
oc get csv -n must-gather-operator
$ oc get csv -n must-gather-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME DISPLAY VERSION REPLACES PHASE support-log-gather-operator.v4.20.0 support log gather 4.20.0 Succeeded
NAME DISPLAY VERSION REPLACES PHASE support-log-gather-operator.v4.20.0 support log gather 4.20.0 SucceededCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.2.3. 配置支持日志收集实例 复制链接链接已复制到粘贴板!
您需要从命令行界面 (CLI) 创建 MustGather 自定义资源 (CR),以便从集群中自动收集诊断数据。这个过程还会自动将数据上传到红帽支持问题单中。
Support Log Gather 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
先决条件
-
已安装 OpenShift CLI (
oc) 工具。 - 已在集群中安装了 Support Log Gather。
- 您有一个红帽支持问题单 ID。
- 您已创建了包含红帽客户门户网站凭证的 Kubernetes secret。secret 必须包含 username 字段和 password 字段。
- 您已创建了一个服务帐户。
流程
为
MustGatherCR 创建一个 YAML 文件,如support-log-gather.yaml,其中包含以下基本配置:support-log-gather.yaml示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有关配置参数的更多信息,请参阅" MustGather 自定义资源的配置参数"。
运行以下命令来创建
MustGather对象:oc create -f support-log-gather.yaml
$ oc create -f support-log-gather.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令验证
MustGatherCR 是否已创建:oc get mustgather
$ oc get mustgatherCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME AGE example-mg 7s
NAME AGE example-mg 7sCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,验证 Operator 命名空间中的 pod 状态。
oc get pods
$ oc get podsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME READY STATUS RESTARTS AGE must-gather-operator-657fc74d64-2gg2w 1/1 Running 0 13m example-mg-gk8m8 2/2 Running 0 13s
NAME READY STATUS RESTARTS AGE must-gather-operator-657fc74d64-2gg2w 1/1 Running 0 13m example-mg-gk8m8 2/2 Running 0 13sCopy to Clipboard Copied! Toggle word wrap Toggle overflow 必须创建基于
MustGatherCR 的名称的新 pod。所有容器集的状态都需要处于Running状态。要监控文件上传的进度,请运行以下命令来查看作业 pod 中上传容器的日志:
oc logs -f pod/example-mg-gk8m8 -c upload
oc logs -f pod/example-mg-gk8m8 -c uploadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 成功时,流程必须创建一个存档,并将其上传到指定案例的红帽安全文件传输协议 (SFTP) 服务器。
5.2.4. MustGather 自定义资源的配置参数 复制链接链接已复制到粘贴板!
您可以通过创建一个 YAML 文件来管理 MustGather 自定义资源 (CR),该文件指定数据收集和上传过程的参数。下表提供了您可以在 MustGather CR 中配置的参数概述。
| 参数名称 | 描述 | 类型 |
|---|---|---|
|
|
可选:指定是否收集审计日志。有效值为 |
|
|
|
可选:指定 |
该值必须是带有时间单位的浮点数。有效单位是 |
|
| 可选:定义要使用的代理配置。默认值为集群级别的代理配置。 |
|
|
| 指定 HTTP 请求的代理 URL。 | URL |
|
| 指定 HTTPS 请求的代理 URL。 | |
|
| 指定以逗号分隔的域列表,这些域不能在其中使用代理。 | URL 列表 |
|
|
可选:指定在数据收集完成后是否保留 |
|
|
|
可选:指定服务帐户的名称。默认值为 |
|
|
|
可选:定义 |
|
|
| 定义持久性卷的详细信息。 |
|
|
| 定义持久性卷声明 (PVC) 的详细信息。 |
|
|
| 指定要用于存储的 PVC 名称。 |
|
|
| 可选:指定用于存储捆绑包的 PVC 的路径。 |
|
|
|
定义存储类型。唯一支持的值是 |
|
|
|
可选:定义 |
|
|
|
可选:指定捆绑包上传的目标服务器。默认情况下,捆绑包被上传到 |
默认情况下,捆绑包被上传到 |
|
| 指定为其收集诊断数据的红帽支持问题单 ID。 |
|
|
|
定义身份验证并将文件上传到红帽客户门户网站支持问题单所需的凭证。该值必须包含 |
|
|
| 指定包含凭证的 Kubernetes secret 的名称。 |
|
|
|
可选:指定 |
|
|
|
指定 |
|
如果没有指定 spec.uploadTarget 或 spec.storage,pod 会将数据保存到临时卷中,并在 pod 终止时永久删除数据。
5.2.5. 卸载 Support Log Gather 复制链接链接已复制到粘贴板!
您可以使用 Web 控制台卸载 Support Log Gather。
先决条件
-
您可以使用
cluster-admin权限访问集群。 - 访问 OpenShift Container Platform web 控制台。
- 已安装 Support Log Gather。
流程
- 登陆到 OpenShift Container Platform Web 控制台。
卸载 Support Log Gather Operator。
-
进入到 Ecosystem
Installed Operators。 -
点 Support Log Gather 条目旁边的 Options 菜单
,然后点 Uninstall Operator。
- 在确认对话框中,点 Uninstall。
-
进入到 Ecosystem
5.2.6. 删除 Support Log Gather 资源 复制链接链接已复制到粘贴板!
卸载 Support Log Gather 后,就可以从集群中删除相关的资源。
先决条件
-
您可以使用
cluster-admin权限访问集群。 - 访问 OpenShift Container Platform web 控制台。
流程
- 登陆到 OpenShift Container Platform Web 控制台。
删除 must-gather-operator 命名空间中的组件部署。
- 点 Project 下拉菜单查看所有可用项目的列表,然后选择 must-gather-operator 项目。
-
进入到 Workloads
Deployments。 - 选择您要删除的部署。
- 点 Actions 下拉菜单,再选择 Delete Deployment。
- 在确认对话框中,点 Delete 以删除部署。
另外,使用命令行界面 (CLI) 删除
must-gather-operator命名空间中组件部署。oc delete deployment -n must-gather-operator -l operators.coreos.com/support-log-gather-operator.must-gather-operator
$ oc delete deployment -n must-gather-operator -l operators.coreos.com/support-log-gather-operator.must-gather-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow
可选:删除由 Support Log Gather 安装的自定义资源定义 (CRD):
-
进入到 Administration
CustomResourceDefinitions。 -
在 Name 字段中输入
MustGather来过滤 CRD。 点击以下 CRD
旁边的 Options 菜单,然后选择 Delete Custom Resource Definition:
-
MustGather
-
-
进入到 Administration
可选:删除
must-gather-operator命名空间。-
进入到 Administration
Namespaces。 -
点 must-gather-operator 旁边的 Options 菜单
并选择 Delete Namespace。
-
在确认对话框中,输入
must-gather-operator并点 Delete。
-
进入到 Administration