|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
安装 SUSE® Observability
在开始之前
|
安装时的额外说明:
|
在开始安装SUSE® Observability之前:
helm repo add suse-observability https://charts.rancher.com/server-charts/prime/suse-observability
helm repo update
安装 SUSE® Observability
|
对于没有互联网访问的环境,也称为隔离的环境,请首先遵循这些额外说明。 此外,请确保在每个步骤中遵循隔离的安装说明(如果存在)。 |
创建名称空间
首先创建您要安装 SUSE® Observability 的名称空间,并在该名称空间中部署密钥。在我们的演练中,我们将使用名称空间 suse-observability:
kubectl create namespace suse-observability
创建 values.yaml 配置文件
values.yaml 文件包含部署 SUSE® Observability 所需的所有配置,包括您的许可证密钥、基础 URL、管理员密码和大小配置文件。
|
*在继续之前:*确保您拥有最新版本的 Helm 图表和 |
-
推荐的方法
-
遗留方法(已弃用)
|
从版本 |
创建一个具有 global.suseObservability 配置结构的 values.yaml 文件:
global:
# Optional: Override image registry (defaults to registry.rancher.com)
# Only needed for air-gapped environments or custom registries
# imageRegistry: "your-private-registry.example.com"
# Optional: Override storage class (uses cluster default if not set)
# storageClass: "your-storage-class"
suseObservability:
# Required: Your {stackstate-product-name} license key
license: "YOUR-LICENSE-KEY"
# Required: Base URL for {stackstate-product-name}
# Use http://localhost:8080 if ingress is not configured yet
baseUrl: "https://observability.example.com"
# Required: Sizing profile
# Available: trial, 10-nonha, 20-nonha, 50-nonha, 100-nonha,
# 150-ha, 250-ha, 500-ha, 4000-ha
sizing:
profile: "150-ha"
# Required: Plain text admin password
adminPassword: "your-password"
# Instead of adminPassword you can provide a bcrypt hashed password with adminPasswordBcrypt
# Generate with: htpasswd -bnBC 10 "" "your-password" | tr -d ':\n'
# adminPasswordBcrypt: "$2a$10$..."
# Optional: Receiver API key (auto-generated if not provided)
# receiverApiKey: "your-receiver-api-key"
# Optional: Pull secret for private registry
# pullSecret:
# username: "registry-user"
# password: "registry-pass"
有关更多配置选项,包括亲和性设置,请参见 配置 Kubernetes 亲和性。
|
此方法已弃用。对于新安装,请使用上述推荐的方法。对于使用此方法的现有安装,请参见 迁移指南 以过渡到新的配置格式。 |
您可以通过运行单独的 Helm Chart 来生成 SUSE® Observability 配置文件。这是 suse-observability/suse-observability-values 图表:
export VALUES_DIR=.
helm template \
--set license='<your license>' \
--set baseUrl='<suse-observability-base-url>' \
--set sizing.profile='<sizing.profile>' \
suse-observability-values \
suse-observability/suse-observability-values --output-dir $VALUES_DIR
此命令生成文件 $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml、$VALUES_DIR/suse-observability-values/templates/sizing_values.yaml 和 $VALUES_DIR/suse-observability-values/templates/affinity_values.yaml。
|
SUSE® Observability 管理员密码将由上述命令自动生成,并作为注释输出到生成的 |
可以传递给此图表的值包括:
| 配置 | 值 | 说明 |
|---|---|---|
基本配置生成 |
|
开启或关闭 |
接收者 API 密钥 |
|
SUSE® Observability 用于从代理接收数据的 API 密钥。这是一个应保持私密的密钥。如果您省略此项,将为您生成一个随机密钥。 |
基础 URL |
|
此 |
用户名和密码** |
|
SUSE® Observability 用于拉取镜像的用户名和密码。对于隔离环境,这需要是本地容器注册表的用户名和密码。 |
许可证密钥 |
|
SUSE® Observability 许可证密钥。 |
默认密码 |
|
默认用户 ( |
映像注册表 |
|
托管 SUSE® Observability 镜像的注册表。如果未提供,默认值将为 'registry.rancher.com'。仅在隔离环境或自定义注册表中需要。 |
拉取密钥用户名 |
|
用于从托管 SUSE® Observability 镜像的 Docker 注册表拉取镜像的用户名。仅在自定义注册表中需要。 |
拉取密钥密码 |
|
用于从托管 SUSE® Observability 镜像的 Docker 注册表拉取镜像的密码。仅在自定义注册表中需要。 |
大小生成 |
|
开启或关闭 |
大小配置文件 |
|
OneOf 试用,10-nonha,20-nonha,50-nonha,100-nonha,150-ha,250-ha,500-ha。根据这些大小配置文件,您可以生成包含默认大小的 |
Pod 反亲和性 |
|
强制同一数据服务的副本调度到不同的 Kubernetes 节点。仅适用于 |
|
安全存储生成的 |
|
SUSE® Observability 值图生成亲和性配置,您可以与主 SUSE® Observability 图表一起使用,以控制 Pod 调度行为。有关更多信息,请参阅 配置 Kubernetes 亲和性 文档。 |
配置存储类(可选)
如果未指定,SUSE® Observability 将使用集群的默认存储类。您可以通过在您的 values.yaml 文件中设置 global.storageClass 来选择性地覆盖此设置。
-
推荐的方法
-
遗留方法(已弃用)
如果您需要使用特定的存储类,请将其添加到您的 values.yaml 文件中的 global.storageClass 下:
global:
storageClass: "your-storage-class" # e.g., "local-path" for Rancher local-path provisioner
suseObservability:
# ... other configuration
编辑文件 $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml 以添加 "storageClass" 配置:
# Source suse-observability-values/templates/baseConfig_values.yaml
global:
storageClass: "your-storage-class" # Optional: override default storage class
使用 Helm 部署 SUSE® Observability
推荐的 SUSE® Observability 部署是一个可用于生产用途的高可用性设置,运行多个冗余服务。如果需要,也可以在非冗余设置中运行 SUSE® Observability,其中每个服务只有一个副本。此设置仅建议用于测试环境。
对于隔离的环境,请遵循隔离的安装说明。
-
推荐的方法
-
推荐方法(隔离的环境)
-
遗留方法(已弃用)
-
传统方法(隔离的环境)
在 Kubernetes 上部署 SUSE® Observability:
-
在您部署之前:
-
使用以下命令将最新的 SUSE® Observability 版本部署到
suse-observability名称空间:
helm upgrade \
--install \
--namespace suse-observability \
--values values.yaml \
suse-observability \
suse-observability/suse-observability
或者,直接使用 --set 标志而不使用值文件进行部署:
helm upgrade \
--install \
--namespace suse-observability \
--set global.suseObservability.license="YOUR-LICENSE-KEY" \
--set global.suseObservability.baseUrl="https://observability.example.com" \
--set global.suseObservability.sizing.profile="150-ha" \
--set global.suseObservability.adminPassword='$2a$10$...' \
suse-observability \
suse-observability/suse-observability
在 Kubernetes 上以隔离的设置部署 SUSE® Observability:
-
在您部署之前:
-
使用以下命令将最新的 SUSE® Observability 版本部署到
suse-observability名称空间:
helm upgrade \
--install \
--namespace suse-observability \
--values local-docker-registry.yaml \
--values values.yaml \
suse-observability \
suse-observability/suse-observability
|
此方法已弃用。对于新安装,请使用上述推荐的方法。对于使用此方法的现有安装,请参见 迁移指南 以过渡到新的配置格式。 |
在 Kubernetes 上部署 SUSE® Observability:
-
在您部署之前:
-
使用以下命令将最新的 SUSE® Observability 版本部署到
suse-observability名称空间:
helm upgrade \
--install \
--namespace suse-observability \
--values $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml \
--values $VALUES_DIR/suse-observability-values/templates/sizing_values.yaml \
--values $VALUES_DIR/suse-observability-values/templates/affinity_values.yaml \
suse-observability \
suse-observability/suse-observability
|
此方法已弃用。对于新安装,请使用上述推荐的方法。对于使用此方法的现有安装,请参见 迁移指南 以过渡到新的配置格式。 |
在 Kubernetes 上以隔离的设置部署 SUSE® Observability:
-
在您部署之前:
-
使用以下命令将最新的 SUSE® Observability 版本部署到
suse-observability名称空间:
helm upgrade \
--install \
--namespace suse-observability \
--values local-docker-registry.yaml \
--values $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml \
--values $VALUES_DIR/suse-observability-values/templates/sizing_values.yaml \
--values $VALUES_DIR/suse-observability-values/templates/affinity_values.yaml \
suse-observability \
suse-observability-A.B.C.tgz
安装后,SUSE® Observability 发布应在 SUSE® Observability 名称空间中列出,所有 pod 应该正在运行:
# Check the release is listed
helm list --namespace suse-observability
# Check pods are running
# It may take some time for all pods to be installed or available
kubectl get pods --namespace suse-observability
访问 SUSE® Observability 用户界面
在 SUSE® Observability 部署后,您可以检查所有 pod 是否正常运行:
kubectl get pods --namespace suse-observability
当所有的 pod 启动后,您可以启用端口转发:
kubectl port-forward service/<helm-release-name>-suse-observability-router 8080:8080 --namespace suse-observability
对于入口配置,创建一个 ingress_values.yaml 文件并添加以下代码。
|
请记得为 TLS 配置设置一个密钥。有关如何做到这一点的详细信息,请查阅 kubectl 文档。 |
ingress:
enabled: true
class: ""
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "50m"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
#if external dns (cloudflare and similars) configure:
#external-dns.alpha.kubernetes.io/target: <INGRESS_FQDN>
#external-dns.alpha.kubernetes.io/ttl: "60"
#end if
hosts:
- host: <SUSE_OBSERVABILITY_HOST>
tls:
- hosts:
- <SUSE_OBSERVABILITY_HOST>
secretName: suse-private-ai-tls
existingSecret: suse-private-ai-tls
# Set up your secrets in whichever way feels fit. Check k8s docs for details: https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/
继续运行升级以应用入口配置:
-
升级
-
隔离的升级
helm upgrade --namespace suse-observability --reuse-values --values ingress_values.yaml suse-observability suse-observability/suse-observability
helm upgrade --namespace suse-observability --reuse-values --values suse-observability-values/templates/ingress_values.yaml suse-observability suse-observability-A.B.C.tgz
|
如果您不使用外部 DNS,请将以下内容添加到您的本地机器 /etc/hosts: <CLUSTER_IP> <SUSE_OBSERVABILITY_HOST>。 |
SUSE® Observability 现在可以在您的浏览器中访问 https://localhost:8080。使用用户名 admin 和 baseConfig_values.yaml 文件中提供的默认密码登录。
后续步骤是