Điểm:0

Istio - Prometheus - HPA Stack không giao tiếp [ HPA không thể tính toán số lượng bản sao ]

lá cờ us

Tôi có cụm với 1 bảng điều khiển và 2 nút.

Istio được cài đặt dưới dạng Lưới dịch vụ.

Tôi yêu cầu quản lý thông qua ingress istio.

Tôi muốn nó tự động mở rộng quy mô bằng cách chia sẻ số liệu giữa Kubernetes HPA và istio prometheus, nhưng tôi không thể.

Nhóm của tôi trên hệ thống kube

nhóm hệ thống kube

root@ubuntu-master:~# kubectl get pods -n kube-system
TÊN TÌNH TRẠNG SẴN SÀNG KHỞI ĐỘNG LẠI TUỔI
coredns-78fcd69978-pk69f 1/1 Đang chạy 1 (2ngày 11 giờ trước) 2 ngày 12 giờ
coredns-78fcd69978-t5dkx 1/1 Chạy 1 (2d11h trước) 2d12h
etcd-ubuntu-master 1/1 Chạy 1 (2d11h trước) 48d
kube-apiserver-ubuntu-master 1/1 Chạy 2 (2d11h trước) 48d
kube-controller-manager-ubuntu-master 1/1 Đang chạy 3 (2d11h trước) 48d
kube-proxy-72q2r 1/1 Chạy 0 2d10h
kube-proxy-8qgr9 1/1 Đang chạy 1 (2d11h trước) 48d
kube-proxy-t4wgr 1/1 Chạy 0 2d10h
kube-scheduler-ubuntu-master 1/1 Đang chạy 3 (2d11h trước) 48d
metrics-server-84b4bfc7fb-h8gd2 1/1 Đang chạy 0 18h

Nhóm của tôi trên hệ thống istio

hệ thống istio

root@ubuntu-master:~# kubectl get pods -n istio-system
TÊN TÌNH TRẠNG SẴN SÀNG KHỞI ĐỘNG LẠI TUỔI
grafana-6ccd56f4b6-bw5md 1/1 Đang chạy 0 2d12h
istio-ingressgateway-57c665985b-wj5gr 1/1 Chạy 0 2d12h
istiod-78cc776c5b-qkr6b 1/1 Chạy 0 2d12h
jaeger-5d44bc5c5d-db2pj 1/1 Chạy 0 2d12h
kiali-79b86ff5bc-mj8bn 1/1 Chạy 0 2d12h
prometheus-64fd8ccd65-22znf 2/2 Chạy 0 2d12h
prometheus-adapter-6d9c6c8fdf-lxfbp 1/1 Chạy 0 17h

Kết quả giao diện người dùng Prometheus:

Kết quả giao diện người dùng Prometheus

Phản hồi của máy chủ số liệu;

Phản hồi của máy chủ số liệu

