第 7 章 手动注入 sidecar
对于 Deployment 以外的控制器类型(如 StatefulSets、DaemonSet 等),您可以在规格中手动定义 Jaeger Agent sidecar。
以下片段显示了您可以在 Jaeger Agent sidecar 的 containers 部分中包含的手动定义:
StatefulSet 的 sidecar 定义示例
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: example-statefulset
namespace: example-ns
labels:
app: example-app
spec:
spec:
containers:
- name: example-app
image: acme/myapp:myversion
ports:
- containerPort: 8080
protocol: TCP
- name: jaeger-agent
image: registry.redhat.io/distributed-tracing/jaeger-agent-rhel7:<version>
# The agent version must match the operator version
imagePullPolicy: IfNotPresent
ports:
- containerPort: 5775
name: zk-compact-trft
protocol: UDP
- containerPort: 5778
name: config-rest
protocol: TCP
- containerPort: 6831
name: jg-compact-trft
protocol: UDP
- containerPort: 6832
name: jg-binary-trft
protocol: UDP
- containerPort: 14271
name: admin-http
protocol: TCP
args:
- --reporter.grpc.host-port=dns:///jaeger-collector-headless.example-ns:14250
- --reporter.type=grpc
然后,Jaeger Agent 可以通过 localhost 上的默认位置来访问。
7.1. 升级 Jaeger 复制链接链接已复制到粘贴板!
Operator Lifecycle Manager (OLM) 控制集群中 Operator 的安装、升级和基于角色的访问控制 (RBAC)。OLM 在 OpenShift Container Platform 中默认运行。OLM 可以查询可用的 Operator 以及已安装的 Operator 的升级。如需了解有关 OpenShift Container Platform 如何处理升级的更多信息,请参阅 Operator Lifecycle Manager 文档。
Jaeger Operator 使用的更新方法是将受管 Jaeger 实例升级到与 Operator 相关的版本。安装新版本的 Jaeger Operator 时,由 Operator 管理的所有 Jaeger 应用程序实例都会升级到 Operator 的版本。例如,如果安装了 1.10 版本(包括 Operator 和后端组件),Operator 升级到了 1.11 版本,那么 Operator 就会在 Operator 升级完成后扫描运行 Jaeger 实例并将其升级到 1.11。