2017-11-15 7 views
1

私の次の問題をホスト:プロメテウス(docker-)の未知の番号からこすりは

私はプロメテウスコンテナと特定microservice 1-n個のコンテナとドッキングウィンドウの群れを持っています。

マイクロサービス容器にはURLでアクセスできます。 このURLへのリクエストは、負荷分散されていると思います(もちろん...)。

現在、私は2つのmicroservice-containerを生成しました。 メトリックを照会すると、2つのコンテナが切り替わるように見えるようになりました。 例:合計リクエスト数:10,13,10,13,10,13 ...

これは私のプロメテウスの設定です。私は何をしなければならないのですか?動作するように思われる次のように私は私が殺すかmicroserviceコンテナを起動するたびにconfigコンプロメテウスを調整する必要はありません ...

scrape_configs: 
    - job_name: 'myjobname' 
    metrics_path: '/prometheus' 
    scrape_interval: 15s 
    static_configs: 
     - targets: ['the-service-url:8080'] 
     labels: 
      application: myapplication 

UPDATEは1 私は自分の設定を変更しました。この構成では、docker swarmの内部でdnsルックアップを使用し、指定されたサービスを実行しているすべてのインスタンスを検出します。

scrape_configs: 
    - job_name: 'myjobname' 
    metrics_path: '/prometheus' 
    scrape_interval: 15s 
    dns_sd_configs: 
     - names: ['tasks.myServiceName'] 
     type: A 
     port: 8080 

ここで質問です:この構成では、ドッキングウィンドウのインスタンスを停止し、別の1が開始されていることを認識していますか?トリックを行う必要があります私が...

scrape_configs: 
    - job_name: 'myjobname' 
    metrics_path: '/prometheus' 
    scrape_interval: 15s 
    dns_sd_configs: 
     - names: ['tasks.myServiceName'] 
     type: A 
     port: 8080 
     # The time after which the provided names are refreshed 
     [ refresh_interval: <duration> | default = 30s ] 

求めています何のためのパラメータがあります

UPDATE 2 ... ;-)

+1

おそらく別のポートでサービスに直接アクセスできますか?領事やDNSの発見などのサービス発見技術を使用できますか? –

+0

@TobyJackson:これは、私が大量のグーグル・グーグル・グーグルで回答を見つけたのとほぼ同じ時に「正しい」ヒントを与えたようです:-) – eventhorizon

答えて

0

を読み取るための THX答えは非常に単純です: multiple, documented ways to scrapeがあります。 dns-lookup-wayを使用しています:

scrape_configs: 
    - job_name: 'myjobname' 
     metrics_path: '/prometheus' 
     scrape_interval: 15s 
     dns_sd_configs: 
      - names ['tasks.myServiceName'] 
       type: A 
       port: 8080 
       refresh_interval: 15s 
関連する問題