From 5c1891ec9ffdb91eeb685e1009bc3237e8e4f8e0 Mon Sep 17 00:00:00 2001 From: gdmelloatpoints Date: Fri, 23 Jun 2017 13:49:31 -0400 Subject: [PATCH 1/2] In the etcd container, the etcd data directory is always /var/lib/etcd. Reverting to this value, since `etcd_data_dir` on the host maps to `/var/lib/etcd` in the container. --- roles/etcd/templates/etcd.env.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/etcd/templates/etcd.env.yml b/roles/etcd/templates/etcd.env.yml index 07e200e03..a4bb8d36a 100644 --- a/roles/etcd/templates/etcd.env.yml +++ b/roles/etcd/templates/etcd.env.yml @@ -1,4 +1,4 @@ -ETCD_DATA_DIR={{ etcd_data_dir }} +ETCD_DATA_DIR=/var/lib/etcd ETCD_ADVERTISE_CLIENT_URLS={{ etcd_client_url }} ETCD_INITIAL_ADVERTISE_PEER_URLS={{ etcd_peer_url }} ETCD_INITIAL_CLUSTER_STATE={% if etcd_cluster_is_healthy.rc != 0 | bool %}new{% else %}existing{% endif %} From 649654207fd7f42a6a575fe29a7c197b1ff8ee43 Mon Sep 17 00:00:00 2001 From: gdmelloatpoints Date: Tue, 27 Jun 2017 09:29:47 -0400 Subject: [PATCH 2/2] mount the etcd data directory in the container with the same path as on the host. --- roles/etcd/templates/etcd-rkt.service.j2 | 4 ++-- roles/etcd/templates/etcd.env.yml | 2 +- roles/etcd/templates/etcd.j2 | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/roles/etcd/templates/etcd-rkt.service.j2 b/roles/etcd/templates/etcd-rkt.service.j2 index 4c7fd5be9..580804810 100644 --- a/roles/etcd/templates/etcd-rkt.service.j2 +++ b/roles/etcd/templates/etcd-rkt.service.j2 @@ -15,8 +15,8 @@ ExecStart=/usr/bin/rkt run \ --mount=volume=etc-ssl-certs,target=/etc/ssl/certs \ --volume=etcd-cert-dir,kind=host,source={{ etcd_cert_dir }},readOnly=true \ --mount=volume=etcd-cert-dir,target={{ etcd_cert_dir }} \ ---volume=var-lib-etcd,kind=host,source={{ etcd_data_dir }},readOnly=false \ ---mount=volume=var-lib-etcd,target=/var/lib/etcd \ +--volume=etcd-data-dir,kind=host,source={{ etcd_data_dir }},readOnly=false \ +--mount=volume=etcd-data-dir,target={{ etcd_data_dir }} \ --set-env-file=/etc/etcd.env \ --stage1-from-dir=stage1-fly.aci \ {{ etcd_image_repo }}:{{ etcd_image_tag }} \ diff --git a/roles/etcd/templates/etcd.env.yml b/roles/etcd/templates/etcd.env.yml index a4bb8d36a..07e200e03 100644 --- a/roles/etcd/templates/etcd.env.yml +++ b/roles/etcd/templates/etcd.env.yml @@ -1,4 +1,4 @@ -ETCD_DATA_DIR=/var/lib/etcd +ETCD_DATA_DIR={{ etcd_data_dir }} ETCD_ADVERTISE_CLIENT_URLS={{ etcd_client_url }} ETCD_INITIAL_ADVERTISE_PEER_URLS={{ etcd_peer_url }} ETCD_INITIAL_CLUSTER_STATE={% if etcd_cluster_is_healthy.rc != 0 | bool %}new{% else %}existing{% endif %} diff --git a/roles/etcd/templates/etcd.j2 b/roles/etcd/templates/etcd.j2 index 479d85af8..b0780573c 100644 --- a/roles/etcd/templates/etcd.j2 +++ b/roles/etcd/templates/etcd.j2 @@ -5,7 +5,7 @@ --net=host \ -v /etc/ssl/certs:/etc/ssl/certs:ro \ -v {{ etcd_cert_dir }}:{{ etcd_cert_dir }}:ro \ - -v {{ etcd_data_dir }}:/var/lib/etcd:rw \ + -v {{ etcd_data_dir }}:{{ etcd_data_dir }}:rw \ {% if etcd_memory_limit is defined %} --memory={{ etcd_memory_limit|regex_replace('Mi', 'M') }} \ {% endif %}