OpenShift中如何通过脚本获取Alertmanager的告警数据
发表于|更新于
|浏览量:
一、为什么需要通过脚本获取告警信息
二、Alertmanager的告警信息
三、amtool工具获取告警信息
1 | # oc exec -it alertmanager-main-0 -c alertmanager -n openshift-monitoring -- amtool alert query 'severity=critical' --alertmanager.url http://localhost:9093 |
-o:默认值为simple,输出格式,还可以是extended,json
四、amtool更多功能
文章作者: Michael Pan
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Michael Blog!
相关推荐
2020-05-20
Openshift3-9上部署Prometheus+Grafana实现集群的监控与告警
Openshift从3.9版本开始官方支持Prometheus和Grafana 从官方部署脚本 openshift-ansible 中的目录playbooks下的列表 中可以看到相关部署脚本openshift-prometheusopenshift-grafana 既然官方支持,部署安装就十分简单了。 部署安装Prometheus /etc/ansible/hosts添加配置 12[OSEv3:vars]openshift_hosted_prometheus_deploy=true 执行安装 1ansible-playbook playbooks/openshift-prometheus/config.yml 打开宿主机的9100端口(kubernetes-nodes-exporter) 1ansible all -m shell -a 'iptables -A OS_FIREWALL_ALLOW -p tcp -m state --state NEW -m tcp --dport 9100 -j ACCEPT; servic...
2020-05-20
OpenShift使用KeepAlived+LVS实现外部负载均衡器
OpenShift集群资源列表 主机名 类型 IP 相关节点IP master0 master 192.168.0.2 master1 master 192.168.0.3 master2 master 192.168.0.4 infra0 infra 192.168.0.5 infra1 infra 192.168.0.6 vip地址分配 master-vip vip 192.168.0.250 infra-vip vip 192.168.0.251 部署Master API负载均衡器作为集群内外访问的入口 在三个Master节点安装KeepAlived与LVS 12$ ansible masters -m package -a 'name=keepalived state=present'$ ansible masters -m package -a 'name=ipvsadm state=present' 选择master0作为VIP的Master节点 1234567891...
2020-05-20
OpenShift-云原生容器应用设计原则
引自:容器化应用的设计原则来源自RedHat云原生容器应用设计原则白皮书 本文来自于Red Hat咨询顾问Bilgin Ibryam所编写的一篇白皮书,名为《PRINCIPLES OF CONTAINER-BASED APPLICATION DESIGN》。这篇文章在作者的Blog上发表后,作者的twitter被Kubernetes官方twitter转发。白皮书在Red Hat官网的下载地址:https://www.redhat.com/en/resources/cloud-native-container-design-whitepaper 文本是对这篇文章的学习和整理。 先回顾经典的软件设计原则: 保持简单,愚蠢(KISS) 不要重复自己(DRY) 你不会需要它 (YAGNI) 关注点分离(SoC) Single responsibility, Open/closed, Liskov substitution, Interface segregation, Dependency inversion (SOLID) 然后是Red Hat的云原生容器设计原则...

2020-05-20
利用Openshift中的cronjob-+-zalenium实现网站监控
背景介绍有一个网站(pf.apps.example.com),会获取主机的信息,但是主机信息的格式不统一,而且经常性会添加机器,但是信息又是不确定的,所以有时添加新机器会缺失字段,导致网站异常。 有两种解决方法, 优化代码,提高代码的兼容性,不致于导致页面无法显示。 严格规范字段的输入,必须保证字段的完整性。 不管哪种方法,我们都需要在页面出现故障时第一时间知道。这就要求编写代码自动监测网站相关页面的可用性,一旦出现问题,及时发邮件告知,第一时间恢复。 有使用到上篇介绍的zalenium Openshift部署zalenium(容器化的selenium)及Python自动测试 编写监控脚本监控脚本使用selenium控制浏览器,先模拟登录,再访问需要测试的页面,如果页面正常打开则正常,否则发邮件告警。(由于这个网站的每个页面都有id=content的一个div,所以通过检测页面中是否存在id=content的div来判断页面是否正常)monitor.py 123456789101112131415161718192021222324252627...

2020-05-20
Ansible的k8s模块完全兼容OpenShift资源
Ansible 的 k8s 模块完全兼容 openshift 资源 安装 使用 k8s 模块需要安装 openshift 的 python 扩展 1$ pip install --ignore-installed openshift 安装过程中报如下错误TypeError: find_packages() got an unexpected keyword argument include需要升级 setuptools 1$ pip install -U setuptools 在执行 k8s 命令的主机上登录 kubernetes/openshift 平台 12$ oc login https://master.example.com:8443 -u admin -ppassword 测试 使用 ansible k8s 模块创建 namespace 1$ oc -i hosts all -m k8s -a 'state=present name=testproject kind=Project' 使用 ansible k8s 模块基...
2020-05-20
Openshift-F5集成(总结)——与Router方案对比
这篇文章来自9月份自己在F5年度会议上分享的PPT,感谢过程中帮忙一起联调的小伙伴。PPT也分享出来,地址如下:openshift与F5的联合解决方案Openshift-F5集成(南北流量走F5)Openshift-F5集成(续)——实现灰度发布 Openshift的基础概念Openshift简介红帽® OpenShift 是一款性能强大的开源企业级PaaS产品。不仅是企业级的Kubernetes,可以构建、部署与管理容器应用,还提供从开发到投入生产的整个应用生命周期内使用的完整解决方案,帮助客户享受快速创新带来的收益,同时保持企业级平台的稳定性、可靠性和安全性。Openshift支持多种环境下部署,无论是在企业内部,公共云,或是托管环境中。 Openshift Pod Pod是Openshift调度的最小单元 一个Pod包含一个或多个容器 Pod内的容器共享网络,IP不固定 实例: 12345678910111213apiVersion: v1kind: Podmetadata: name: MyApp labels: app: MyApp spec...
