...
Undercloud Installation
Requirements
Metric | Min | Notes |
---|---|---|
RAM | 37G w/o DCAE 50G with DCAE | Note: you need at least 37g RAM (34 for ONAP services - this is without DCAE yet and without running the vFirewall yet). |
HD | 100G w/o DCAE |
We need a kubernetes installation either a base installation or with a thin API wrapper like Rancher or Redhat
...
(on each host) fix your /etc/hosts to point localhost/127.0.0.1 to your hostname (add your hostname to the end) sudo vi /etc/hosts 127.0.0.1 localhost your-hostname (on each host) Install only the 1.12.x (currently 1.12.6) version of Docker (the only version that works with Kubernetes in Rancher 1.6) (on the master) Install rancher (use 8880 instead of 8080) In Rancher UI (http://127.0.0.1:8880) , (only if you launch rancher with 127.0.0.1/localhost - Set external IP name of master node in config), create a new onap environment as Kubernetes (will setup kube containers), deactivate default cattle environment - this will make the new onap one default register your host(s) - run following on each host (get from "add host" menu) - install docker 1.12 if not already on the host (note the host can be the same machine as the master) curl https://releases.rancher.com/install-docker/1.12.sh | sh install kubectl paste kubectl config from rancher (you will see the CLI menu in Rancher | Kubernetes after the k8s pods are up on your host mkdir ~/.kube vi ~/.kube/config clone oom (scp your onap_rsa private key first) git clone ssh://michaelobrien@gerrit.onap.org:29418/oom or use https ubuntu@obrienk-1:~$ git clone https://michaelnnnn:uHaBPMvR47nnnnnnnnRR3Keer6vatjKpf5A@gerrit.onap.org/r/oom fix nexus3 security temporarily for
vi oom/kubernetes/oneclick/createAll.bash create_namespace() { kubectl create namespace $1-$2 + kubectl --namespace $1-$2 create secret docker-registry regsecret --docker-server=nexus3.onap.org:10001 --docker-username=docker --docker-password=docker --docker-email=email@email.com + kubectl --namespace $1-$2 patch serviceaccount default -p '{"imagePullSecrets": [{"name": "regsecret"}]}' } Wait until all the hosts show green in rancher, then run the script that wraps all the kubectl commands
run the one time config pod - which mounts the volume /dockerdata-nfs contained in the pod config-init. This mount is required for all other ONAP pods to function. Note: the pod will stop after NFS creation - this is normal. cd oom/kubernetes/config Before running pod-config-init.yaml - make sure your config for openstack is setup correctly - so you can deploy the vFirewall VMs for example vi oom/kubernetes/config/docker/init/src/config/mso/mso/mso-docker.json replace for example "identity_services": [{ ~/onap/oom/kubernetes/config# kubectl create -f pod-config-init.yaml pod "config-init" created Note: use only the hardcoded "onap" namespace prefix - as URLs in the config pod are set as follows "workflowSdncadapterCallback": "http://mso.onap-mso:8080/mso/SDNCAdapterCallbackService" Don't run all the pods unless you have at least 50G RAM allocated - if you have a laptop/VM with 16G - then you can only run enough pods to fit in around 11G cd ../oneclick ./createAll.bash -n onap or ./createAll.bash -n onap -a robot|aapc|aai (to bring up a single service at a time) Only if you have >50G run the following (all namespaces) ./createAll.bash -n onap Wait until the containers are all up - you should see... |
...