實現效果:使用 helm 的 charts 安裝 prometheus,alertmanager 配置郵件告警。
wget
tar -c /usr/local -xzf go1.15.2.linux-amd64.tar.gz
# 設定環境變數
# vim /etc/profile
export path=$path:/usr/local/go/bin
go env -w goproxy=
# git colne
# 編譯
# cd helm
# make
# 編譯完成,移動資料夾
# mv helm /usr/local
# 設定 helm 環境變數
# vim /etc/profile
export path=$path:/usr/local/helm-master/bin
# 驗證
# helm help
# 官網安裝文件
# helm repo list
helm repo add stable
helm search repo prometheus
# 建立對應的k8s命名空間
kubectl create namespace monitoring
# 安裝
helm install prometheus-operator stable/prometheus-operator -n monitoring
# 檢視 pod
kubectl --namespace monitoring get pods -l "release=prometheus-operator"
# 檢視 helm 的資訊
helm list -n monitoring
# 使用ingress 對外暴露
xx.xx.xx.xx prometheus-operator.com alertmanager-operated.com prometheus-operator-grafana.com test.com
kubectl get secret alertmanager-prometheus-operator-alertmanager -n monitoring -o go-template='}' | base64 -d
這裡跟系統服務安裝的配置有點區別,多了 alertmanager: 和 config: 這兩項引數。
注意:
receivers:
- name: 'null'
這裡一定要配上,因為 receiver: 'email' 下面預設新增了 - name: null. 不然配置檔案報如下錯誤:
amtool check-config /etc/alertmanager/config/alertmanager.yaml
checking '/etc/alertmanager/config/alertmanager.yaml' failed: undefined receiver "null" used in route
amtool: error: failed to validate 1 file(s)
如果 alertmanager web 『alertmanager-operated.com』 端配置沒有重新整理,請進入容器使用
amtool check-config /etc/alertmanager/config/alertmanager.yaml 檢查配置檔案是否正確。
alertmanager:
config:
global:
resolve_timeout: 5m
smtp_smarthost: 'smtp.163.com:465'
smtp_from: '******@163.com'
smtp_auth_username: '******[email protected]'
# token 或者 授權碼,不是郵件登陸密碼
smtp_auth_password: '******x'
smtp_require_tls: false
route:
group_by: ['alertname']
group_wait: 10s
group_interval: 30s
repeat_interval: 10m
receiver: 'email'
receivers:
- name: 'null'
- name: 'email'
email_configs:
- to: '******x'
# inhibit_rules:
# - source_match:
# severity: 'critical'
# target_match:
# severity: 'warning'
# equal: ['alertname', 'dev', 'instance']
helm upgrade prometheus-operator stable/prometheus-operator --values=alertmanager.yaml -n monitoring
這時郵件就會收到報警郵件,下面更深入的了解,博主在學習中,敬請期待,thanks
helm部署和使用
helm是kubernetes的乙個包管理工具,用來簡化kubernetes應用的部署和管理。可以把helm比作centos的yum工具。helm有如下幾個基本概念 chart 是helm管理的安裝包,裡面包含需要部署的安裝包資源。可以把chart比作centos yum使用的rpm檔案。每個cha...
helm入門學習 二 helm 命令
開始使用helm,執行helm init命令 這將安裝tiller到你的執行kubernetes集群。它還將設定所有必要的本地配置。命令釋義 helm search搜尋chart helm fetchhelm install將chart上傳到kubernetes helm list 獲取chart的...
部署和體驗Helm 2 16 1版本
在kubernetes上進行容器化部署並非易事,docker 環境變數 儲存 網路等方面都會涉及到,這些複雜的操作可以被helm應用包管理工具實現,避免了全手工操作的,helm官網 本次實戰環境是kubernetes集群 1.15.3版本 由三颱centos7.7伺服器組成 部署完畢後,在體驗hel...