--- - name: add kubernetes repo copy: src=kubernetes.repo dest=/etc/yum.repos.d/ owner=root group=root mode=644 tags: install # add ElRepo GPG Key - rpm_key: state: present key: https://www.elrepo.org/RPM-GPG-KEY-elrepo.org tags: install - name: add ElRepo (Nvidia kmod drivers) yum: name: http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm state: present tags: install - name: update sysctl to handle incorrectly routed traffic when iptables is bypassed copy: src=k8s.conf dest=/etc/sysctl.d/ owner=root group=root mode=644 tags: install - name: update sysctl command: /sbin/sysctl --system tags: install - name: Install EPEL Repository yum: name=epel-release state=present tags: install #likely need to add a reboot hook in here #- name: update kernel and all other system packages #yum: name=* state=latest #tags: install - name: disable swap command: /sbin/swapoff -a tags: install # Disable selinux - selinux: state: disabled tags: install - name: install common packages yum: name: - gcc - nfs-utils - python-pip - docker - bash-completion - kubelet - kubeadm - kubectl - nvidia-detect state: present tags: install - name: install InfiniBand Support yum: name: "@Infiniband Support" state: present - name: Install KSonnet unarchive: src: https://github.com/ksonnet/ksonnet/releases/download/v0.13.1/ks_0.13.1_linux_amd64.tar.gz dest: /usr/bin/ extra_opts: [--strip-components=1] remote_src: yes exclude: - ks_0.11.0_linux_amd64/CHANGELOG.md - ks_0.11.0_linux_amd64/CODE-OF-CONDUCT.md - ks_0.11.0_linux_amd64/CONTRIBUTING.md - ks_0.11.0_linux_amd64/LICENSE - ks_0.11.0_linux_amd64/README.md tags: install - name: upgrade pip command: /bin/pip install --upgrade pip tags: install #- name: Enable DevicePlugins for all GPU nodes (nvidia-container-runtime-hook) #copy: src=nvidia dest=/usr/libexec/oci/hooks.d/ owner=root group=root mode=755 #tags: install - name: Add KUBE_EXTRA_ARGS to enable GPUs lineinfile: path: /etc/systemd/system/kubelet.service.d/10-kubeadm.conf line: 'Environment="KUBELET_EXTRA_ARGS=--feature-gates=DevicePlugins=true"' insertbefore: 'KUBELET_KUBECONFIG_ARGS=' tags: install - name: Start and Enable docker service service: name: docker state: restarted enabled: yes tags: install - name: Start and Enable Kubernetes - kubelet service: name: kubelet state: restarted enabled: yes tags: install - name: Start and rpcbind service service: name: rpcbind state: restarted enabled: yes tags: install - name: Start and nfs-server service service: name: nfs-server state: restarted enabled: yes tags: install - name: Start and nfs-lock service service: name: nfs-lock state: restarted enabled: yes tags: install - name: Start and nfs-idmap service service: name: nfs-idmap state: restarted enabled: yes tags: install