0

https://github.com/discordianfish/nginx_exporterに記載されている手順に従って、 nginx exporterの docker コンテナーをセットアップしました。

次に、メソスフィア クラスターに marathon を使用して nginx の docker コンテナーをインストールします。パラメータ 'nginx.scrape_uri' を Docker コンテナに提供するにはどうすればよいですか。このリンクの「特権モードと任意の Docker オプション」で指定された「パラメーター」プリミティブを使用してみましたhttps://mesosphere.github.io/marathon/docs/native-docker.htmlただし、JSON にパラメータープリミティブを追加しますアプリを「デプロイ中」状態のままにします。

マラソンを使用してnginx-exporter用のアプリを作成するために使用しているJSONファイルは次のとおりです。

{
  "id": "/nginx-exporter",
  "instances": 1,
  "cpus": 0.1,
  "mem": 25,
  "constraints": [["hostname", "UNIQUE"]],
  "acceptedResourceRoles": ["slave_public"],
  "container": {
    "type": "DOCKER",
    "docker": {
        "image": "fish/nginx-exporter",
        "network": "BRIDGE",
        "portMappings": [
                           {
                              "containerPort": 9113,
                              "hostPort": 9113,
                              "protocol": "tcp"
                           }
                        ],
        "parameters":   [   {"key": "nginx.scrape_uri", "value": "http://52.76.26.53:8080" }
                        ]
              }
  },
  "healthChecks": [{
    "protocol": "TCP",
    "gracePeriodSeconds": 600,
    "intervalSeconds": 30,
    "portIndex": 0,
    "timeoutSeconds": 10,
    "maxConsecutiveFailures": 2
  }]
}

パラメータ「nginx.scrape_uri」をJSONファイルに追加する正しい方法を教えてください。ありがとう。

4

1 に答える 1

0

次のように、「パラメータ」の代わりに「引数」を使用する必要があります。

{
  ...
  "container": {
    "type": "DOCKER",
    "docker": {
      "image": "fish/nginx-exporter",
      "network": "BRIDGE",
      "portMappings": [
        {
          "containerPort": 9113,
          "hostPort": 9113,
          "protocol": "tcp"
        }
      ]
    }
  },
  "args": [ "-nginx.scrape_uri", "http://52.76.26.53:8080" ],
  ...
}

nginx スタブ ステータス モジュールを有効にして、エクスポータをそのエンドポイントに向ける必要があることに注意してください: http://nginx.org/en/docs/http/ngx_http_stub_status_module.html

于 2015-08-12T17:47:48.503 に答える