stackube/install/README.md
Harry Zhang 8d69865d6e Update with stackube demo
Change-Id: Ib10aa1e860cc17315a04b58bac565807eabf7736
2017-11-18 23:40:06 +08:00

113 lines
2.9 KiB
Markdown

# Setting Up A Multi-nodes Stackube
This page describes how to setup a multi-nodes cluster of Stackube.
## Prerequisites
### Roles
A stackube deployment is comprised by four kinds of nodes: control, network, compute, storage.
- Control
- The control node is where openstack/kubernetes/ceph's control-plane will run.
- **At least one and only one node** (for now).
- Minimum hardware requirements:
- Two network interfaces
- One is for public network connection, with a public IP.
- The other one is for private network connection, with a private IP and MTU >= 1600.
- 8GB main memory
- 50GB disk space
- Network
- The network nodes are where neutron l3/lbaas/dhcp agents will run.
- At least one node.
- Minimum hardware requirements:
- Two network interfaces
- One is as neutron-external-interface. Public IP is not needed.
- The other one is for private network connection, with a private IP and MTU >= 1600.
- 8GB main memory
- 50GB disk space
- Compute
- The compute nodes are where your workloads will run.
- At least one node.
- Minimum hardware requirements:
- One network interface
- For private network connection, with a private IP and MTU >= 1600.
- 8GB main memory
- 50GB disk space
- Storage
- The storage nodes are where ceph-osd(s) will run.
- At least one node.
- Minimum hardware requirements:
- One network interface
- For private network connection, with a private IP and MTU >= 1600.
- 8GB main memory
- 50GB disk space
There is no conflict between any two roles. That means, all of the roles could be deployed on the same node(s).
### Host OS
For now only CentOS 7.x is supported.
### Public IP Pool
A number of public IPs are needed.
## Deploy
All instructions below **must be done on the control node.**
### 1. SSH To The Control Node, And Become Root
```
sudo su -
```
### 2. Enable Password-Less SSH
The control node needs to ssh to all nodes when deploying.
- Generate SSH keys on the control node. Leave the passphrase empty:
```
ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
```
- Copy the key to each node (including the control node itself):
```
ssh-copy-id root@NODE_IP
```
### 3. Clone Stackube Repo
```
git clone https://git.openstack.org/openstack/stackube
```
### 4. Edit The Config File
```
cd stackube/install
vim config_example
```
### 5. Do The Deploy
```
bash deploy.sh config_example
```
If failed, please **do remove** (as shown below) before deploy again.
## Remove
```
bash remove.sh config_example
```