X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Ftools%2Ftestbed-setup%2Fplaybooks%2F01-host-setup.yaml;h=a9e9989cfe9b5e7434777d139de318c9d9a2a06a;hp=6d644e5054d8718035ae4c02130c3e2dc568461a;hb=ba0d4b44c16a371f9fd8386121995ce81baa668a;hpb=5835b6c33fc1d4d262c07b8bf606dd04118d8eb5 diff --git a/resources/tools/testbed-setup/playbooks/01-host-setup.yaml b/resources/tools/testbed-setup/playbooks/01-host-setup.yaml index 6d644e5054..a9e9989cfe 100644 --- a/resources/tools/testbed-setup/playbooks/01-host-setup.yaml +++ b/resources/tools/testbed-setup/playbooks/01-host-setup.yaml @@ -9,8 +9,6 @@ template: src=files/hosts dest=/etc/hosts owner=root group=root mode=644 - name: copy hostname file template: src=files/hostname dest=/etc/hostname owner=root group=root mode=644 - - name: interfaces file - template: src=files/interfaces dest=/etc/network/interfaces owner=root group=root mode=644 - name: copy grub file template: src=files/grub dest=/etc/default/grub owner=root group=root mode=644 - name: update grub @@ -31,10 +29,14 @@ apt: name=socat state=present - name: install qemu apt: name=qemu-system-x86 state=present + - name: Install packages to allow apt to use a repository over HTTPS + apt: name=apt-transport-https state=present - hosts: virl remote_user: testuser sudo: yes tasks: + - name: interfaces file + template: src=files/interfaces_virl dest=/etc/network/interfaces owner=root group=root mode=644 - name: Add VIRL user user: name=virl shell=/bin/bash comment="VIRL user" password="$6$mJPlK5FKLar6$xxXPP0LRhC7T1yhHtym18Z3nKZweTtfTxzi1WpvVHJ0U/Em1UWcHqfMhRApFp0rsY9jHRuL6FfeFbKPN..uDK." - name: Add VIRL user to sudoers @@ -69,6 +71,8 @@ remote_user: testuser sudo: yes tasks: + - name: interfaces file + template: src=files/interfaces_physical dest=/etc/network/interfaces owner=root group=root mode=644 - name: copy sysctl file template: src=files/90-csit dest=/etc/sysctl.d/90-csit.conf owner=root group=root mode=644 - name: isolcpus and pstate parameter @@ -89,8 +93,6 @@ copy: src=files/cpufrequtils dest=/etc/default/cpufrequtils owner=root group=root mode=0644 - name: Disable IRQ load balancing copy: src=files/irqbalance dest=/etc/default/irqbalance owner=root group=root mode=0644 - - name: Pinning of IRQs - command: for l in `ls /proc/irq`; do echo 1 | sudo tee /proc/irq/$l/smp_affinity; done - name: Disable ondemand service: name=ondemand enabled=no - name: Install cgroup-support @@ -101,6 +103,21 @@ copy: src=files/requirements.txt dest=/tmp/requirements.txt - name: Install PIP requirements pip: requirements=/tmp/requirements.txt + - name: IRQ pinning + lineinfile: + dest: /etc/rc.local + insertbefore: '^exit 0' + line: 'for l in `ls /proc/irq`; do echo 1 | sudo tee /proc/irq/$l/smp_affinity; done' + - name: RCU pinning + lineinfile: + dest: /etc/rc.local + insertbefore: '^exit 0' + line: 'for i in `pgrep rcu[^c]` ; do sudo taskset -pc 0 $i ; done' + - name: CPU writeback mask + lineinfile: + dest: /etc/rc.local + insertbefore: '^exit 0' + line: 'echo 1 | sudo tee /sys/bus/workqueue/devices/writeback/cpumask' - hosts: tg remote_user: testuser sudo: yes @@ -126,4 +143,31 @@ - name: Install lxc apt: name=lxc state=present - name: Disable 80-vpp.conf - command: ln -s /dev/null /etc/sysctl.d/80-vpp.conf + file: + src: /dev/null + dest: /etc/sysctl.d/80-vpp.conf + state: link + - name: Install java + apt: name=openjdk-8-jdk state=present + - name: Add Docker's official GPG key + apt_key: + url: "https://download.docker.com/linux/ubuntu/gpg" + state: present + - name: Add Docker's stable repository + apt_repository: + repo: deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable + state: present + - name: Install Docker CE + apt: name=docker-ce state=present + - name: Add Kubernetes's official GPG key + apt_key: + url: "https://packages.cloud.google.com/apt/doc/apt-key.gpg" + state: present + - name: Add Kubernetes's stable repository + apt_repository: + repo: deb http://apt.kubernetes.io/ kubernetes-xenial main + state: present + - name: Install Kubernetes kubelet + apt: name=kubelet state=present + - name: Install Kubernetes kubeadm + apt: name=kubeadm state=present