Add kubevirt to list of EMCO deployed addons
[multicloud/k8s.git] / kud / deployment_infra / emco / examples / README.md
1 #### SPDX-License-Identifier: Apache-2.0
2 #### Copyright (c) 2021 Intel Corporation
3
4 # Installing KUD addons with emcoctl
5
6 This folder contains KUD addons to deploy with EMCO. The example
7 configuration assumes one edge cluster to deploy to. EMCO needs to be
8 installed on the cluster before deploying these addons and emcoctl
9 needs to be installed and configured for the edge cluster.
10
11 1. Multus CNI
12 2. OVN4NFV K8s Plugin
13 3. Node Feature Discovery
14 4. SR-IOV Network Operator
15 5. SR-IOV Network
16 6. QuickAssist Technology (QAT) Device Plugin
17 7. CPU Manager for Kubernetes
18
19 ## Setup environment to deploy addons
20
21 1. Export environment variables
22    - KUBE_PATH: where the kubeconfig for edge cluster is located, and
23    - HOST_IP: IP address of the cluster where EMCO is installed.
24
25 #### NOTE: For HOST_IP, assuming here that nodeports are used to access all EMCO services both from outside and between the EMCO services.
26
27 2. Customize values.yaml.
28
29     `$ envsubst < values.yaml.example > values.yaml`
30
31 ## Create prerequisites to deploy addons
32
33 Apply the prerequisites. This creates the controllers, one or more
34 clusters, one project, and one default logical cloud. This step is
35 required to be done only once.
36
37     `$ emcoctl apply -f 00-controllers.yaml -v values.yaml`
38     `$ emcoctl apply -f 01-cluster.yaml -v values.yaml`
39     `$ emcoctl apply -f 02-project.yaml -v values.yaml`
40
41 ## Deploying addons
42
43 This deploys the applications listed in the `Addons` and
44 `AddonResources` values.
45
46     `$ emcoctl apply -f 03-addons-app.yaml -v values.yaml`
47     `$ emcoctl apply -f 04-addon-resources-app.yaml -v values.yaml`
48
49 ## Cleanup
50
51 1. Delete addons.
52
53     `$ emcoctl delete -f 04-addon-resources-app.yaml -v values.yaml`
54     `$ emcoctl delete -f 03-addons-app.yaml -v values.yaml`
55
56 2. Cleanup prerequisites.
57
58     `$ emcoctl delete -f 02-project.yaml -v values.yaml`
59     `$ emcoctl delete -f 01-cluster.yaml -v values.yaml`
60     `$ emcoctl delete -f 00-controllers.yaml -v values.yaml`
61
62 #### NOTE: Known issue: Deletion of the resources fails sometimes as some resources can't be deleted before others are deleted. This can happen due to timing issue. In that case try deleting again and the deletion should succeed.