1.5. 配置 TLS 证书
您可以指定 Cryostat Operator 来配置 Cryostat 以信任特定应用程序的 TLS 证书。
Cryostat 尝试打开使用 TLS 证书的目标 JVM 的 JMX 连接。对于成功的 JMX 连接,Cryostat 必须在目标 JVM 证书上传递其所有身份验证检查。
您可以在 Cryostat Operator YAML 配置文件的 trustedCertSecrets 数组中指定多个 TLS secret。您必须在数组的 secretName 属性中指定与 Cryostat 应用程序相同的 secret。certificateKey 属性默认为 tls.crt,但您可以将值改为 X.509 证书文件名称。
只有在使用 com.sun.management.jmxremote.registry.ssl=true 属性为远程 JMX 连接启用 TLS 的应用程序才需要配置 TLS 证书。
前提条件
- 使用 OpenShift Web 控制台登录到 OpenShift Container Platform。
- 在项目中创建 Cryostat 实例。
- 登录到您的 Cryostat web 控制台。
流程
- 在 OpenShift Web 控制台中,点 Operators > Installed Operators。
- 从可用 operator 列表中选择 Cryostat Operator。
要配置 TLS 证书,请选择以下选项之一:
在 Operator 详情页面的 Details 标签页中创建一个 Cryostat 实例。
- 在 Provided APIs 菜单下,点 Create instance。
- 在 Name 字段中输入值。
展开 Trusted TLS CertifIcates 选项,然后单击 Add Trusted TLS 证书。OpenShift Web 控制台中显示选项列表。
图 1.6. Trusted TLS Certificates 选项
从 Secret Name 下拉列表中选择 TLS secret。Certificate Key 字段是可选的。
注意您可以点 Remove Trusted TLS 证书 来删除 TLS 证书。
- 点 Create。您的 Cryostat 实例会在 Operator 详情页面的 Cryostat 标签页中打开。
导航到 Operator Details 页面中的 YAML 选项卡。您的 Cryostat Operator 的 YAML 文件在您的 OpenShift Container Platform Web 控制台中打开。
在
trustedCertSecrets数组的secretName属性中指定您的 secret,它和您的 Cryostat 应用程序位于同一个命名空间中。在
trustedCertSecrets阵列中指定 secret 的示例-- apiVersion: operator.cryostat.io/v1beta1 kind: Cryostat metadata: name: cryostat-sample spec: trustedCertSecrets: - secretName: my-tls-secret --可选: 将
certificateKey属性值更改为应用程序的 X.509 证书文件名称。如果没有更改值,则certificateKey属性默认为tls.crt。更改
certificateKey属性的值示例-- apiVersion: operator.cryostat.io/v1beta1 kind: Cryostat metadata: name: cryostat-sample spec: trustedCertSecrets: - secretName: my-tls-secret certificateKey: ca.crt --点 Save 按钮。
Cryostat Operator 会自动重启带有配置的安全设置的 Cryostat 实例。
验证
在 CLI 中发出以下命令,确定所有应用程序 pod 是否都存在于与 Cryostat pod 相同的 OpenShift 集群命名空间中:
$ oc get pods- 登录到您的 Cryostat 实例的 web 控制台。
- 在 Cryostat 实例的 Dashboard 菜单中,从下拉列表中选择 Target JVM。
从 Cryostat Web 控制台的左侧面板中选择 Recordings。在 Authentication Required 对话框窗口中 输入您的 secret 的凭据,然后选择 Save,将凭证提供给目标 JVM。
注意如果所选目标启用了 JMX 连接的密码身份验证,在提示输入连接时必须为目标 JVM 提供 JMX 凭据。
Cryostat 通过经过身份验证的 JMX 连接连接到您的应用程序。现在,您可以使用 记录 和事件功能来监控应用程序的 JFR 数据。