Openshift Pod监控之Metrics部署
一、环境依赖
-
master安装java ,并将keytool链接到系统命令目录
ln -s /usr/java/jdk1.8.0_92/bin/keytool /usr/local/bin/ -
ansible 主机安装passlib:
pip install passlib
yum install java-1.8.0-openjdk-headless -y
二、ansible配置参数解析
添加配置参数至 okd.hosts
openshift_metrics_install_metrics=True:安装监控
openshift_metrics_hawkular_hostname=hawkular-metrics.xxxxxx.com:指定访问域名
openshift_metrics_start_cluster=True:是否集群启动之后就开始数据收集
openshift_metrics_duration=1:数据保留多长时间
#openshift_metrics_cassandra_storage_type=dynamic:动态分配pvc,目前没有做
三、ansible执行安装
ansible-playbook -i okd.hosts openshift-ansible/playbooks/openshift-metrics/config.yml
四、验证
- 绑定本地hosts
- 访问https://hawkular-metrics.xxxxxx.com/hawkular/metrics如果有页面说明部署成功
- 使用命令查看
#oc project openshift-infra
#oc get pod
NAME READY STATUS RESTARTS AGE
hawkular-cassandra-1-gk84p 1/1 Running 0 21m
hawkular-metrics-schema-c4rwg 0/1 Completed 0 21m
hawkular-metrics-szwp7 1/1 Running 0 21m
heapster-m76jc 1/1 Running 0 20m
web-console采用pod部署,配置文件在config map里面,所以在部署完监控之后会自动更新web-console的config map添加一条 metricsPublicURL: https://hawkular-metrics.xxxxxx.com/hawkular/metrics
此时pod页面是还没有metrics选项的,有几种解决方法使更改的config map生效:
等大概5分钟左右生效;或者调整pod数量为0,再调成1;干掉pod也行
最后刷新页面。
效果图:
五、总结
通过Metrice可以直观的看到Pod的内存、CPU、网络使用量,对于观察Pod资源使用率还是很有帮助的。