この一連の記事:
章1:9は、簡単に、完全な爆発helm3インストールすると分析
:第II章9は、あなたが簡単に完全な爆発と分析 helm3 公共倉庫第3章:9あなた簡単に完全な爆発と分析 helm3 民間倉庫
第4章:9あなた簡単に完全な爆発helm3チャートで分析します
第V章:9あなた簡単に完全な爆発helm3リリースと分析します
第6章:9あなた簡単に完全な爆発と分析helm3 gitlab
第7章:9あなた簡単に完全な爆発helm3のnginx-進入して分析します
第8章:9あなた簡単に完全な爆発と分析helm3 gitlab NFS
章X:9あなた簡単に完全な爆発helm3のheapsterと分析します
ディレクトリ
1はじめに
2ダウンロードプロメテウス
3つのプロメテウスは、名前空間を作成します
4インストールプロメテウス
4.1展開apiVersionを変更
4.2追加daemonsetセレクタ
4.3配備セレクタを追加します
4.4修正進入apiVersion
プロメテウス検証4.5のインストール
5 NFSをインストールします
6 PVを作成します。
7プロメテウスを確認してください
8変更サービスの種類
9アクセスプロメテウス
1はじめに
K8S v1.16.3;この紙、ヘルムV3.0.0で。
2ダウンロードプロメテウス
舵プロメテウスを検索:
舵検索レポプロメテウス
ヘルムダウンロードエキスプロメテウス:
舵は、安定した/プロメテウスをフェッチ
タール-zxvfプロメテウス-5.4.0.tgz
3つのプロメテウスは、名前空間を作成します
NSプロメテウスを作成kubectl
4インストールプロメテウス
第一、第二は、名前空間で、プロメテウスヘルムリリース名で、3番目はプロメテウスローカル解凍したディレクトリです。
実権を握っインストールプロメテウス-nプロメテウスプロメテウス
4.1展開apiVersionを変更
インストール中にエラーがあった場合、次のとおりです。
エラー:認識できない「」:種のノーマッチ「の拡張機能/ v1beta1」「バージョンの」展開リリースのマニフェストからビルドkubernetesオブジェクトへのできません
ブラスト後にリラックスし、次のステートメントを実行します。
grepの-irl '伸長/ v1beta1' プロメテウス/ | xargsのSED -iさん#の拡張機能/ v1beta1#アプリケーション/ V1#G '
4.2追加daemonsetセレクタ
あなたは再び次のエラーをインストールする場合:
エラー:リリースのマニフェストからビルドkubernetesオブジェクトへのできない:エラーは、検証「」:欠落している必須フィールド:ValidationErrorを(DaemonSet.spec):エラーは、データの検証「io.k8s.api.apps.v1.DaemonSetSpecにセレクタを」
編集テンプレート/ノード-輸出-daemonset.yamlファイルには、次の行を追加します。
4.3展開セレクタを追加します:
インストールが再び次のエラーを報告した場合:
エラー:リリースのマニフェストからビルドkubernetesオブジェクトへのできない:エラーは、検証「」:欠落している必須フィールド:ValidationErrorを(Deployment.spec):エラーは、データの検証「io.k8s.api.apps.v1.DeploymentSpecにセレクタを」
編集テンプレート/のAlertManager-deployment.yamlファイルには、次の行を追加します。
編集テンプレート/ KUBE-状態メトリック-deployment.yamlファイルには、次の行を追加します。
编辑 templates/pushgateway-deployment.yaml 文件,添加如下内容:
编辑 templates/server-deployment.yaml 文件,添加如下内容:
4.4 修改 ingress apiVersion
再次安装如果报如下错:
Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Ingress" in version "apps/v1"
编辑 templates/alertmanager-ingress.yaml 文件,将 apps/v1 修改为 extenstions/v1beta1:
4.5 验证 prometheus 安装
如果执行安装后,显示如下内容:
执行如下操作语句,如果出现如下结果,则说明安装成功:
helm list -n prometheus
但安装成功,并不代表运行成功。还需要做进一步的配置。
5 安装 nfs
如何安装 nfs 服务器,请参考本人《轻松完爆 nfs 安装》,不用担心,简单到爆,让你分分钟轻松完爆。
mkdir -p /data/nfs/prometheus/2g
mkdir -p /data/nfs/prometheus/8g
chmod 777 -R /data/nfs/prometheus
systemctl restart nfs
6 创建 pv
安装完 nfs 后,查看 prometheus pvc:
kubectl get pvc -n prometheus
发现 pvc 处于 pending 状态,原因在于并没有可用的 pv 可以使用,需要手动创建 pv。
发现 pvc 的申请规格有 2 种,分别是 2Gi 和 8Gi。下面分别创建 pv 资源文件, 注意这里的 server 地址就是 nfs 服务器所在地址。
创建 pv-prometheus-2g.yaml 文件,内容如下:
apiVersion: v1
kind: PersistentVolume
metadata:
name: prometheus-2g
spec:
capacity:
storage: 2Gi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
nfs:
server: 10.110.101.106
path: /data/nfs/prometheus/2g
创建 pv-prometheus-8g.yaml 文件,内容如下:
apiVersion: v1
kind: PersistentVolume
metadata:
name: prometheus-8g
spec:
capacity:
storage: 8Gi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
nfs:
server: 10.110.101.106
path: /data/nfs/prometheus/8g
执行如下语句创建 pv:
kubectl apply -f pv-prometheus-2g.yaml
kubectl apply -f pv-prometheus-8g.yaml
查看 pvc 状态:
kubectl get pvc -n prometheus
自此,pvc 和 pv 已经关联。
7 验证 prometheus
查看 prometheus pod 运行状态,发现 prometheus-server 并没有启动成功:
kubectl get pod -n prometheus
查看容器日志状态发现报如下错误:
err="Error loading config couldn't load configuration (--config.file=/etc/config/prometheus.yml): parsing YAML file /etc/config/prometheus.yml: yaml: line 160: mapping values are not allowed in this context"
解决方案:
kubectl edit configmap -n prometheus prometheus-prometheus-server
定位 “target_label: kubernetes_pod_namealerting:”
修改为:
修改完保存退出,然后删除 prometheus-prometheus-server pod,让控制器再重新生成新的 pod,从而读取修改过的 configmap 信息。再次查看整个 pod 状态,发现全部启动成功:
8 修改 service type
将 prometheus service type 修改为 NodePort 类型:
kubectl patch svc -n prometheus prometheus-prometheus-server -p '{"spec": {"type": "NodePort"}}'
kubectl get svc -n prometheus
9 访问 prometheus
打开浏览器,访问 prometheus-server,注意端口正确,本人是 30347:
それ以来、helm3容易なインストールプロメテウスは、後にブラスト。