# kube-prometheus stack 定制注意事项
## kube-state-metrics 升级(v1.9.7->v2.x)
### kube-state-metrics v2.0 [Breaking Changes](https://kubernetes.io/blog/2021/04/13/kube-state-metrics-v-2-0/)
#### Flag changes:
- --metric-blacklist and --metric-whitelist were renamed to --metric-denylist and --metric-allowlist
- --metric-labels-allowlist allows you to specify a list of Kubernetes labels that get turned into the dimensions of the kube_<resource-name>_labels metrics. By default, the metric contains only name and namespace labels.
- v2: change metrics port to 8080, telemetry port to 8081 #1005
- Add --use-apiserver-cache flag to set resourceVersion=0 for ListWatch requests #1548 (v2.2.0)
- Filter annotations in metrics based on --metric-annotations-allowlist instead of --metric-labels-allowlist for CronJob, Daemonset, HPA and Ingress resources #1580 @midnw (v2.2.1)
#### Metrcis changes:
- All metrics with a prefix of kube_hpa_* were renamed to kube_horizontalpodautoscaler_*.
- Metric labels that relate to Kubernetes were converted to snake_case.
- [All deprecated stable metrics were removed](https://github.com/kubernetes/kube-state-metrics/tree/release-1.9/docs#metrics-deprecation)
- Added metrics:
- Added labels:
#### Image changes:
- quay.io/coreos/kube-state-metrics images will no longer be updated. k8s.gcr.io/kube-state-metrics/kube-state-metrics is the new canonical location.
- Multi Arch image supported
#### Others
- The helm chart that is part of the kubernetes/kube-state-metrics repository is deprecated. https://github.com/prometheus-community/helm-charts will be its new location.
- Refer to [Change Logs](https://github.com/kubernetes/kube-state-metrics/blob/master/CHANGELOG.md) for more details
## node_exporter 升级(v0.18.1->v1.2.2)
### major changes:
- Refer to [Change Logs](https://github.com/prometheus/node_exporter/blob/master/CHANGELOG.md) for more details
- Filesystem collector flags have been renamed. --collector.filesystem.ignored-mount-points is now --collector.filesystem.mount-points-exclude and --collector.filesystem.ignored-fs-types is now --collector.filesystem.fs-types-exclude. The old flags will be removed in 2.x.
- NOTE: We have improved some of the flag naming conventions (PR #1743). The old names are deprecated and will be removed in 2.0. They will continue to work for backwards compatibility. (v1.1.0)
## kube-prometheus 升级(v0.5->v0.8+)
### Major changes:
- [Migration guide from release-0.7 and earlier](https://github.com/prometheus-operator/kube-prometheus/blob/main/docs/migration-guide.md)
## arm 镜像 build 方法
- [arm 镜像列表](https://cwiki.yunify.com/pages/viewpage.action?pageId=63359279)
- [kube-state-metrics](https://github.com/kubesphere/kube-state-metrics/tree/release-1.9.6/build/arm64)
- Use method in [kube-rbac-proxy](https://github.com/kubesphere/kube-rbac-proxy/tree/ks-v0.8.0/build) to build v1.9.x
Use arm image in k8s.gcr.io/kube-state-metrics/kube-state-metrics directly for v2.x+
- [prometheus-operator/prometheus-config-reloader](https://github.com/kubesphere/prometheus-operator/tree/ks-v3.0/build/arm64) 这是 3.0 的 arm 镜像 build 方法,3.1 的 需要修改相应 branch 及 tag
- [kube-rbac-proxy](https://github.com/kubesphere/kube-rbac-proxy/tree/ks-v0.8.0/build)