ingress-nginx-检查控制器的状态以及访问统计数据

1. 手动查询状态:

1.1 查看ingress控制器的配置:

$ kubectl get po -o wide -n ingress-nginx
NAME                                       READY     STATUS    RESTARTS   AGE       IP            NODE
nginx-ingress-controller-9fb6cbd6d-f5sxb   1/1       Running   0          1h        172.30.94.2   192.168.5.8

# 查看ingres-control运行时配置:
$ kubectl exec -it nginx-ingress-controller-9fb6cbd6d-f5sxb -n ingress-nginx cat /etc/nginx/nginx.conf

....
 # default server, used for NGINX healthcheck and access to nginx stats
        server {
                listen 18080 default_server reuseport backlog=511;

                set $proxy_upstream_name "-";

                location /healthz {

                        access_log off;
                        return 200;
                }

....
                location /nginx_status {
                        set $proxy_upstream_name "internal";

                        access_log off;
                        stub_status on;
                }
.....

在18080端口开放了健康检查以及访问统计:

  • 控制器健康检查/healthz
  • 控制器的访问统计/nginx_status 

 控制器的pod IP:172.30.94.2

1.2 创建一个带curl工具的容器:

$ cat ./curl.yaml 
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: curl
spec:
  replicas: 1 
  template:
    metadata:
      annotations:
        sidecar.istio.io/inject: "true"
      labels:
        app: curl
    spec:
      containers:
      - name: curl
        image: appropriate/curl
        command: ["sleep"]
        args: ["5000"]

$ kubectl create -f ./curl.yaml

1.3 在curl容器中查询nginx控制的访问统计

$ kubectl exec -it curl-cc664978f-wkbqd sh

# 查看方法统计数据:
# curl http://172.30.94.2:18080/nginx_status
Active connections: 1 
server accepts handled requests
 1749 1749 1749 
Reading: 0 Writing: 1 Waiting: 0

#检查控制器是否良好:
# curl -i http://172.30.94.2:18080/healthz
HTTP/1.1 200 OK
Server: nginx/1.15.8
Date: Mon, 04 Feb 2019 06:24:41 GMT
Content-Type: text/html
Content-Length: 0
Connection: keep-alive

2. 利用Prometheus监控:

nginx-ingress安装描述文件,默认已经设置好10254端口给proemtheus提供统计数据如下:

$ cat deploy/mandatory.yaml
.....
      annotations:
        prometheus.io/port: "10254"
        prometheus.io/scrape: "true"
.....

prometheus配置自动发现POD(参考:https://blog.csdn.net/kozazyh/article/details/80412451

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值