Managed Service for Prometheus standart bir Uzak Okuma uç noktası sağlar. Bu uç noktayı kendi yönettiğiniz Prometheus yapılandırmasına ekleyerek cloud üzerindeki örneğinizden ölçümleri sorgulayabilirsiniz. Bu konu, kendi yönettiğiniz bir Prometheus sunucusunu bir Managed Service for Prometheus örneğinden ölçüm okumak üzere nasıl yapılandıracağınızı açıklar.
Prometheus Uzak Okuma modu, hesaplama amacıyla büyük miktarda ham zaman serisi verisini yerel bir Prometheus motoruna okur ve birçok kullanım sınırlamasına sahiptir. Bu nedenle, Managed Service for Prometheus tarafından sağlanan HTTP API sorgu protokolünü doğrudan kullanmanızı öneririz.
Managed Service for Prometheus eksiksiz bir Prometheus sorgu API'si sunar. Sorguları sunucu tarafında işler ve yalnızca nihai sonuçları döndürür; bu da Uzak Okuma kullanımına kıyasla katbekat daha yüksek performans sağlar. API, sorguları doğrudan HTTP üzerinden göndermenize ve yerel bir Prometheus motoru olmadan Grafana gibi araçlara bağlanmanıza olanak tanır. Yapılandırma ayrıntıları için bkz. HTTP API uç noktası kullanarak Grafana veya kendi yönettiğiniz uygulamaları Prometheus verilerine bağlama.
Uzak Okuma yaklaşımının sınırlamaları şunlardır:
Yerel bir Prometheus hesaplama motorunu sürdürmenin yüksek altyapı maliyeti.
Her sorgunun ağ üzerinden büyük hacimli ham veri aktarımı gerektirmesi nedeniyle yüksek uçtan uca gecikme süresi.
Büyük veri kümelerini sorgularken aşılması kolay olan katı hizmet sınırları.
Sınırlamalar
Uzak Okuma uç noktası HTTP/2'yi desteklemez.
Önkoşullar
Bir Managed Service for Prometheus örneği oluşturdunuz. Daha fazla bilgi için bkz. Örnek oluşturma.
(İsteğe Bağlı) Adım 1: Bir RAM kullanıcısına CMS okuma ve yazma izinleri verme
Alibaba Cloud Prometheus örneğiniz bir Alibaba Cloud hesabı tarafından oluşturulduysa ve uzak okuma/yazma işlemleri için bir RAM kullanıcısının AccessKey ID ve AccessKey Secret değerlerini kullanmanız gerekiyorsa, öncelikle RAM kullanıcısına CMS için okuma ve yazma izinleri atamanız gerekir.
Bir Alibaba Cloud hesabı veya RAM yöneticisi olarak RAM konsolu üzerinde oturum açın. Sol gezinme bölmesinde seçeneklerini belirleyin.
-
Authorize sayfasında Create Authorization seçeneğine tıklayın. Create Authorization sayfasında parametreleri aşağıdaki gibi yapılandırın.
Parametre
Açıklama
Resource Range
Gerektiğinde bir kaynak kapsamı seçin.
Principal
Asıl öğeyi belirtin. Asıl öğe, izin vermek istediğiniz RAM kullanıcısıdır.
Policy
Gerektiğinde aşağıdaki izinleri RAM kullanıcısına ekleyin:
-
AliyunCloudMonitorFullAccess: CMS için tam izinler. Bu izne sahip bir RAM kullanıcısı, tüm alt ürünlerin örneklerini görüntüleme, düzenleme ve silme konusunda tam yetkiye sahiptir. -
AliyunCloudMonitorReadOnlyAccess: CMS için salt okunur izinler. Bu izne sahip bir RAM kullanıcısı yalnızca tüm alt ürünler için örnek bilgilerini görüntüleyebilir. Kullanıcı örnekleri değiştiremez veya silemez.
-
Confirm seçeneğine tıklayın ve ardından Delete seçeneğine tıklayın.
Adım 2: Uzak Okuma uç noktasını alma
CloudMonitor konsolu üzerinde oturum açın. Sol gezinme bölmesinde Prometheus Monitoring seçeneğini belirleyin ve yolunu izleyerek Instance List sayfasına gidin.
Üst menü çubuğunda örneğin bulunduğu bölgeyi seçin. Hedef kümenin Actions sütununda Modify seçeneğine tıklayın.
-
Modify sekmesinde, gerektiğinde genel veya dahili Uzak Okuma uç noktasını kopyalayın.
Genel uç nokta biçimi
http://{region}.arms.aliyuncs.com:9090/api/v1/prometheus/xxxşeklindedir. Dahili uç nokta biçimihttp://{region}-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxxşeklindedir. xxx kısmı sistem tarafından oluşturulan kimlik doğrulama kimlik bilgisidir.
Adım 3: Kendi yönettiğiniz Prometheus yapılandırması
Prometheus yükleyin. Daha fazla bilgi için Prometheus indirme sayfasına bakın.
-
Prometheus.yml yapılandırma dosyasını düzenleyin. Aşağıdaki içeriği dosyanın sonuna ekleyin.
remote_readURL'sini Adım 2 bölümündeki uç nokta ile değiştirin. Ardından dosyayı kaydedin.global: scrape_interval: 15s evaluation_interval: 15s scrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090'] remote_read: # Replace this with your Remote Read endpoint. - url: "http://ts-xxxxxxxxxxxx.hitsdb.rds.aliyuncs.com:3242/api/prom_read" read_recent: true Kendi yönettiğiniz Prometheus hizmetini yeniden başlatın.
Adım 4: Kendi yönettiğiniz Prometheus üzerinde Alibaba Cloud Prometheus verilerini görüntüleme
-
Tarayıcınızda kendi yönettiğiniz Prometheus üzerinde oturum açın.
http://localhost:9090 Prometheus sayfasında, sayfanın üst kısmındaki menü çubuğunda Graph seçeneğine tıklayın.
-
Graph sekmesinde, arama kutusuna bir sorgu ifadesi girin ve ardından arama kutusunun sağındaki Execute seçeneğine tıklayın.
Örneğin, belirli bir IP adresinin CPU kullanım oranını sorgulayın.
100 - (avg by (instance) (rate(node_cpu_seconds_total{instance="your_IP_address:9100", mode="idle"}[5m])) * 100)
SSS
Uzak Okuma yapılandırıldıktan sonra sorgular veri döndürmüyor ve hata raporlamıyor
Yapılandırmadan sonra sorgular veri döndürmüyorsa, yerel Prometheus yapılandırmanızda external_labels olup olmadığını kontrol edin. Bu ayar, Uzak Okuma'nın beklenen verileri sorgulamasını engelleyebilir. Prometheus yapılandırma dosyasındaki external_labels yapılandırmasını görüntülemek ve cloud ile cluster etiketlerinin doğru şekilde ayarlandığını onaylamak için aşağıdaki komutu çalıştırın.
[xxx prometheus]# head prometheus.yml
global:
scrape_interval: 60s
evaluation_interval: 15s
external_labels:
cloud: xxx
cluster: xxx