|
1 | 1 | # OpenTelemetry Demo Lite Helm Chart |
2 | 2 |
|
3 | | -这个 Chart 是官方 [OpenTelemetry Demo](https://github.com/open-telemetry/opentelemetry-demo) 和 |
4 | | -[OpenTelemetry Demo Chart](https://github.com/open-telemetry/opentelemetry-helm-charts/tree/main/charts/opentelemetry-demo) |
5 | | -的扩展。 |
| 3 | +This chart is an extension of [OpenTelemetry Demo](https://github.com/open-telemetry/opentelemetry-demo) and |
| 4 | +[OpenTelemetry Demo Chart](https://github.com/open-telemetry/opentelemetry-helm-charts/tree/main/charts/opentelemetry-demo). |
6 | 5 |
|
7 | | -## 架构 |
| 6 | +## Architecture |
8 | 7 |
|
9 | | -这个 Chart 在保证购物主流程正常的情况下缩减了其他服务。以下是 OpenTelemetry Demo Lite 的架构图: |
| 8 | +This chart only retains those core services to ensure the shopping flow. Below is the current service diagram: |
10 | 9 |
|
11 | 10 | ```mermaid |
12 | 11 | graph TD |
@@ -77,68 +76,57 @@ classDef rust fill:#dea584,color:black; |
77 | 76 | classDef typescript fill:#e98516,color:black; |
78 | 77 | ``` |
79 | 78 |
|
80 | | -## 涉及的改动 |
| 79 | +## Changelog |
81 | 80 |
|
82 | | -我们对官方的 Demo 做了一定的改造,以下是具体的改造细节。 |
| 81 | +We have made certain modifications to the official demo, and the following are the specific details of the modifications. |
83 | 82 |
|
84 | | -### 重写的组件 |
| 83 | +### Re-implement components |
85 | 84 |
|
86 | 85 | #### [Adservice](https://github.com/openinsight-proj/opentelemetry-demo/tree/daocloud/src/adservice-v2#note-the-overall-helm-chart) |
87 | 86 |
|
88 | | -这个组件在重写后增加了以下功能: |
89 | | -- 服务接入 nacos |
90 | | -- 服务接入 sentinel |
91 | | -- 支持 grpcurl 请求 |
92 | | -- [暴露 Prometheus 指标](https://github.com/openinsight-proj/adservice#metrics) |
93 | | -- [延时模拟](https://github.com/openinsight-proj/adservice#mock-latency) |
94 | | -- [50% 的请求错误率](https://github.com/openinsight-proj/adservice#mock-error) |
95 | | -- 从 Dataservice 获取 Ad 数据 |
| 87 | +- integrate nacos |
| 88 | +- integrate sentinel |
| 89 | +- support grpcurl |
| 90 | +- [expose Prometheus metrics](https://github.com/openinsight-proj/adservice#metrics) |
| 91 | +- [mock latency](https://github.com/openinsight-proj/adservice#mock-latency) |
| 92 | +- [50% error rate](https://github.com/openinsight-proj/adservice#mock-error) |
| 93 | +- call Dataservice to get Ad data |
96 | 94 |
|
97 | | -#### [checkoutservice](https://github.com/openinsight-proj/opentelemetry-demo/tree/daocloud/src/checkoutservice-v2#checkout-service) |
| 95 | +#### [Checkoutservice](https://github.com/openinsight-proj/opentelemetry-demo/tree/daocloud/src/checkoutservice-v2#checkout-service) |
98 | 96 |
|
99 | | -具体的改动: |
| 97 | +- doesn't depend Emailservice |
| 98 | +- doesn't depend Currencyservice |
| 99 | +- doesn't depend Kafka |
100 | 100 |
|
101 | | -- 不再调用 Emailservice |
102 | | -- 不再调用 Currencyservice |
103 | | -- 不再依赖 Kafka |
104 | | - |
105 | | -### 增加的组件 |
| 101 | +### Added components |
106 | 102 |
|
107 | 103 | #### [Dataservice](https://github.com/openinsight-proj/opentelemetry-demo/tree/daocloud/src/dataservice) |
108 | 104 |
|
109 | | -这个组件只被 Adservice 调用,在收到请求后,它会去 Mysql 中获取相关的数据并返回给 Adservice。 |
| 105 | +This service only used by Adservice. It will accept Adservice's http request then response Ad data from mysql. |
110 | 106 |
|
111 | | -### 官方 chart 参数改造 |
| 107 | +### Official chart re-configuration |
112 | 108 |
|
113 | | -1. 我们关闭了所有非业务组件,比如: Opentelemetry collector, Prometheus, Jaeger, Grafana等,在我们的版本中不需要用它们展示数据。 |
114 | | - 业务的观测性数据传输路径变成了:`Components --> Insight-agent OTel collector`。 |
| 109 | +1. Close all none business services, such as Opentelemetry collector, Prometheus, Jaeger, Grafana, |
| 110 | + all service's telemetry data will fellow this data flow: `Components --> Insight-agent OTel collector`。 |
115 | 111 |
|
116 | | -2. 支持通过 Redis operator 拉起 Redis 实例(保证 Redis operator 已经安装并正常工作)。 |
117 | | - 默认情况下使用官方的方式创建 Redis(`--set .global.middleware.redis.deployBy=builtin`), |
118 | | - 你可以通过 `--set .global.middleware.redis.deployBy=redisCR` 下发 Redis CR, 最后由 Redis operator 拉起 Redis 实例。 |
| 112 | +2. Support deploying Redis instance from a Redis operator(Make sure Redis operator already works). |
119 | 113 |
|
120 | | -## 安装 |
| 114 | +## Install |
121 | 115 |
|
122 | | -_前提条件:请保证 Insight agent 已经安装并就绪(在 `--set .global.middleware.redis.deployBy=redisCR` 时请求保证 Redis operator |
123 | | -已经安装并正常工作)_ |
| 116 | +_Note:make sure Insight agent already works(If`--set .global.middleware.redis.deployBy=redisCR`, make sure Redis |
| 117 | +operator already works)_ |
124 | 118 |
|
125 | 119 | ```shell |
126 | 120 | helm repo add open-insight https://openinsight-proj.github.io/openinsight-helm-charts |
127 | 121 |
|
128 | 122 | helm install webstore-demo open-insight/opentelemetry-demo-lite -n webstore-demo --create-namespace |
129 | 123 | ``` |
130 | 124 |
|
131 | | -## 常见参数 |
132 | | - |
133 | | -| 参数位置 | 参数说明 | |
134 | | -| -------- |-------------------------------------------------------------------------------------------------------------------------------------------------| |
135 | | -|adservice.enabled| 为 true 时部署adservice | |
136 | | -|microservices.nacos.enabled| 改为 true,将会额外部署两个服务:dataservice, mysql, dataservice 会从 mysql 中获取广告数据,adservice 会向 dataservice 请求广告数据。此外,adservice, dataservice两个服务会被注册到nacos注册中心 | |
137 | | -|microservices.nacos.registryAddr| 请修改为集群内nacos的可解析的域名,注意要带namespace | |
138 | | - |
139 | | -更多的参数配置可以将 `values.schema.json` 文件中的内容复制到[ json schema editor ](https://form.lljj.me/#/demo?ui=VueElementForm&type=Test) |
140 | | -进行实时配置编辑,用[ json-to-yaml ](https://codebeautify.org/json-to-yaml)将编辑的j结果转成 yaml。 |
| 125 | +## Common chart param |
141 | 126 |
|
| 127 | +Please use `values.schema.json` to get to know how to control the deployment behavior of this chart(use |
| 128 | +[json schema editor](https://form.lljj.me/#/demo?ui=VueElementForm&type=Test) to parse the schema and use |
| 129 | +[json-to-yaml](https://codebeautify.org/json-to-yaml) to generate values.yaml). |
142 | 130 |
|
143 | 131 |
|
144 | 132 |
|
0 commit comments