genvid.toolbox.ConsulService¶
-
class
genvid.toolbox.
ConsulService
(**kwargs)¶ ベースクラス:
genvid.toolbox.service.ServiceTool
Consul サービスを設定するためのベース class。
-
NAME
= 'service-consul'¶
-
SERVICE_NAME
= 'consul'¶
-
get_service_args
(configdir, datadir, mode)¶ Consul モードに応じて、ベース引数を返す (dev かどうか)。
-
get_recursors
()¶
-
get_config
(name, mode, datacenter, bind, wan, bootstrap, replace_dns, servers, ec2_tag, ec2_value, node_id, **ignored)¶ 設定を、JSON オブジェクトとしてアクセスできる辞書として返す。
デフォルトの設定は、このメソッドの結果をオーバーライドすることで変更可能。
Args:
name: ノード名
mode: サービスを実行するモード (dev、server、client)。
datacenter: Consul に関連付ける datacenter
- bind: アドバタイズされた LAN IP アドレス。Consul は 「0.0.0.0」 にバウンドしますが、
- 単一アドレスをアドバタイズする必要があります。
wan: アドバタイズされた WAN IP アドレス。存在する場合、WAN 変換を有効化します。
- bootstrap: サーバーモードのみ: 想定される bootstrap サーバー数。
- -1 に設定すれば、リストされたサーバー数を使用します。
- replace_dns: Consul をポート 53 で実行し、Consul を nameservers のリストに追加する。
- (現在、Linux のみ)。
servers: 再起動時に再試行するサーバーのリスト。
ec2_tag: サーバーの EC2 インスタンスのタグ。AWS インスタンスである必要があります。
ec2_value: サーバーをチェックする EC2 の値。AWS インスタンスである必要があります。
node_id: 使用されるノード ID。設定されていない場合は、ノード ID が自動的に生成されます。
-
-
class
service.
ConsulService
¶