alertmanager:v0.14.0
)邮件发送工作,这是我从kubernetes集群的pod发送的测试脚本:
alerts1='[
{
"labels": {
"alertname": "DiskRunningFull",
"dev": "sda1",
"instance": "example1"
},
"annotations": {
"info": "The disk sda1 is running full",
"summary": "please check the instance example1"
}
}
]'
curl -XPOST -d"$alerts1" http://alertmanager.kube-system.svc.cluster.local:80/api/v1/alerts
/ # curl -XPOST -d"$alerts1" http://alertmanager.kube-system.svc.cluster.local:80/api/v1/alerts
curl: (7) Failed to connect to alertmanager.kube-system.svc.cluster.local port 80: Connection refused
我正在用这样的方式ping服务:
/ # ping alertmanager.kube-system.svc.cluster.local
PING alertmanager.kube-system.svc.cluster.local (10.254.193.27): 56 data bytes
64 bytes from 10.254.193.27: seq=0 ttl=64 time=0.039 ms
64 bytes from 10.254.193.27: seq=1 ttl=64 time=0.054 ms
显示dns工作正常。所以问题出在哪里,我阅读了alertmanger服务的pod,没有发现错误输出。我该怎么解决这个问题?这是我的服务yaml:
{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": "alertmanager",
"namespace": "kube-system",
"labels": {
"addonmanager.kubernetes.io/mode": "Reconcile",
"kubernetes.io/cluster-service": "true",
"kubernetes.io/name": "Alertmanager"
},
"spec": {
"ports": [
{
"name": "http",
"protocol": "TCP",
"port": 80,
"targetPort": 9093
}
],
"selector": {
"k8s-app": "alertmanager"
},
"clusterIP": "10.254.193.27",
"type": "ClusterIP",
"sessionAffinity": "None"
}
}