root@ubuntu-master:~# kubectl get --raw "/apis/custom.metrics.k8s.io/v1beta1"
{"kind":"APIResourceList","apiVersion":"v1","groupVersion":"custom.metrics.k8s.io/v1beta1","resources":[{"name":"namespaces/network_transmit_packets_dropped"," singularName":"","namesspace":false,"kind":"MetricValueList","verbs":["get"]},{"name":"namespaces/processes","singularName":""," namespace":false,"kind":"MetricValueList","verbs":["get"]},{"name":"namespaces/sockets","singularName":"","namesspace":false,"kind ":"MetricValueList","verbs":["get"]},{"name":"namespaces/spec_memory_swap_limit_bytes","singularName":"","namesspace":false,"kind":"MetricValueList"," verbs":["get"]},{"name":"jobs.batch/kiali_single_validation_processing_duration_seconds_sum","singularName":"","namesspace":true,"kind":"MetricValueList","verbs":[" get"]},{"name":"jobs.batch/kiali_validation_processing_duration_seconds_count","singularName":"","namespac":true,"kind":"MetricValueList","verbs":["get"]}, {"name":"namespaces/kubelet_container_log_filesystem_used_bytes","singularName":"","namesspace":false,"kind":"M etricValueList","verbs":["get"]},{"name":"namespaces/cpu_system","singularName":"","namesspace":false,"kind":"MetricValueList","verbs": ["get"]},{"name":"pods/cpu_user","singularName":"","namesspace":true,"kind":"MetricValueList","verbs":["get"]}, {"name":"namespaces/fs_reads_bytes","singularName":"","namespac":false,"kind":"MetricValueList","verbs":["get"]},{"name":"services /kiali_validation_processing_duration_seconds_sum","singularName":"","namesspace":true,"kind":"MetricValueList","verbs":["get"]},......

ở đây trong định nghĩa HPA của tôi

istio kubernetes hpa

root@ubuntu-master:~# kubectl description hpa html-pdf-v2-hpa -n html-pdf-v2
Tên: html-pdf-v2-hpa
Không gian tên: html-pdf-v2
Nhãn: <không có>
Chú thích: metric-config.object.istio-requests-total.prometheus/query:
                                                                   Tổng(
                                                                     tỷ lệ(
                                                                       istio_requests_total{
                                                                         Destination_workload="html-pdf-triển khai",
                                                                         Destination_workload_namespace="html-pdf-v2"
                                                                       [1m]
                                                                     )
                                                                   ) /
                                                                   đếm(
                                                                     đếm(
                                                                       container_memory_usage_bytes{
                                                                         không gian tên = "html-pdf-v2",
                                                                         pod=~"html-pdf-triển khai.*"
                                                                       }
                                                                     ) bởi (nhóm)
                                                                   )
TạoDấu thời gian: Thứ tư, ngày 19 tháng 1 năm 2022 18:11:14 +0300
Tham khảo: Triển khai/html-pdf-triển khai
Số liệu: ( hiện tại / mục tiêu )
  "istio-requests-total" trên Pod/html-pdf-deploy (giá trị đích): <unknown> / 10
Bản sao tối thiểu: 1
Bản sao tối đa: 10
Nhóm triển khai: 5 hiện tại / 0 mong muốn
Điều kiện:
  Loại Trạng thái Lý do Thông báo
  ---- ------ ------ -------
  AbleToScale True SucceededGetScale bộ điều khiển HPA có thể lấy được tỷ lệ hiện tại của mục tiêu
  ScalingActive Sai FailedGetObjectMetric HPA không thể tính toán số lượng bản sao: không thể lấy chỉ số istio-requests-total: Pod trên html-pdf-v2 html-pdf-deploy/không thể tìm nạp chỉ số từ API chỉ số tùy chỉnh: máy chủ không thể tìm thấy chỉ số istio-requests-total cho nhóm
Sự kiện:
  Nhập Lý do Tuổi từ Tin nhắn
  ---- ------ ---- ---- -------
  Cảnh báo FailedGetObjectMetric 55s (x4255 trên 17 giờ) vertical-pod-autoscaler không thể lấy chỉ số istio-requests-total: Pod trên html-pdf-v2 html-pdf-deploy/không thể tìm nạp chỉ số từ API chỉ số tùy chỉnh: máy chủ không thể tìm thấy chỉ số istio-requests-total cho nhóm

kết quả nhóm hàng đầu kubectl

root@ubuntu-master:~# kubectl top pods -n istio-system
TÊN CPU(lõi) BỘ NHỚ(byte)
grafana-6ccd56f4b6-bw5md 2m 39Mi
istio-ingressgateway-57c665985b-wj5gr 10m 85Mi
istiod-78cc776c5b-qkr6b 7m 61Mi
jaeger-5d44bc5c5d-db2pj 3m 809Mi
kiali-79b86ff5bc-mj8bn 4m 1125Mi
prometheus-64fd8ccd65-22znf 34m 744Mi
prometheus-bộ chuyển đổi-6d9c6c8fdf-lxfbp 40m 76Mi

HPA Yaml.

apiVersion: autoscaling/v2beta1
loại: HorizontalPodAutoscaler
metadata:
  tên: html-pdf-v2-hpa
  không gian tên: html-pdf-v2
  chú thích:
    metric-config.object.istio-requests-total.prometheus/query: |
      Tổng(
        tỷ lệ(
          istio_requests_total{
            Destination_workload="html-pdf-triển khai",
            Destination_workload_namespace="html-pdf-v2"
          [1m]
        )
      ) /
      đếm(
        đếm(
          container_memory_usage_bytes{
            không gian tên = "html-pdf-v2",
            pod=~"html-pdf-triển khai.*"
          }
        ) bởi (nhóm)
      )
thông số kỹ thuật:
  Bản sao tối đa: 10
  tối thiểuBản sao: 1
  quy môTargetRef:
    apiVersion: ứng dụng/v1
    loại: Triển khai
    tên: html-pdf-triển khai
  chỉ số:
    - loại: Đối tượng
      vật:
        metricName: istio-requests-total
        Mục tiêu:
          phiên bản api: v1
          loại: Vỏ
          tên: html-pdf-triển khai
        targetValue: 10

Tôi băn khoăn không biết mình đã sai ở đâu hay liệu mình có đang đi đúng đường hay không.

Bài đăng đầu tiên tôi rất hào hứng với câu trả lời. Tôi hy vọng tôi đã giải thích chính xác bản thân mình.

Cảm ơn

c4f4t0r avatar
lá cờ nl
Bạn có thể mô tả cấu hình giám sát k8s của bạn? Prometheus của bạn được cấu hình như thế nào? Bạn có bản cài đặt prometheus chuyên dụng hoặc bản cài đặt istio nhúng không? Bạn đã cài đặt bộ điều hợp prometheus và máy chủ số liệu trong cụm của mình chưa?
lá cờ jp
Không đăng thông tin văn bản dưới dạng liên kết hình ảnh.
lá cờ us
@AlexD Tôi không thể thêm ảnh vì; "Bạn cần ít nhất 10 danh tiếng để đăng ảnh."
lá cờ jp
Thêm thông tin văn bản dưới dạng văn bản.
lá cờ us
@c4f4t0r Đã cài đặt với cài đặt của Prometheus istio [tại đây](https://istio.io/latest/docs/ops/integrations/prometheus/). Tôi đã cài đặt máy chủ số liệu bằng helm và đặt tls [tại đây](https://github.com/kubernetes-sigs/metrics-server). Tôi đã cài đặt nó với trình điều khiển bộ điều hợp Prometheus [tại đây](https://github.com/kubernetes-sigs/prometheus-adapter).
lá cờ us
@AlexD Tôi đã thêm tài liệu văn bản dưới dạng văn bản. Bạn đang nói về cái nào
lá cờ jp
Đầu ra của bảng điều khiển từ `kubectl` mà bạn đã liên kết dưới dạng hình ảnh là một văn bản.
lá cờ us
@AlexD Đã hiểu. Cảm ơn bạn đã thông tin.
c4f4t0r avatar
lá cờ nl
@Orgenus bạn đã đăng nhiều liên kết khác nhau, Bạn đã cài đặt bao nhiêu prometheus?
lá cờ us
@c4f4t0r Chỉ có 1 cài đặt. trong không gian tên hệ thống istio
c4f4t0r avatar
lá cờ nl
kiểm tra xem bộ điều hợp prometheus của bạn có trỏ đến đó không và kiểm tra xem máy chủ số liệu của bạn có hoạt động với các nhóm hàng đầu kubectl hay không, dù sao thì bạn cũng có thể tìm thấy nhiều thông tin về số liệu tùy chỉnh
lá cờ us
@ c4f4t0r Máy chủ số liệu đang chạy và phản hồi, tôi đã thêm nó vào chuỗi. Làm cách nào tôi có thể kiểm soát quyền truy cập của bộ điều hợp?
c4f4t0r avatar
lá cờ nl
nếu bạn đã cài đặt bộ điều hợp prometheus bằng cách sử dụng biểu đồ điều khiển, theo mặc định, nó sẽ truy cập vào url: http://prometheus.default.svc
lá cờ us
@c4f4t0r Tôi có thể truy cập giao diện Prometheus. Khi tôi chạy truy vấn mẫu ở đó, nó sẽ cho kết quả. Tôi đã đính kèm ảnh chụp màn hình vào chủ đề.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.