2014-11-07 21:43:07 +00:00
|
|
|
# We are caching the etcd tar file in GCS for reliability and speed. To
|
|
|
|
# update this to a new version, do the following:
|
|
|
|
# 2. Download tar file:
|
|
|
|
# curl -LO https://github.com/coreos/etcd/releases/download/<ver>/etcd-<ver>-linux-amd64.tar.gz
|
|
|
|
# 3. Upload to GCS (the cache control makes :
|
|
|
|
# gsutil cp <tar> gs://kubernetes-release/etcd/<tar>
|
|
|
|
# 4. Make it world readable:
|
|
|
|
# gsutil -m acl ch -R -g all:R gs://kubernetes-release/etcd/
|
|
|
|
# 5. Get a hash of the tar:
|
|
|
|
# shasum <tar>
|
|
|
|
# 6. Update this file with new tar version and new hash
|
|
|
|
|
2015-01-29 23:48:04 +00:00
|
|
|
{% set etcd_version="v2.0.0" %}
|
2014-11-07 21:43:07 +00:00
|
|
|
{% set etcd_tar_url="https://storage.googleapis.com/kubernetes-release/etcd/etcd-%s-linux-amd64.tar.gz"
|
|
|
|
| format(etcd_version) %}
|
2015-01-29 23:48:04 +00:00
|
|
|
{% set etcd_tar_hash="sha1=b3cd41d1748bf882a58a98c9585fd5849b943811" %}
|
2014-09-23 22:54:27 +00:00
|
|
|
|
|
|
|
etcd-tar:
|
|
|
|
archive:
|
|
|
|
- extracted
|
|
|
|
- user: root
|
|
|
|
- name: /usr/local/src
|
|
|
|
- source: {{ etcd_tar_url }}
|
|
|
|
- source_hash: {{ etcd_tar_hash }}
|
|
|
|
- archive_format: tar
|
|
|
|
- if_missing: /usr/local/src/etcd-{{ etcd_version }}-linux-amd64
|
2015-01-29 20:13:19 +00:00
|
|
|
{% if grains['saltversioninfo'] <= (2014, 7, 0, 0) %}
|
2014-11-19 19:33:50 +00:00
|
|
|
- tar_options: xz
|
2015-01-29 20:13:19 +00:00
|
|
|
{% endif %}
|
2014-09-23 22:54:27 +00:00
|
|
|
file.directory:
|
|
|
|
- name: /usr/local/src/etcd-{{ etcd_version }}-linux-amd64
|
|
|
|
- user: root
|
|
|
|
- group: root
|
2014-06-06 23:40:48 +00:00
|
|
|
- watch:
|
2014-09-23 22:54:27 +00:00
|
|
|
- archive: etcd-tar
|
|
|
|
- recurse:
|
|
|
|
- user
|
|
|
|
- group
|
|
|
|
|
|
|
|
etcd-symlink:
|
2014-06-06 23:40:48 +00:00
|
|
|
file.symlink:
|
|
|
|
- name: /usr/local/bin/etcd
|
2014-09-23 22:54:27 +00:00
|
|
|
- target: /usr/local/src/etcd-{{ etcd_version }}-linux-amd64/etcd
|
|
|
|
- force: true
|
|
|
|
- watch:
|
|
|
|
- archive: etcd-tar
|
|
|
|
|
|
|
|
etcdctl-symlink:
|
|
|
|
file.symlink:
|
|
|
|
- name: /usr/local/bin/etcdctl
|
|
|
|
- target: /usr/local/src/etcd-{{ etcd_version }}-linux-amd64/etcdctl
|
|
|
|
- force: true
|
2014-06-06 23:40:48 +00:00
|
|
|
- watch:
|
2014-09-23 22:54:27 +00:00
|
|
|
- archive: etcd-tar
|
2014-06-06 23:40:48 +00:00
|
|
|
|
|
|
|
etcd:
|
|
|
|
group.present:
|
|
|
|
- system: True
|
|
|
|
user.present:
|
|
|
|
- system: True
|
|
|
|
- gid_from_name: True
|
|
|
|
- shell: /sbin/nologin
|
|
|
|
- home: /var/etcd
|
|
|
|
|
|
|
|
/etc/etcd:
|
|
|
|
file.directory:
|
|
|
|
- user: root
|
|
|
|
- group: root
|
|
|
|
- dir_mode: 755
|
|
|
|
|
|
|
|
/etc/etcd/etcd.conf:
|
|
|
|
file.managed:
|
|
|
|
- source: salt://etcd/etcd.conf
|
|
|
|
- user: root
|
|
|
|
- group: root
|
|
|
|
- mode: 644
|
|
|
|
|
|
|
|
/var/etcd:
|
|
|
|
file.directory:
|
|
|
|
- user: etcd
|
|
|
|
- group: etcd
|
|
|
|
- dir_mode: 700
|
2014-12-18 09:29:39 +00:00
|
|
|
- require:
|
|
|
|
- user: etcd
|
|
|
|
- group: etcd
|
2014-06-06 23:40:48 +00:00
|
|
|
|
2015-02-02 16:06:00 +00:00
|
|
|
/var/etcd/data:
|
|
|
|
file.directory:
|
|
|
|
- user: etcd
|
|
|
|
- group: etcd
|
|
|
|
- dir_mode: 700
|
|
|
|
- require:
|
|
|
|
- user: etcd
|
|
|
|
- group: etcd
|
|
|
|
|
2014-07-14 17:50:04 +00:00
|
|
|
{% if grains['os_family'] == 'RedHat' %}
|
|
|
|
|
|
|
|
/etc/default/etcd:
|
|
|
|
file.managed:
|
|
|
|
- source: salt://etcd/default
|
|
|
|
- template: jinja
|
|
|
|
- user: root
|
|
|
|
- group: root
|
|
|
|
- mode: 644
|
|
|
|
|
|
|
|
/usr/lib/systemd/system/etcd.service:
|
|
|
|
file.managed:
|
|
|
|
- source: salt://etcd/etcd.service
|
|
|
|
- user: root
|
|
|
|
- group: root
|
|
|
|
|
|
|
|
{% else %}
|
|
|
|
|
2014-06-06 23:40:48 +00:00
|
|
|
/etc/init.d/etcd:
|
|
|
|
file.managed:
|
|
|
|
- source: salt://etcd/initd
|
|
|
|
- user: root
|
|
|
|
- group: root
|
|
|
|
- mode: 755
|
|
|
|
|
2014-07-14 17:50:04 +00:00
|
|
|
{% endif %}
|
|
|
|
|
2014-06-06 23:40:48 +00:00
|
|
|
etcd-service:
|
|
|
|
service.running:
|
|
|
|
- name: etcd
|
|
|
|
- enable: True
|
|
|
|
- watch:
|
|
|
|
- file: /etc/etcd/etcd.conf
|
2014-07-14 17:50:04 +00:00
|
|
|
{% if grains['os_family'] == 'RedHat' %}
|
|
|
|
- file: /usr/lib/systemd/system/etcd.service
|
|
|
|
- file: /etc/default/etcd
|
|
|
|
{% endif %}
|
2014-09-23 22:54:27 +00:00
|
|
|
- file: etcd-tar
|
|
|
|
- file: etcd-symlink
|
2014-12-18 09:29:39 +00:00
|
|
|
- require:
|
|
|
|
- file: /var/etcd
|
2015-02-02 16:06:00 +00:00
|
|
|
- file: /var/etcd/data
|
2014-12-18 09:29:39 +00:00
|
|
|
- user: etcd
|
|
|
|
- group: etcd
|
2014-06-06 23:40:48 +00:00
|
|
|
|