From 974a3c3bf5b71cd6b07c1b4b51044bc535ff4456 Mon Sep 17 00:00:00 2001 From: baigk Date: Wed, 5 Aug 2015 01:31:07 -0400 Subject: support deployment openstack juno with ansible for compass in ubuntu 14.04 JIRA: COMPASS-4 Change-Id: I7adc565325c2a0cbf878b2aea022b31d118748dd Signed-off-by: baigk --- .../adapters/ansible/roles/common/tasks/main.yml | 45 +++++++++++++++++ .../adapters/ansible/roles/common/templates/hosts | 22 +++++++++ .../ansible/roles/common/templates/ntp.conf | 56 ++++++++++++++++++++++ .../ansible/roles/common/templates/pip.conf | 3 ++ .../adapters/ansible/roles/common/vars/Debian.yml | 7 +++ 5 files changed, 133 insertions(+) create mode 100644 deploy/adapters/ansible/roles/common/tasks/main.yml create mode 100644 deploy/adapters/ansible/roles/common/templates/hosts create mode 100644 deploy/adapters/ansible/roles/common/templates/ntp.conf create mode 100644 deploy/adapters/ansible/roles/common/templates/pip.conf create mode 100644 deploy/adapters/ansible/roles/common/vars/Debian.yml (limited to 'deploy/adapters/ansible/roles/common') diff --git a/deploy/adapters/ansible/roles/common/tasks/main.yml b/deploy/adapters/ansible/roles/common/tasks/main.yml new file mode 100644 index 00000000..452f7683 --- /dev/null +++ b/deploy/adapters/ansible/roles/common/tasks/main.yml @@ -0,0 +1,45 @@ +--- +- include_vars: "{{ ansible_os_family }}.yml" + +- name: first update pkgs + apt: update_cache=yes + +- name: install packages + action: "{{ ansible_pkg_mgr }} name={{ item }} state=latest" + with_items: packages + +- name: update hosts files to all hosts + template: src=hosts + dest=/etc/hosts + backup=yes + +- name: get compass-core hostname + local_action: shell hostname + register: name + +- name: get compass-core addr + shell: awk -F'=' '/compass_server/ {print $2}' /etc/compass.conf + register: ip + +- name: update compass-core name and ip to hosts files + shell: echo "# compass\n"{{ ip.stdout_lines[0] }} {{ name.stdout_lines[0] }} >> /etc/hosts + +- name: create pip config directory + file: path=~/.pip state=directory + +- name: get pip source server addr + shell: awk -F'=' '/compass_server/ {print $2}' /etc/compass.conf + register: COMPASS_SERVER + +- name: update pip.conf + template: src=pip.conf dest=~/.pip/pip.conf + +- name: restart ntp + command: su -s /bin/sh -c "service ntp stop; ntpd -gq; hwclock --systohc" + ignore_errors: True + +- name: update ntp conf + template: src=ntp.conf dest=/etc/ntp.conf backup=yes + +- name: restart ntp + service: name=ntp state=restarted enabled=yes diff --git a/deploy/adapters/ansible/roles/common/templates/hosts b/deploy/adapters/ansible/roles/common/templates/hosts new file mode 100644 index 00000000..9d27c0a9 --- /dev/null +++ b/deploy/adapters/ansible/roles/common/templates/hosts @@ -0,0 +1,22 @@ +# compute-controller +10.145.89.136 host-136 +# database +10.145.89.136 host-136 +# messaging +10.145.89.136 host-136 +# storage-controller +10.145.89.138 host-138 +# image +10.145.89.138 host-138 +# identity +10.145.89.136 host-136 +# network-server +10.145.89.138 host-138 +# dashboard +10.145.89.136 host-136 +# storage-volume +10.145.89.139 host-139 +# network-worker +10.145.89.139 host-139 +# compute-worker +10.145.89.137 host-137 diff --git a/deploy/adapters/ansible/roles/common/templates/ntp.conf b/deploy/adapters/ansible/roles/common/templates/ntp.conf new file mode 100644 index 00000000..c6138092 --- /dev/null +++ b/deploy/adapters/ansible/roles/common/templates/ntp.conf @@ -0,0 +1,56 @@ +# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help + +driftfile /var/lib/ntp/ntp.drift + + +# Enable this if you want statistics to be logged. +#statsdir /var/log/ntpstats/ + +statistics loopstats peerstats clockstats +filegen loopstats file loopstats type day enable +filegen peerstats file peerstats type day enable +filegen clockstats file clockstats type day enable + +# Specify one or more NTP servers. + +# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board +# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for +# more information. +server {{ NTP_SERVER_LOCAL }} +server 0.ubuntu.pool.ntp.org +server 1.ubuntu.pool.ntp.org +server 2.ubuntu.pool.ntp.org +server 3.ubuntu.pool.ntp.org + +# Use Ubuntu's ntp server as a fallback. +server ntp.ubuntu.com + +# Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for +# details. The web page +# might also be helpful. +# +# Note that "restrict" applies to both servers and clients, so a configuration +# that might be intended to block requests from certain clients could also end +# up blocking replies from your own upstream servers. + +# By default, exchange time with everybody, but don't allow configuration. +restrict -4 default kod notrap nomodify nopeer noquery +restrict -6 default kod notrap nomodify nopeer noquery + +# Local users may interrogate the ntp server more closely. +restrict 127.0.0.1 +restrict ::1 + +# Clients from this (example!) subnet have unlimited access, but only if +# cryptographically authenticated. +#restrict 192.168.123.0 mask 255.255.255.0 notrust + + +# If you want to provide time to your local subnet, change the next line. +# (Again, the address is an example only.) +#broadcast 192.168.123.255 + +# If you want to listen to time broadcasts on your local subnet, de-comment the +# next lines. Please do this only if you trust everybody on the network! +#disable auth +#broadcastclient diff --git a/deploy/adapters/ansible/roles/common/templates/pip.conf b/deploy/adapters/ansible/roles/common/templates/pip.conf new file mode 100644 index 00000000..4e1309a1 --- /dev/null +++ b/deploy/adapters/ansible/roles/common/templates/pip.conf @@ -0,0 +1,3 @@ +[global] +find-links = http://{{ COMPASS_SERVER.stdout_lines[0] }}/pip +no-index = true diff --git a/deploy/adapters/ansible/roles/common/vars/Debian.yml b/deploy/adapters/ansible/roles/common/vars/Debian.yml new file mode 100644 index 00000000..c763efdc --- /dev/null +++ b/deploy/adapters/ansible/roles/common/vars/Debian.yml @@ -0,0 +1,7 @@ +--- +packages: + - ubuntu-cloud-keyring + - python-pip + - python-dev + - python-mysqldb + - ntp -- cgit 1.2.3-korg