summaryrefslogtreecommitdiffstats
path: root/deployment/playbooks/roles/vmware-guest-setup
diff options
context:
space:
mode:
authorValerii Ponomarov <vponomar@redhat.com>2019-02-07 02:08:23 +0530
committerValerii Ponomarov <vponomar@redhat.com>2019-02-07 02:36:02 +0530
commit25fcd9c5aa4c360eff19ef08fc4e2bdff6147ffd (patch)
tree544cf09479861ee7c434a7f9ece19167c14ddf35 /deployment/playbooks/roles/vmware-guest-setup
parenta6c7dead0d6ddad4dae93a4292891617b50b44a0 (diff)
Add end-to-end OCP 'deployment' functionality
Add end-to-end deployment tool of OpenShift and OpenShift Container Storage on top of VMWare. Added code is modified version of the 'reference-architecture/vmware-ansible' dir from the following repo: https://github.com/vponomaryov/openshift-ansible-contrib Read 'deployment/README.rst' file for more details about the deployment tool. Change-Id: Ic96f252ff786cc1ecf24d27f0ec47e324131e41b
Diffstat (limited to 'deployment/playbooks/roles/vmware-guest-setup')
-rw-r--r--deployment/playbooks/roles/vmware-guest-setup/handlers/main.yaml6
-rw-r--r--deployment/playbooks/roles/vmware-guest-setup/tasks/main.yaml77
-rw-r--r--deployment/playbooks/roles/vmware-guest-setup/templates/chrony.conf.j219
-rw-r--r--deployment/playbooks/roles/vmware-guest-setup/vars/main.yaml3
4 files changed, 105 insertions, 0 deletions
diff --git a/deployment/playbooks/roles/vmware-guest-setup/handlers/main.yaml b/deployment/playbooks/roles/vmware-guest-setup/handlers/main.yaml
new file mode 100644
index 00000000..67898e0c
--- /dev/null
+++ b/deployment/playbooks/roles/vmware-guest-setup/handlers/main.yaml
@@ -0,0 +1,6 @@
+---
+- name: restart chronyd
+ service: name=chronyd state=restarted
+
+- name: restart networking
+ service: name=networking state=restarted
diff --git a/deployment/playbooks/roles/vmware-guest-setup/tasks/main.yaml b/deployment/playbooks/roles/vmware-guest-setup/tasks/main.yaml
new file mode 100644
index 00000000..39dea695
--- /dev/null
+++ b/deployment/playbooks/roles/vmware-guest-setup/tasks/main.yaml
@@ -0,0 +1,77 @@
+---
+- name: Determine if Atomic
+ stat: path=/run/ostree-booted
+ register: s
+ changed_when: false
+ check_mode: no
+
+- name: Init the is_atomic fact
+ set_fact:
+ is_atomic: false
+
+- name: Set the is_atomic fact
+ set_fact:
+ is_atomic: true
+ when: s.stat.exists
+
+- block:
+ - name: be sure all pre-req packages are installed
+ yum: name={{item}} state=installed
+ with_items:
+ - open-vm-tools
+ - PyYAML
+ - perl
+ - python-ipaddress
+ - net-tools
+ - chrony
+ - python-six
+ - iptables
+ - iptables-services
+ - docker{{ '-' + docker_version if docker_version is defined else '' }}
+ - dnsmasq
+ retries: 5
+ delay: 5
+ register: result
+ until: result is succeeded
+
+ - name: be sure openvmtools is running and enabled
+ service: name=vmtoolsd state=started enabled=yes
+
+ when:
+ - not is_atomic | bool
+ - ansible_distribution == "RedHat"
+
+- name: be sure chrony is configured
+ template: src=chrony.conf.j2 dest=/etc/chrony.conf
+ notify:
+ - restart chronyd
+
+- name: set link to localtime
+ command: timedatectl set-timezone {{timezone}}
+
+- name: be sure chronyd is running and enabled
+ service: name=chronyd state=started enabled=yes
+
+- block:
+ - name: (Atomic) Remove extra docker lv from root vg
+ lvol:
+ lv: docker-pool
+ vg: atomicos
+ state: absent
+ force: yes
+ - name: (Atomic) Grow root lv to fill vg
+ lvol:
+ lv: root
+ vg: atomicos
+ size: +100%FREE
+ - name: (Atomic) Grow root fs to match lv
+ filesystem:
+ dev: /dev/mapper/atomicos-root
+ fstype: xfs
+ resizefs: yes
+ - name: (Atomic) Force Ansible to re-gather disk facts
+ setup:
+ filter: 'ansible_mounts'
+ when:
+ - is_atomic | bool
+ - ansible_distribution == "RedHat"
diff --git a/deployment/playbooks/roles/vmware-guest-setup/templates/chrony.conf.j2 b/deployment/playbooks/roles/vmware-guest-setup/templates/chrony.conf.j2
new file mode 100644
index 00000000..b8020cb0
--- /dev/null
+++ b/deployment/playbooks/roles/vmware-guest-setup/templates/chrony.conf.j2
@@ -0,0 +1,19 @@
+# This file is managed by Ansible
+
+server 0.rhel.pool.ntp.org
+server 1.rhel.pool.ntp.org
+server 2.rhel.pool.ntp.org
+server 3.rhel.pool.ntp.org
+
+driftfile /var/lib/chrony/drift
+makestep 10 3
+
+keyfile /etc/chrony.keys
+commandkey 1
+generatecommandkey
+
+noclientlog
+logchange 0.5
+
+logdir /var/log/chrony
+log measurements statistics tracking
diff --git a/deployment/playbooks/roles/vmware-guest-setup/vars/main.yaml b/deployment/playbooks/roles/vmware-guest-setup/vars/main.yaml
new file mode 100644
index 00000000..a951d622
--- /dev/null
+++ b/deployment/playbooks/roles/vmware-guest-setup/vars/main.yaml
@@ -0,0 +1,3 @@
+---
+locale: en_US.UTF-8
+timezone: UTC