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
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
copy: src=files/sudoers_virl dest=/etc/sudoers.d/virl owner=root group=root mode=660
+ - name: Add post up for additional address
+ copy: src=files/ifup dest=/etc/network/if-up.d/virl owner=root group=root mode=755
- name: Set VIRL user authorized key
authorized_key: user=virl key="{{ lookup('file', '/home/testuser/.ssh/id_rsa.pub') }}"
- - cron:
- name: QEMU log garbage collector
- minute: 0
- hour: 0
- job: "find /var/log/libvirt/qemu -type f -mtime +14 -name 'instance*.log' -delete"
- - cron:
- name: VPP deb package garbage collector
- minute: 0
- hour: 0
- job: "find /tmp -type f -atime +14 -name '*.deb' -delete"
- - cron:
- name: VPP rpm package garbage collector
- minute: 0
- hour: 0
- job: "find /tmp -type f -atime +14 -name '*.rpm' -delete"
- - cron:
- name: NFS scratch dir garbage collector
- minute: 0
- hour: 0
- job: "find /nfs/scratch/ -type d -mtime +1 -name 'session-*' -exec rm -r "{}" \;"
+ - name: install bridge-utils
+ apt: name=bridge-utils state=present
+ - name: Old interface naming
+ command: ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
+ - name: update init for old interface naming
+ command: update-initramfs -u
+ - name: QEMU log garbage collector
+ cron: minute="0" hour="0"
+ name="QEMU log garbage collector"
+ job="find /var/log/libvirt/qemu -type f -mtime +14 -name 'instance*.log' -delete"
+ - name: VPP deb package garbage collector
+ cron: minute="0" hour="0"
+ name="VPP deb package garbage collector"
+ job="find /tmp -type f -atime +14 -name '*.deb' -delete"
+ - name: VPP rpm package garbage collector
+ cron: minute="0" hour="0"
+ name="VPP rpm package garbage collector"
+ job="find /tmp -type f -atime +14 -name '*.rpm' -delete"
+ - name: NFS scratch dir garbage collector
+ cron: minute="0" hour="0"
+ name="NFS scratch dir garbage collector"
+ job="find /nfs/scratch/ -type d -mtime +1 -name 'session-*' -exec rm -r '{}' \\;"
- hosts: tg:sut
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
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
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
apt: name=libtool state=present
- name: Install screen
apt: name=screen state=present
+ - 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