etcd.conf.j2 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. {% macro initial_cluster() -%}
  2. {% for host in etcd_peers | default([]) -%}
  3. {% if loop.last -%}
  4. {{ hostvars[host].etcd_hostname }}={{ etcd_peer_url_scheme }}://{{ hostvars[host].etcd_ip }}:{{ etcd_peer_port }}
  5. {%- else -%}
  6. {{ hostvars[host].etcd_hostname }}={{ etcd_peer_url_scheme }}://{{ hostvars[host].etcd_ip }}:{{ etcd_peer_port }},
  7. {%- endif -%}
  8. {% endfor -%}
  9. {% endmacro -%}
  10. ETCD_NAME={{ etcd_hostname }}
  11. ETCD_LISTEN_PEER_URLS={{ etcd_listen_peer_urls }}
  12. ETCD_DATA_DIR={{ etcd_data_dir }}
  13. #ETCD_WAL_DIR=
  14. #ETCD_SNAPSHOT_COUNT=10000
  15. ETCD_HEARTBEAT_INTERVAL=500
  16. ETCD_ELECTION_TIMEOUT=2500
  17. ETCD_LISTEN_CLIENT_URLS={{ etcd_listen_client_urls }}
  18. #ETCD_MAX_SNAPSHOTS=5
  19. #ETCD_MAX_WALS=5
  20. #ETCD_CORS=
  21. {% if etcd_cipher_suites is defined and etcd_cipher_suites %}
  22. ETCD_CIPHER_SUITES="{{ etcd_cipher_suites }}"
  23. {% endif %}
  24. #[cluster]
  25. ETCD_INITIAL_ADVERTISE_PEER_URLS={{ etcd_initial_advertise_peer_urls }}
  26. {% if etcd_is_thirdparty | bool %}
  27. # TODO: This needs to be altered to support the correct etcd instances
  28. ETCD_INITIAL_CLUSTER={{ etcd_hostname}}={{ etcd_initial_advertise_peer_urls }}
  29. ETCD_INITIAL_CLUSTER_STATE={{ etcd_initial_cluster_state }}
  30. ETCD_INITIAL_CLUSTER_TOKEN=thirdparty-etcd-cluster-1
  31. {% else %}
  32. {% if etcd_initial_cluster is defined and etcd_initial_cluster %}
  33. ETCD_INITIAL_CLUSTER={{ etcd_initial_cluster }}
  34. {% else %}
  35. ETCD_INITIAL_CLUSTER={{ initial_cluster() }}
  36. {% endif %}
  37. ETCD_INITIAL_CLUSTER_STATE={{ etcd_initial_cluster_state }}
  38. ETCD_INITIAL_CLUSTER_TOKEN={{ etcd_initial_cluster_token }}
  39. #ETCD_DISCOVERY=
  40. #ETCD_DISCOVERY_SRV=
  41. #ETCD_DISCOVERY_FALLBACK=proxy
  42. #ETCD_DISCOVERY_PROXY=
  43. {% endif %}
  44. ETCD_ADVERTISE_CLIENT_URLS={{ etcd_advertise_client_urls }}
  45. #ETCD_STRICT_RECONFIG_CHECK=false
  46. #ETCD_AUTO_COMPACTION_RETENTION=0
  47. #ETCD_ENABLE_V2=true
  48. ETCD_QUOTA_BACKEND_BYTES={{ etcd_quota_backend_bytes }}
  49. #[proxy]
  50. #ETCD_PROXY=off
  51. #ETCD_PROXY_FAILURE_WAIT=5000
  52. #ETCD_PROXY_REFRESH_INTERVAL=30000
  53. #ETCD_PROXY_DIAL_TIMEOUT=1000
  54. #ETCD_PROXY_WRITE_TIMEOUT=5000
  55. #ETCD_PROXY_READ_TIMEOUT=0
  56. #[security]
  57. {% if etcd_url_scheme == 'https' -%}
  58. ETCD_TRUSTED_CA_FILE={{ etcd_ca_file }}
  59. ETCD_CLIENT_CERT_AUTH=true
  60. ETCD_CERT_FILE={{ etcd_cert_file }}
  61. ETCD_KEY_FILE={{ etcd_key_file }}
  62. {% endif -%}
  63. #ETCD_AUTO_TLS=false
  64. {% if etcd_peer_url_scheme == 'https' -%}
  65. ETCD_PEER_TRUSTED_CA_FILE={{ etcd_peer_ca_file }}
  66. ETCD_PEER_CLIENT_CERT_AUTH=true
  67. ETCD_PEER_CERT_FILE={{ etcd_peer_cert_file }}
  68. ETCD_PEER_KEY_FILE={{ etcd_peer_key_file }}
  69. {% endif -%}
  70. #ETCD_PEER_AUTO_TLS=false
  71. #[logging]
  72. ETCD_DEBUG={{ etcd_debug | default(false) | bool | string }}
  73. {% if etcd_log_package_levels is defined %}
  74. ETCD_LOG_PACKAGE_LEVELS={{ etcd_log_package_levels }}
  75. {% endif %}
  76. #[profiling]
  77. #ETCD_ENABLE_PPROF=false
  78. #ETCD_METRICS=basic
  79. #
  80. #[auth]
  81. #ETCD_AUTH_TOKEN=simple