Gate scripts: Update readme to describe multinode deployment
This PS updates the gate script to make multinode developer deployment outside of zuul much clearer. Change-Id: I25cc8c2f101dd0241d715ef7bf2e004cddf43c06
This commit is contained in:
parent
2af464b548
commit
fc82130ceb
@ -6,8 +6,17 @@ locally to aid development and for demonstration purposes. Please note
|
|||||||
that they assume full control of a machine, and may be destructive in
|
that they assume full control of a machine, and may be destructive in
|
||||||
nature, so should only be run on a dedicated host.
|
nature, so should only be run on a dedicated host.
|
||||||
|
|
||||||
Usage
|
Supported Platforms
|
||||||
-----
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Currently supported host platforms are:
|
||||||
|
* Ubuntu 16.04
|
||||||
|
* CentOS 7
|
||||||
|
* Fedora 25
|
||||||
|
|
||||||
|
|
||||||
|
Usage (Single Node)
|
||||||
|
-------------------
|
||||||
|
|
||||||
The Gate scripts use the ``setup_gate.sh`` as an entrypoint and are
|
The Gate scripts use the ``setup_gate.sh`` as an entrypoint and are
|
||||||
controlled by environment variables, an example of use to run the basic
|
controlled by environment variables, an example of use to run the basic
|
||||||
@ -20,10 +29,34 @@ integration test is below:
|
|||||||
export PVC_BACKEND=ceph
|
export PVC_BACKEND=ceph
|
||||||
./tools/gate/setup_gate.sh
|
./tools/gate/setup_gate.sh
|
||||||
|
|
||||||
Supported Platforms
|
|
||||||
~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
Currently supported host platforms are: \* Ubuntu 16.04 \* CentOS 7
|
Usage (Multi Node)
|
||||||
|
------------------
|
||||||
|
|
||||||
With some preparation to docker, and disabling of SELinux operation of
|
To use for a multinode deployment you simply need to set a few extra environment
|
||||||
Fedora 25 is also supported.
|
variables:
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
export INTEGRATION=multi
|
||||||
|
export INTEGRATION_TYPE=basic
|
||||||
|
export PVC_BACKEND=ceph
|
||||||
|
#IP of primary node:
|
||||||
|
export PRIMARY_NODE_IP=1.2.3.4
|
||||||
|
#IP's of subnodes:
|
||||||
|
export SUB_NODE_IPS="1.2.3.5 1.2.3.6 1.2.3.7"
|
||||||
|
#Location of SSH private key to use with subnodes:
|
||||||
|
export SSH_PRIVATE_KEY=/etc/nodepool/id_rsa
|
||||||
|
./tools/gate/setup_gate.sh
|
||||||
|
|
||||||
|
|
||||||
|
Options
|
||||||
|
-------
|
||||||
|
|
||||||
|
Rather than ceph, you may use a nfs based backend. This option is especially
|
||||||
|
useful on old or low spec machines, though is not currently supported with
|
||||||
|
Linux Kernels >=4.10:
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
export PVC_BACKEND=nfs
|
||||||
|
@ -14,15 +14,16 @@
|
|||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
: ${SSH_PRIVATE_KEY:="/etc/nodepool/id_rsa"}
|
: ${SSH_PRIVATE_KEY:="/etc/nodepool/id_rsa"}
|
||||||
|
: ${PRIMARY_NODE_IP:="$(cat /etc/nodepool/primary_node_private | tail -1)"}
|
||||||
|
: ${SUB_NODE_IPS:="$(cat /etc/nodepool/sub_nodes_private)"}
|
||||||
|
|
||||||
sudo chown $(whoami) ${SSH_PRIVATE_KEY}
|
sudo chown $(whoami) ${SSH_PRIVATE_KEY}
|
||||||
sudo chmod 600 ${SSH_PRIVATE_KEY}
|
sudo chmod 600 ${SSH_PRIVATE_KEY}
|
||||||
|
|
||||||
PRIMARY_NODE_IP=$(cat /etc/nodepool/primary_node_private | tail -1)
|
|
||||||
KUBEADM_TOKEN=$(sudo docker exec kubeadm-aio kubeadm token list | tail -n -1 | awk '{ print $1 }')
|
KUBEADM_TOKEN=$(sudo docker exec kubeadm-aio kubeadm token list | tail -n -1 | awk '{ print $1 }')
|
||||||
|
|
||||||
|
|
||||||
SUB_NODE_PROVISION_SCRIPT=$(mktemp --suffix=.sh)
|
SUB_NODE_PROVISION_SCRIPT=$(mktemp --suffix=.sh)
|
||||||
cat /etc/nodepool/sub_nodes_private | while read SUB_NODE; do
|
for SUB_NODE in $SUB_NODE_IPS ; do
|
||||||
cat >> ${SUB_NODE_PROVISION_SCRIPT} <<EOS
|
cat >> ${SUB_NODE_PROVISION_SCRIPT} <<EOS
|
||||||
ssh-keyscan "${SUB_NODE}" >> ~/.ssh/known_hosts
|
ssh-keyscan "${SUB_NODE}" >> ~/.ssh/known_hosts
|
||||||
ssh -i ${SSH_PRIVATE_KEY} $(whoami)@${SUB_NODE} mkdir -p ${WORK_DIR%/*}
|
ssh -i ${SSH_PRIVATE_KEY} $(whoami)@${SUB_NODE} mkdir -p ${WORK_DIR%/*}
|
||||||
|
Loading…
Reference in New Issue
Block a user