2017-08-18 20 views
0

Nomad(0.6)にRedisジョブを配備するとき、私は領事でそれを健全にすることはできません。Nomadで危険と警告された赤目ジョブの健全性チェック

コンサルをコンテナで開始し、ポート8500をlocalhostで使用できるようにします。


$ docker container run --name consul -d -p 8500:8500 consul 

私がnomadを実行すると、ログに表示されるようにConsulに正しく接続されます。


$ nomad agent -dev 
    No configuration files loaded 
==> Starting Nomad agent... 
==> Nomad agent configuration: 

       Client: true 
      Log Level: DEBUG 
       Region: global (DC: dc1) 
       Server: true 
       Version: 0.6.0 

==> Nomad agent started! Log data will stream in below: 
... 
    2017/08/18 15:45:28.373766 [DEBUG] client.consul: bootstrap contacting following Consul DCs: ["dc1"] 
    2017/08/18 15:45:28.377703 [INFO] client.consul: discovered following Servers: 127.0.0.1:4647 
    2017/08/18 15:45:28.378851 [INFO] client: node registration complete 
    2017/08/18 15:45:28.378895 [DEBUG] client: periodically checking for node changes at duration 5s 
    2017/08/18 15:45:28.379232 [DEBUG] consul.sync: registered 1 services, 1 checks; deregistered 0 services, 0 checks 
... 

私はその後


job "nomad-redis" { 
    datacenters = ["dc1"] 
    type = "service" 

    group "cache" { 

    task "redis" { 
     driver = "docker" 

     config { 
     image = "redis:3.2" 
     port_map { 
      db = 6379 
     } 
     } 

     resources { 
     cpu = 500 # 500 MHz 
     memory = 256 # 256MB 
     network { 
      mbits = 10 
      port "db" {} 
     } 
     } 

     service { 
     name = "redis" 
     port = "db" 
     check { 
      name  = "alive" 
      type  = "tcp" 
      interval = "10s" 
      timeout = "2s" 
     } 
     } 
    } 
    } 
} 

Redisのサービスは領事に追加された以下の構成ファイルでのRedisのジョブを実行しますが、それはそれほど重要で表示されます。ヘルスチェックができないようだ。私が理解していることから、チェックはタスク内で実行されます。私は行方不明のものがありますか?

答えて

0

ローカルホストまたはホストネットワークに接続されているコンテナ(--net = host)で領事を実行すると、問題が修正されました。

関連する問題