
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!Sky Walking logo
、用户界面(UI)及相关组件的自动化部署与配置管理。
4.1.1 必填参数
部署时必须显式设置以下参数:
| 参数名 | 描述 | 示例值 |
|---|---|---|
oap.image.tag | OAP 镜像版本标签 | 10.0.0 |
oap.storageType | OAP 存储类型 | elasticsearch、postgresql、banyandb 等 |
ui.image.tag | UI 镜像版本标签 | 10.0.0 |
4.1.2 参数设置方式
可通过以下方式设置参数:
--set oap.image.tag=10.0.0 --set oap.storageType=elasticsearchvalues.yaml 或自定义文件(如 values-my-es.yaml),通过 -f <filename> 或 --values=<filename> 指定4.2.1 数据库连接配置
对接现有数据库时,需在配置文件中设置以下参数(以 Elasticsearch 为例):
yamlelasticsearch: enabled: false # 禁用内置 Elasticsearch config: # 外部 Elasticsearch 配置 port: http: 9200 host: elasticsearch # K8s 服务名或外部主机地址 user: "admin" # [可选] 认证用户名 password: "password" # [可选] 认证密码
PostgreSQL、BanyanDB 等其他存储类型配置方式类似。
4.2.2 环境变量配置
OAP 支持通过环境变量配置,可通过 --set oap.env.<ENV_NAME>=<ENV_VALUE> 设置,例如:
shell--set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh
环境变量优先级高于配置文件覆盖项,详细环境变量列表参见 https://github.com/apache/skywalking/blob/master/docs/en/setup/backend/configuration-vocabulary.md%E3%80%82
设置环境变量简化后续操作:
shellexport SKYWALKING_RELEASE_VERSION=4.3.0 # 根据需求修改版本 export SKYWALKING_RELEASE_NAME=skywalking # 发布名称(按需修改) export SKYWALKING_RELEASE_NAMESPACE=default # 部署命名空间(按需修改)
5.2.1 使用 Docker Helm 仓库(>= 4.3.0)
shellhelm install "${SKYWALKING_RELEASE_NAME}" \ oci://registry-1.docker.io/apache/skywalking-helm \ --version "${SKYWALKING_RELEASE_VERSION}" \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
5.2.2 使用 Apache Jfrog Helm 仓库(<= 4.3.0)
shellexport REPO=skywalking helm repo add ${REPO} https://apache.jfrog.io/artifactory/skywalking-helm helm repo update helm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking \ --version "${SKYWALKING_RELEASE_VERSION}" \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
5.3.1 基础开发版本
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm repo add elastic https://helm.elastic.co helm dep up ${REPO}/skywalking helm install "${SKYWALKING_RELEASE_NAME}" \ ${REPO}/skywalking \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
5.3.2 使用 BanyanDB 作为存储
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm install "${SKYWALKING_RELEASE_NAME}" \ ${REPO}/skywalking \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=banyandb \ --set ui.image.tag=10.0.0 \ --set elasticsearch.enabled=false \ --set banyandb.enabled=true
5.4.1 部署 SkyWalking 10.0.0
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
5.4.2 使用现有数据库部署
通过自定义配置文件部署(以 values-my-es.yaml 为例):
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ -f ./skywalking/values-my-es.yaml
5.5.1 SWCK Adapter(master 分支)
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm -n skywalking-custom-metrics-system install adapter ${REPO}/adapter --create-namespace
5.5.2 SWCK Operator(master 分支)
shellkubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.9.1/cert-manager.yaml
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm -n skywalking-swck-system install operator ${REPO}/operator
使用 ghcr.io 仓库的开发快照版本(需替换 commit hash):
shellhelm -n istio-system install skywalking \ oci://ghcr.io/apache/skywalking-helm/skywalking-helm \ --version "0.0.0-b670c41d94a82ddefcf466d54bab5c492d88d772" \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
启用 Satellite 作为数据网关:
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set satellite.enabled=true \ --set satellite.image.tag=v0.4.0
部署后,需将 agent 或 Istio 的数据上报地址从 OAP 替换为 Satellite 地址(如 skywalking-satellite.istio-system:11800)。
通过 oap.config 和 satellite.config 字段覆盖 OAP 或 Satellite 的配置文件,示例:
yamloap: config: application.yml: | sw: storage: elasticsearch: nameSpace: skywalking-es # 自定义 ES 命名空间 satellite: config: satellite.yml: | receiver: gRPC: port: 11800 # 自定义 gRPC 接收端口
通过 --set oap.env.<ENV_NAME>=<ENV_VALUE> 设置 OAP 环境变量,例如:
shell--set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh
环境变量优先级高于覆盖的配置文件。
Kubernetes Job 默认不可重运行,如需重新执行 OAP 初始化 Job,需删除现有 Job 并重新创建:
shell# 导出 Job 清单 kubectl get job -n "${SKYWALKING_RELEASE_NAMESPACE}" -l release=$SKYWALKING_RELEASE_NAME -o yaml > oap-init.job.yaml # 清理不需要的字段(可使用 yq 工具或手动编辑) yq 'del(.items[0].metadata.creationTimestamp,.items[0].metadata.resourceVersion,.items[0].metadata.uid,.items[0].status,.items[0].spec.template.metadata.labels."batch.kubernetes.io/controller-uid",.items[0].spec.template.metadata.labels."controller-uid",.items[0].spec.selector.matchLabels."batch.kubernetes.io/controller-uid")' oap-init.job.yaml > oap-init.job.trimmed.yaml # 检查清理后的清单 cat oap-init.job.trimmed.yaml # 删除原 Job 并创建新 Job kubectl delete job -n "${SKYWALKING_RELEASE_NAMESPACE}" -l release=$SKYWALKING_RELEASE_NAME kubectl -n "${SKYWALKING_RELEASE_NAMESPACE}" apply -f oap-init.job.trimmed.yaml
dev-subscribe@skywalking.apache.org 订阅)dev@skywalking.apache.org 请求加入(中文用户请在邮件主题注明 [CN] Request to join SkyWalking slack)本项目采用 Apache 2.0 许可协议。
以下是 apache/skywalking-helm 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务