2016-07-04 20:13:18 +08:00
|
|
|
Getting started
|
|
|
|
===============
|
|
|
|
|
2017-01-11 00:02:28 +08:00
|
|
|
The easiest way to run the deployement is to use the **kargo-cli** tool.
|
2016-07-04 20:13:18 +08:00
|
|
|
A complete documentation can be found in its [github repository](https://github.com/kubespray/kargo-cli).
|
|
|
|
|
2017-01-11 00:02:28 +08:00
|
|
|
Here is a simple example on AWS:
|
2016-07-04 20:13:18 +08:00
|
|
|
|
|
|
|
* Create instances and generate the inventory
|
|
|
|
|
|
|
|
```
|
|
|
|
kargo aws --instances 3
|
|
|
|
```
|
|
|
|
|
2017-01-11 00:02:28 +08:00
|
|
|
* Run the deployment
|
2016-07-04 20:13:18 +08:00
|
|
|
|
|
|
|
```
|
|
|
|
kargo deploy --aws -u centos -n calico
|
|
|
|
```
|
2016-12-09 17:38:38 +08:00
|
|
|
|
|
|
|
Building your own inventory
|
2017-01-11 00:02:28 +08:00
|
|
|
---------------------------
|
2016-12-09 17:38:38 +08:00
|
|
|
|
|
|
|
Ansible inventory can be stored in 3 formats: YAML, JSON, or inifile. There is
|
|
|
|
an example inventory located
|
2017-01-11 19:46:44 +08:00
|
|
|
[here](https://github.com/kubernetes-incubator/kargo/blob/master/inventory/inventory.example):
|
2016-12-09 17:38:38 +08:00
|
|
|
|
2017-01-11 19:46:44 +08:00
|
|
|
```
|
|
|
|
cp -r inventory my_inventory
|
|
|
|
cp my_inventory/inventory.example my_inventory/inventory.cfg
|
|
|
|
# edit the inventory file as needed
|
|
|
|
```
|
|
|
|
|
|
|
|
Or you can use an
|
2017-01-11 00:02:28 +08:00
|
|
|
[inventory generator](https://github.com/kubernetes-incubator/kargo/blob/master/contrib/inventory_builder/inventory.py)
|
2016-12-09 17:38:38 +08:00
|
|
|
to create or modify an Ansible inventory. Currently, it is limited in
|
|
|
|
functionality and is only use for making a basic Kargo cluster, but it does
|
2017-01-11 19:46:44 +08:00
|
|
|
support creating large clusters. For example:
|
|
|
|
|
|
|
|
```
|
|
|
|
cp -r inventory my_inventory
|
|
|
|
declare -a IPS=(10.10.1.3 10.10.1.4 10.10.1.5)
|
|
|
|
CONFIG_FILE=my_inventory/inventory.cfg python3 contrib/inventory_builder/inventory.py ${IPS}
|
|
|
|
```
|
|
|
|
|
|
|
|
Starting custom deployment
|
|
|
|
--------------------------
|
|
|
|
|
|
|
|
Once you have an inventory, you may want to customize deployment data vars
|
|
|
|
and start the deployment:
|
|
|
|
|
|
|
|
```
|
|
|
|
# Edit my_inventory/groups_vars/*.yaml to override data vars
|
|
|
|
ansible-playbook -i my_inventory/inventory.cfg cluster.yaml -b -v \
|
|
|
|
--private-key=~/.ssh/private_key
|
|
|
|
```
|
|
|
|
|
|
|
|
See more details in the [ansible guide](ansible.md).
|