aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBin Yang <bin.yang@windriver.com>2019-06-10 00:50:02 +0000
committerGerrit Code Review <gerrit@onap.org>2019-06-10 00:50:02 +0000
commitf30199f018ae167df804c23079eb4bcec6c10f34 (patch)
tree9fea7afccdc9dfb32cf17486f51e8da1fd7b7b02
parent047872661b83422149ccf4b46defb5f90f3e7c54 (diff)
parent540c5b56469b52fdaccee624f582ce1c3e06efe9 (diff)
Merge changes I798b9dd9,I36b65dd2
* changes: Remove the requirement to run aio.sh as root Documentation update for aio.sh CI change
-rw-r--r--docs/bare_metal_provisioning.rst49
-rw-r--r--docs/index.rst6
-rw-r--r--docs/kud_architecture.rst (renamed from docs/krd_architecture.rst)20
-rwxr-xr-xkud/hosting_providers/baremetal/aio.sh7
-rwxr-xr-xkud/hosting_providers/vagrant/installer.sh1
5 files changed, 29 insertions, 54 deletions
diff --git a/docs/bare_metal_provisioning.rst b/docs/bare_metal_provisioning.rst
index 2cb74afe..885ffea3 100644
--- a/docs/bare_metal_provisioning.rst
+++ b/docs/bare_metal_provisioning.rst
@@ -13,11 +13,11 @@
Bare-Metal Provisioning
***********************
-The Kubernetes Reference Deployment, aka KRD, has been designed to be consumed
-by Virtual Machines as well as Bare-Metal servers. The *vagrant/aio.sh*
+The Kubernetes Deployment, aka KUD, has been designed to be consumed
+by Virtual Machines as well as Bare-Metal servers. The *baremetal/aio.sh*
script contains the bash instructions for provisioning an All-in-One Kubernetes
deployment in a Bare-Metal server. This document lists the Hardware & Software
-requirements and walkthrough the instructions that *vagrant/aio.sh* contains.
+requirements and walkthrough the instructions that *baremetal/aio.sh* contains.
Hardware Requirements
#####################
@@ -37,36 +37,28 @@ Software Requirements
- Ubuntu Server 16.04 LTS
-vagrant/aio.sh
-##############
+baremetal/aio.sh
+################
This bash script provides an automated process for deploying an All-in-One
-Kubernetes cluster. Given that the ansible inventory file created by this
-script doesn't specify any information about user and password, it's necessary
-to execute this script as root user.
+Kubernetes cluster.
The following two instructions start the provisioning process.
.. code-block:: bash
$ sudo su
- # wget -O - https://git.onap.org/multicloud/k8s/plain/vagrant/aio.sh | bash
+ # git clone https://git.onap.org/multicloud/k8s/
+ # cd k8s/kud/hosting_providers/baremetal/
+ # ./aio.sh
In overall, this script can be summarized in three general phases:
-1. Cloning and configuring the KRD project.
+1. Generating Inventory.
2. Enabiling Nested-Virtualization.
-3. Deploying KRD services.
+3. Deploying KUD services.
-**Cloning and configuring the KRD project**
-
-KRD requires multiple files(bash scripts and ansible playbooks) to operate.
-Therefore, it's necessary to clone the *ONAP multicloud/k8s* project to get
-access to the *vagrant* folder.
-
-.. code-block:: bash
-
- git clone https://git.onap.org/multicloud/k8s/
+**Inventory**
Ansible works agains multiple systems, the way for selecting them is through the
usage of the inventory. The inventory file is a static source for determining the
@@ -102,17 +94,10 @@ an inventory file for addressing those tasks to localhost.
kube-master
EOL
-KRD consumes kubespray_ for provisioning a Kubernetes base deployment. As part
-of the deployment process, this tool downloads and configures *kubectl* binary.
-This action conflicts with *andrewrothstein.kubectl* ansible role. Therefore is
-necessary to remove those instructions from all the ansible playbooks.
+KUD consumes kubespray_ for provisioning a Kubernetes base deployment.
.. _kubespray: https://github.com/kubernetes-incubator/kubespray
-.. code-block:: bash
-
- # sed -i '/andrewrothstein.kubectl/d' playbooks/configure-*.yml
-
Ansible uses SSH protocol for executing remote instructions. The following
instructions create and register ssh keys which avoid the usage of passwords.
@@ -124,7 +109,7 @@ instructions create and register ssh keys which avoid the usage of passwords.
**Enabling Nested-Virtualization**
-KRD installs Virtlet_ Kubernetes CRI for running Virtual Machine workloads.
+KUD installs Virtlet_ Kubernetes CRI for running Virtual Machine workloads.
Nested-virtualization gives the ability of running a Virtual Machine within
another. The *node.sh* bash script contains the instructions for enabling
Nested-Virtualization.
@@ -135,14 +120,14 @@ Nested-Virtualization.
# ./node.sh
-**Deploying KRD services**
+**Deploying KUD services**
Finally, the KRD provisioning process can be started through the use of
*installer.sh* bash script. The output of this script is collected in the
-*krd_installer.log* file for future reference.
+*kud_installer.log* file for future reference.
.. code-block:: bash
- # ./installer.sh | tee krd_installer.log
+ # ./installer.sh | tee kud_installer.log
.. image:: ./img/installer_workflow.png
diff --git a/docs/index.rst b/docs/index.rst
index 173076b4..7a49b6d1 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -8,7 +8,7 @@ over cloud regions that support Kubernetes as the orchestrator.
Kubernetes Reference Deployment
===============================
-The Kubernetes Reference Deployment(KRD) provides an
+The Kubernetes Reference Deployment(KUD) provides an
automated mechanism to install and configure the Kubernetes
services required for the MultiCloud Kubernetes plugin.
@@ -18,6 +18,6 @@ Table of contents
.. toctree::
:maxdepth: 3
- KRD Project Architecture <krd_architecture>
- Bare Metal All-in-One KRD deployment<bare_metal_provisioning>
+ KUD Project Architecture <kud_architecture>
+ Bare Metal All-in-One KUD deployment<bare_metal_provisioning>
Kubernetes MultiCloud API sample ommands <sampleCommands>
diff --git a/docs/krd_architecture.rst b/docs/kud_architecture.rst
index f188135e..f56b72a5 100644
--- a/docs/krd_architecture.rst
+++ b/docs/kud_architecture.rst
@@ -10,7 +10,7 @@
limitations under the License.
****************
-KRD Architecture
+KUD Architecture
****************
This document explains the different components of the Kubernetes
@@ -78,13 +78,7 @@ installer.sh
############
Main bash script that installs dependencies and executes ansible
-playbooks for provisioning KRD components on external nodes. This
-script uses some arguments for the additional installation of
-components. For more information about its usage:
-
-.. code-block:: bash
-
- ./installer.sh -h
+playbooks for provisioning KUD components on external nodes.
inventory/
##########
@@ -116,17 +110,17 @@ This folder contains a set of Ansible playbooks which perform the
tasks required for configuring services like Multus, Virtlet and/or
OVN.
-playbooks/configure-krd.yml
+playbooks/configure-kud.yml
***************************
This ansible playbook collects the common actions among all the
-Kubernetes AddOns offered by the KRD.
+Kubernetes AddOns offered by the KUD.
-playbooks/krd-vars.yml
+playbooks/kud-vars.yml
************************
This file centralizes the version numbers and source URLs used for
-different components offered by the KRD. Bumping a version requires
+different components offered by the KUD. Bumping a version requires
extensive testing to ensure compatibility.
setup.sh
@@ -158,5 +152,5 @@ tests/
This folder contains the health check scripts that guarantee the
proper installation/configuration of Kubernetes AddOns. Its
execution is disabled by default. In order to enable it, it's
-necessary to pass the *-t* argument to the **installer.sh** bash
+necessary to export KUD_ENABLE_TESTS=true environment variable before calling the **installer.sh** bash
script, usually through changing the arguments in the *Vagrantfile*.
diff --git a/kud/hosting_providers/baremetal/aio.sh b/kud/hosting_providers/baremetal/aio.sh
index 5b448183..416a1fef 100755
--- a/kud/hosting_providers/baremetal/aio.sh
+++ b/kud/hosting_providers/baremetal/aio.sh
@@ -12,11 +12,6 @@ set -o errexit
set -o nounset
set -o pipefail
-if [[ $(whoami) != 'root' ]];then
- echo "This bash script must be executed as root user"
- exit 1
-fi
-
aio_dir=$(cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd)
cd ${aio_dir}/../vagrant
@@ -53,7 +48,7 @@ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod og-wx ~/.ssh/authorized_keys
echo "Enabling nested-virtualization"
-./node.sh
+sudo ./node.sh
echo "Deploying KUD project"
./installer.sh | tee kud_installer.log
diff --git a/kud/hosting_providers/vagrant/installer.sh b/kud/hosting_providers/vagrant/installer.sh
index 346e2f69..c7715b59 100755
--- a/kud/hosting_providers/vagrant/installer.sh
+++ b/kud/hosting_providers/vagrant/installer.sh
@@ -196,6 +196,7 @@ function _print_kubernetes_info {
echo "Admin password: secret" >> $k8s_info_file
}
+sudo -k # forgot sudo password
if ! sudo -n "true"; then
echo ""
echo "passwordless sudo is needed for '$(id -nu)' user."