123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- # Copyright 2020 Dell Inc. or its subsidiaries. All Rights Reserved.
- #
- # Licensed under the Apache License, Version 2.0 (the "License");
- # you may not use this file except in compliance with the License.
- # You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software
- # distributed under the License is distributed on an "AS IS" BASIS,
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- # See the License for the specific language governing permissions and
- # limitations under the License.
- ---
- #- name: Kick CoreDNS (this is a hack that needs to be fixed)
- #shell: kubectl get pods -n kube-system --no-headers=true | awk '/coredns/{print $1}'|xargs kubectl delete -n kube-system pod
- #tags: init
- - name: Wait for CoreDNS to restart
- shell: kubectl rollout status deployment/coredns -n kube-system
- tags: init
- - name: Deploy MetalLB
- shell: kubectl apply -f https://raw.githubusercontent.com/google/metallb/v0.8.1/manifests/metallb.yaml
- tags: init
- - name: Create MetalLB Setup Config Files
- copy: src=metal-config.yaml dest=/root/k8s/metal-config.yaml owner=root group=root mode=655
- tags: init
- - name: Create MetalLB Setup Deployment Files
- copy: src=metallb.yaml dest=/root/k8s/metallb.yaml owner=root group=root mode=655
- tags: init
- - name: Deploy MetalLB
- shell: kubectl apply -f /root/k8s/metallb.yaml
- tags: init
- - name: Create default setup for MetalLB
- shell: kubectl apply -f /root/k8s/metal-config.yaml
- tags: init
- - name: Start K8S Dashboard
- shell: kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta6/aio/deploy/recommended.yaml
- tags: init
- - name: Helm - Add Stable Repo
- shell: helm repo add stable https://charts.helm.sh/stable
- tags: init
- - name: Helm - Add Nvidia k8s-device-plugin (nvdp) Repo
- shell: helm repo add nvdp https://nvidia.github.io/k8s-device-plugin
- tags: init
- - name: Helm - Add Nvidia GPU Discovery (nvgfd) Repo
- shell: helm repo add nvgfd https://nvidia.github.io/gpu-feature-discovery
- tags: init
- - name: Helm - Update Repo
- shell: helm repo update
- tags: init
- - name: Start NFS Client Provisioner
- shell: helm install stable/nfs-client-provisioner --set nfs.server={{ nfs_server }} --set nfs.path={{ nfs_path }} --generate-name
- tags: init
- - name: Set NFS-Client Provisioner as DEFAULT StorageClass
- shell: "kubectl patch storageclasses.storage.k8s.io nfs-client -p '{\"metadata\": {\"annotations\":{\"storageclass.kubernetes.io/is-default-class\":\"true\"}}}'"
- tags: init
- - name: Prometheus deployment
- shell: helm install stable/prometheus --set alertmanager.persistentVolume.storageClass=nfs-client,server.persistentVolume.storageClass=nfs-client,server.service.type=LoadBalancer --generate-name
- tags: init
- - name: Install MPI Operator
- shell: kubectl create -f https://raw.githubusercontent.com/kubeflow/mpi-operator/master/deploy/v1alpha2/mpi-operator.yaml
- tags: init
- - name: Install nvidia-device-plugin
- shell: helm install --version=0.7.0 --generate-name --set migStrategy={{ MIG_STRATEGY }} nvdp/nvidia-device-plugin
- tags: init
- - name: Install GPU Feature Discovery
- shell: helm install --version=0.2.0 --generate-name --set migStrategy={{ MIG_STRATEGY }} nvgfd/gpu-feature-discovery
- tags: init
|