...
The following instructions assume the user executes all commands as root, to facilitate development and reduce the length of these instructions.
For a production deployment, adaptations should be made to reduce the need for privilege escalation, as well as evaluate security as top-priority.
Requirements:-
- Access to the Internet (proxy considerations are ignored in this documentation).
...
- Ubuntu 18.04 as the operating system (only one tested).
...
- SSH is configured in all machines part of the cluster.
...
- Login as root.
Furthermore, this guide assumes that:-
- There are a total of two machines.
...
- The first machine includes Jenkins, the Kubernetes master nodes and the first worker node.
...
- The second machine only includes the second worker node.
Jenkins and Bluval
Start by installing basic dependencies:
...
Again, this guide assumed that:-
- There are a total of two machines.
...
- The first machine includes Jenkins, the Kubernetes master nodes and the first worker node.
...
- The second machine only includes the second worker node.
The first thing to do is have master node's SSH trust itself, root@localhost.
...
cd ~
apt-get install -y git-review
git clone "https://gerrit.onap.org/r/multicloud/k8s"
cd k8s
git remote add gerrit https://GERRIT_USERNAME@gerrit.onap.org/r/a/multicloud/k8s
git review -s
git review -d 106869106869igordc
Replace all localhost references with $HOSTNAME in KUD's aio.sh:
...
Specifically, the only change for this guide's dual-node deployment is to add the worker node details to the [all]
and [kube-node]
groups, as follows:
In [all]
, add line:
WORKER_NODE_HOSTNAME ansible_ssh_host=WORKER_NODE_IPADDR ansible_ssh_port=22
In [kube-node]
, add line:
WORKER_NODE_HOSTNAME
In installer.sh, disable KUD addons and plugins:
vim kud/hosting_providers/vagrant/installer.sh
The following lines (near the end of the file) can be commented, as such:
# install_addons
# if ${KUD_PLUGIN_ENABLED:-false}; then
# install_plugin
# fi
Finally install Kubernetes with KUD (ansible will automatically install it in the worker node too):
kud/hosting_providers/baremetal/aio.sh
At this point, everything is ready to jump . Jump over to http://localhost:8080, log-in using admin/admin credentials and create a new build for icn-bluval-daily-master.
For the build, here are the recommended parameters to set according to the deployment herein outlined as well as to conform to upstream Bluval logging requirements:
DEPLOY_SCENARIO: master
CLUSTER_MASTER_IP: localhost
CLUSTER_SSH_USER: root
CLUSTER_SSH_PASSWORD: <empty>
CLUSTER_SSH_KEY: /var/lib/jenkins/jenkins-rsa
BLUEPRINT: icn
LAYER: <empty>
VERSION: master
OPTIONAL: no
PULL: yes
LAB_SILO: intel
SETTINGS_FILE: <empty>
And pull the trigger.
Total time to run should be anywhere from 2 to 3 hours on an average server-grade dual-node with good Internet connection (~90% of the time will be spent running the k8s layer conformance testing).
...