$ oc -n openshift-operators get subscriptions
要安装Red Hat OpenShift Service Mesh,首先在OpenShift Container Platform上安装Red Hat OpenShift Service Mesh Operator和任何可选的操作符。然后创建一个ServiceMeshControlPlane
资源来部署控制平面。
此基本安装基于默认的OpenShift设置进行配置,并非设计用于生产环境。 使用此默认安装来验证您的安装,然后根据您的特定环境配置您的服务网格。 |
拥有cluster-admin
角色的帐户。如果您使用Red Hat OpenShift Dedicated,则必须拥有具有dedicated-admin
角色的帐户。
以下步骤说明如何在OpenShift Container Platform上安装Red Hat OpenShift Service Mesh的基本实例。
从Red Hat OpenShift Service Mesh 2.5开始,Red Hat OpenShift分布式跟踪平台(Jaeger)和OpenShift Elasticsearch Operator已弃用,并将在未来的版本中删除。Red Hat将在当前版本生命周期内为这些功能提供错误修复和支持,但此功能将不再接收增强功能,并将被删除。作为Red Hat OpenShift分布式跟踪平台(Jaeger)的替代方案,您可以改用Red Hat OpenShift分布式跟踪平台(Tempo)。 |
Red Hat OpenShift Service Mesh需要使用Red Hat OpenShift Service Mesh Operator,它允许您连接、保护、控制和观察构成应用程序的微服务。您还可以安装其他操作符来增强您的服务网格体验。
不要安装社区版本的Operator。社区Operator不受支持。 |
需要以下Operator
允许您连接、保护、控制和观察构成应用程序的微服务。它还定义和监控管理服务网格组件的部署、更新和删除的ServiceMeshControlPlane
资源。它基于开源Istio项目。
以下Operator是可选的
为您的服务网格提供可观察性。您可以在单个控制台中查看配置、监控流量和分析跟踪。它基于开源Kiali项目。
提供分布式跟踪以监控和排除复杂分布式系统中事务的故障。它基于开源Grafana Tempo项目。
以下可选操作符已弃用
从 Red Hat OpenShift Service Mesh 2.5 版本开始,Red Hat OpenShift 分布式追踪平台 (Jaeger) 和 OpenShift Elasticsearch Operator 已弃用,将在未来版本中移除。Red Hat 将在当前版本生命周期内为这些功能提供错误修复和支持,但这些功能将不再获得增强,并将被移除。作为 Red Hat OpenShift 分布式追踪平台 (Jaeger) 的替代方案,您可以使用 Red Hat OpenShift 分布式追踪平台 (Tempo)。 |
提供分布式追踪功能,用于监控和排查复杂分布式系统中的事务。它基于开源 Jaeger 项目。
为分布式追踪平台 (Jaeger) 的追踪和日志记录提供数据库存储。它基于开源 Elasticsearch 项目。
要安装 Red Hat OpenShift Service Mesh,必须安装 Red Hat OpenShift Service Mesh Operator。对于要安装的每个附加操作符,重复此过程。
附加操作符包括:
Red Hat提供的Kiali Operator
Tempo Operator
已弃用的附加操作符包括:
从Red Hat OpenShift Service Mesh 2.5开始,Red Hat OpenShift分布式跟踪平台(Jaeger)和OpenShift Elasticsearch Operator已弃用,并将在未来的版本中删除。Red Hat将在当前版本生命周期内为这些功能提供错误修复和支持,但此功能将不再接收增强功能,并将被删除。作为Red Hat OpenShift分布式跟踪平台(Jaeger)的替代方案,您可以改用Red Hat OpenShift分布式跟踪平台(Tempo)。 |
Red Hat OpenShift 分布式追踪平台 (Jaeger)
OpenShift Elasticsearch Operator
如果您已将 OpenShift Elasticsearch Operator 作为 OpenShift Logging 的一部分安装,则无需再次安装 OpenShift Elasticsearch Operator。Red Hat OpenShift 分布式追踪平台 (Jaeger) Operator 将使用已安装的 OpenShift Elasticsearch Operator 创建 Elasticsearch 实例。 |
以具有 cluster-admin
角色的用户身份登录到 OpenShift Container Platform Web 控制台。
在 OpenShift Container Platform Web 控制台中,单击操作符 → OperatorHub。
在筛选框中输入操作符的名称,然后选择 Red Hat 版本的操作符。不支持社区版本的操作符。
单击安装。
在每个操作符的安装操作符页面上,接受默认设置。
单击安装。等待操作符安装完成后,再对要安装的下一个操作符重复这些步骤。
Red Hat OpenShift Service Mesh Operator 安装在 openshift-operators
命名空间中,并可用于集群中的所有命名空间。
Red Hat 提供的 Kiali Operator 安装在 openshift-operators
命名空间中,并可用于集群中的所有命名空间。
Tempo Operator 安装在 openshift-tempo-operator
命名空间中,并可用于集群中的所有命名空间。
Red Hat OpenShift 分布式追踪平台 (Jaeger) 安装在 openshift-distributed-tracing
命名空间中,并可用于集群中的所有命名空间。
从 Red Hat OpenShift Service Mesh 2.5 版本开始,Red Hat OpenShift 分布式追踪平台 (Jaeger) 已弃用,将在未来版本中移除。Red Hat 将在当前版本生命周期内为该功能提供错误修复和支持,但该功能将不再获得增强,并将被移除。作为 Red Hat OpenShift 分布式追踪平台 (Jaeger) 的替代方案,您可以使用 Red Hat OpenShift 分布式追踪平台 (Tempo)。 |
OpenShift Elasticsearch Operator 安装在 openshift-operators-redhat
命名空间中,并可用于集群中的所有命名空间。
从 Red Hat OpenShift Service Mesh 2.5 版本开始,OpenShift Elasticsearch Operator 已弃用,将在未来版本中移除。Red Hat 将在当前版本生命周期内为该功能提供错误修复和支持,但该功能将不再获得增强,并将被移除。 |
安装所有四个操作符后,单击操作符 → 已安装的操作符以验证您的操作符是否已安装。
仅当 Service Mesh Operator 在基础架构节点上运行时,才应执行此任务。
如果操作符将在工作节点上运行,请跳过此任务。
必须安装 Service Mesh Operator。
部署包含的节点之一必须是基础架构节点。有关更多信息,请参见“创建基础架构机器集”。
列出在命名空间中安装的操作符
$ oc -n openshift-operators get subscriptions
编辑 Service Mesh Operator 的 Subscription
资源以指定操作符应运行的位置
$ oc -n openshift-operators edit subscription <name> (1)
1 | <name> 代表 Subscription 资源的名称。Subscription 资源的默认名称为 servicemeshoperator 。 |
将 nodeSelector
和 tolerations
添加到 Subscription
资源中的 spec.config
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
labels:
operators.coreos.com/servicemeshoperator.openshift-operators: ""
name: servicemeshoperator
namespace: openshift-operators
# ...
spec:
config:
nodeSelector: (1)
node-role.kubernetes.io/infra: ""
tolerations: (2)
- effect: NoSchedule
key: node-role.kubernetes.io/infra
value: reserved
- effect: NoExecute
key: node-role.kubernetes.io/infra
value: reserved
1 | 确保操作符 pod 仅调度到基础架构节点上。 |
2 | 确保基础架构节点接受该 pod。 |
验证与 Operator pod 关联的节点是否是基础架构节点
$ oc -n openshift-operators get po -l name=istio-operator -owide
在您部署 Service Mesh 控制平面之前,Red Hat OpenShift Service Mesh Operator 不会创建 Service Mesh 自定义资源定义 (CRD)。您可以使用 ServiceMeshControlPlane
资源来安装和配置 Service Mesh 组件。有关更多信息,请参见 创建 ServiceMeshControlPlane。