--- # Set to false to only do certificate management etcd_cluster_setup: true etcd_events_cluster_setup: false # Set to true to separate k8s events to a different etcd cluster etcd_events_cluster_enabled: false etcd_backup_prefix: "/var/backups" etcd_data_dir: "/var/lib/etcd" etcd_events_data_dir: "/var/lib/etcd-events" etcd_config_dir: /etc/ssl/etcd etcd_cert_dir: "{{ etcd_config_dir }}/ssl" etcd_cert_group: root # Note: This does not set up DNS entries. It simply adds the following DNS # entries to the certificate etcd_cert_alt_names: - "etcd.kube-system.svc.{{ dns_domain }}" - "etcd.kube-system.svc" - "etcd.kube-system" - "etcd" etcd_cert_alt_ips: [] etcd_script_dir: "{{ bin_dir }}/etcd-scripts" etcd_heartbeat_interval: "250" etcd_election_timeout: "5000" # etcd_snapshot_count: "10000" # Parameters for ionice # -c takes an integer between 0 and 3 or one of the strings none, realtime, best-effort or idle. # -n takes an integer between 0 (highest priority) and 7 (lowest priority) # etcd_ionice: "-c2 -n0" etcd_metrics: "basic" # Uncomment to set a separate port for etcd to expose metrics on # etcd_metrics_port: 2381 ## A dictionary of extra environment variables to add to etcd.env, formatted like: ## etcd_extra_vars: ## ETCD_VAR1: "value1" ## ETCD_VAR2: "value2" etcd_extra_vars: {} # Limits # Limit memory only if <4GB memory on host. 0=unlimited etcd_memory_limit: "{% if ansible_memtotal_mb < 4096 %}512M{% else %}0{% endif %}" # etcd_quota_backend_bytes: "2G" # Uncomment to set CPU share for etcd # etcd_cpu_limit: 300m etcd_blkio_weight: 1000 etcd_node_cert_hosts: "{{ groups['k8s-cluster'] | union(groups.get('calico-rr', [])) | union(groups.get('vault', [])) }}" etcd_compaction_retention: "8" # Force clients like etcdctl to use TLS certs (different than peer security) etcd_secure_client: true # Enable peer client cert authentication etcd_peer_client_auth: true # Number of loop retries etcd_retries: 4