This guide describes the installation of A&AI via OOM. Note: the guide could be out-of-sync with the installation procedure anytime as OOM changes versions and dependencies and the changes are not reflected here.
In order to install A&AI on a barebone Ubuntu 16.04 machine we have to install these apps:
- Docker
- Kubernetes
- Helm
- OOM
Docker installation
This is just a run-of-the-mill docker installation
sudo apt-get remove docker docker-engine docker.io sudo apt-get install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" sudo apt-get install docker-ce
Kubernetes Installation
We install kubernetes with flannel and (in the last step) make master schedulable:
sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - sudo apt-get install kubelet kubeadm kubectl kubernetes-cni sudo kubeadm init --pod-network-cidr=10.244.0.0/16 mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/v0.10.0/Documentation/kube-flannel.yml kubectl taint nodes --all node-role.kubernetes.io/master-
Hel(l)m
We need a specific version of helm (so don't install the newest), we also need to create a service account (otherwise we are unable to install from the local helm repository), we install tiller and add the repository itself
wget http://storage.googleapis.com/kubernetes-helm/helm-v2.9.1-linux-amd64.tar.gz tar -zxvf helm-v2.9.1-linux-amd64.tar.gz sudo mv linux-amd64/helm /usr/local/bin/helm helm version kubectl create serviceaccount --namespace kube-system tiller kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller helm init kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec": {"serviceAccount":"tiller"}}}}' helm serve & helm repo add local http://127.0.0.1:8879
OOM
The installation is straightforward. Before running ONAP we must customize what projects should be enabled in the oom/kubernetes/onap/values.yaml file. As we want to run A&AI, we should have
aai: enabled: true
and on all other ONAP projects enabled shoudl be set to false (i.e. "enabled: false")
git clone -b beijing http://gerrit.onap.org/r/oom cd oom/kubernetes make all helm install local/onap -f onap/values.yaml --version 2.0.0 -n onap --namespace onapns
When you do
kubectl get pods --all-namespaces
you should see kubernetes and ONAP pods running