README.md 4.72 KB
Newer Older
Czémán Arnold committed
1
# Circle Project for Cent OS 7 - Salt Installer
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

## Install Salt

```bash
sudo add-apt-repository ppa:saltstack/salt
sudo apt-get update
sudo apt-get install salt-minion
```

## Configure salt
Open the salt minion configuration

```bash
sudo vim /etc/salt/minion
```

Add these lines:

```bash
file_client: local

file_roots:
  base:
    - /home/cloud/salt/salt

pillar_roots:
  base:
    - /home/cloud/salt/pillar
```
## Get the installer
Clone circle installer git repository into cloud home

```bash
Bach Dániel committed
35
git clone https://git.ik.bme.hu/circle/salt.git
36 37 38 39 40 41 42 43 44 45
```

## Change variables
Modify installer.sls file

```
sudo vim salt/pillar/installer.sls
```

Most used variables
46 47 48 49 50 51
-------------------
* user: user who will install the software
* proxy_secret: proxy secret key TODO
* secret_key: secret key TODO
* time zone: the server's time zone, format is region/city
* deployment_type: local or ? TODO
52 53
* **admin_user**: user name to login in as admin on the site
* **admin_pass**: password to login in as admin on the site
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
* database:
   * name: django database's name
   * user: database user
   * password: database user's password
* amqp:
   * user: amqp user
   * password: ampq user's password
   * host: amqp server IP - usually runs at localhost
   * port: amqp server's port
   * vhost: virtual host - specifies the namespace for entities (exchanges and queues) referred to by the protocol
* graphite:
   * user: graphite user
   * password: graphite user's password
   * host: graphite server IP - usually runs at localhost
   * port: graphite server's port
   * vhost: TODO
   * queue: TODO
   * secret_key: graphite's secret key
* cache: cache url - usually pylibmc://127.0.0.1:11211/
* nfs:
   * enabled: nfs is enabled
   * server: nfs server's hostname
   * network: nfs server's network to access files
   * directory: this directory will be shared
78
* storagedriver:
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
   * queue_name: TODO
* fwdriver:
   * queue_name: the server's hostname
   * gateway: the server's gateway
   * EXTERNAL_Net: the server's network
   * external_if: the server's network interface
   * trunk_if: trunk interface TODO
   * management_if: TODO

Other variables
---------------
* agent:
   * repo_name: the agent repository's name
   * repo_revision: revision
* agentdriver:
   * repo_name: the agentdriver repository's name
   * repo_revision: revision
* fwdriver:
   * repo_name: the fwdriver repository's name
   * repo_revision: revision
   * user: fwdriver user name
   * vm_if: vm interface
   * vm_et: vm network
* manager:
   * repo_name: the manager repository's name
   * repo_revision: revision
* monitor-client:
   * repo_name: the monitor-client repository's name
   * repo_revision: revision
* storage-driver:
   * repo_name: the storage-driver repository's name
   * repo_revision: revision
* vm-driver:
   * repo_name: the vm-driver repository's name
   * repo_revision: revision
* vnc-driver:
   * repo_name: the vnc-driver repository's name
   * repo_revision: revision
117 118 119 120 121 122 123 124

## Install Circle
Run the following installation command:

```bash
sudo salt-call state.sls allinone
```

125 126 127 128 129 130
After install, delete agent.conf file:

```bash
sudo rm /etc/init/agent.conf
```

131 132
## Quickstart - Standalone Node

133
### Login
134 135 136 137 138
Log in into the Circle website with admin (the site is accessable on the 443 port). Name and password is in the `salt/pillar/installer.sls`.

### Create Node
To run virtual machines, we need to create nodes - and add to the system. Click on the new icon in the dashboard, Nodes menu.

139
#### Configure Node
140 141 142

To standalone configuration, type the current machine's hostname to Host/name, MAC address to Host/MAC, IP to HOST/IP. Choose managed-vm as VLAN.

143
#### Activate Node
144 145 146 147 148 149 150 151 152 153 154 155

Click on the 'Activate' icon to use the Node.

### Start Virtual Machine

To create new Virtual Machine, we use Templates - images based on previously saved VMs. Currently we haven't got any template - so let's create a new one. Click on Templates/new icon and choose 'Create a new base VM without disk'.

#### Configure Template

Set name, CPU and RAM settings, architecture. Check in the boot menu box, select network and lease, write down, which operating system will you use. Finally, create a template.
> The rows marked with astersk need to be filled.

156
![configure standalone node](_static/images/configure_node.jpg)
157 158 159 160

#### Add disk

Currently we don't have any disks attached to our VM. To add, click on the Resources menu, 'create disk' icon, set the name and size.
161

162
![disk setup](_static/images/disk.jpg)
163 164 165 166

#### Attach ISO

To install an OS, we can use ISO images, to boot from. Click on 'download disk' and type the ISO's URL.
167

168
![download iso](_static/images/iso.jpg)
169

170
### Start Virtual Machine
171 172
Finally, we can run the machine. Click on 'deploy' and start it. You can choose, on which node do you want to run.

Czémán Arnold committed
173
![ubuntu 14.04](_static/images/ubuntu.png)