1 | ============================================= |
---|
2 | Playbooks for administrating WAeUP servers. |
---|
3 | ============================================= |
---|
4 | |
---|
5 | These are materials to use with our servers. |
---|
6 | |
---|
7 | For starters: the tutorial given on |
---|
8 | |
---|
9 | https://github.com/leucos/ansible-tuto |
---|
10 | |
---|
11 | is a really nice hands-on intro to `ansible`. Please read it! |
---|
12 | |
---|
13 | Vagrant |
---|
14 | ======= |
---|
15 | |
---|
16 | In `Vagrantfile` we set up a vagrant environment which provides three |
---|
17 | hosts as virtualbox: |
---|
18 | |
---|
19 | ``vh5.sample.org``, ``vh6.sample.org``, ``vh7.sample.org`` |
---|
20 | |
---|
21 | running Ubuntu 14.04. ``vh5`` represents "virtual host 5" and should |
---|
22 | reflect h5.waeup.org. The same holds for ``vh6`` and ``vh7`` |
---|
23 | accordingly. |
---|
24 | |
---|
25 | The three virtual hosts are for testing any upcoming ansible |
---|
26 | playbooks. They should be used before running playbooks on the real |
---|
27 | hosts! |
---|
28 | |
---|
29 | |
---|
30 | Initialize Vagrant Env |
---|
31 | ---------------------- |
---|
32 | |
---|
33 | You must have `vagrant` installed, if possible in a fairly recent |
---|
34 | version. I (uli) use `vagrant 1.8.1` (latest as time of writing). As |
---|
35 | Ubuntu 14.04 is pretty outdated in that respect, I had to grab a .deb |
---|
36 | package from |
---|
37 | |
---|
38 | https://www.vagrantup.com/downloads.html |
---|
39 | |
---|
40 | that could be installed with:: |
---|
41 | |
---|
42 | $ sudo dpkg -i vagrant_1.8.1_x86_64.deb |
---|
43 | |
---|
44 | |
---|
45 | When everything is in place, change into this directory and run:: |
---|
46 | |
---|
47 | $ vagrant up |
---|
48 | Bringing machine 'vh5' up with 'virtualbox' provider... |
---|
49 | Bringing machine 'vh6' up with 'virtualbox' provider... |
---|
50 | Bringing machine 'vh7' up with 'virtualbox' provider... |
---|
51 | ==> vh5: Importing base box 'ubuntu/trusty32'... |
---|
52 | ... |
---|
53 | |
---|
54 | This will fetch Vagrant virtualbox images for trusty32, i.e. Ubuntu |
---|
55 | 14.04 images, 32bit version (plays nice also on 64bit hosts). |
---|
56 | |
---|
57 | When hosts are being supplied by Hetzner or another hosting provider, |
---|
58 | then we normally get access as `root` user only. Therefore, After base |
---|
59 | init the root accounts of all hosts are enabled with password |
---|
60 | ``vagrant``. This is done by the ansible playbook in |
---|
61 | ``vagrant-provision.yml``. |
---|
62 | |
---|
63 | All three hosts provide ssh access via:: |
---|
64 | |
---|
65 | $ vagrant ssh vh0 |
---|
66 | |
---|
67 | or equivalent commands. They have a user 'vagrant' installed, which |
---|
68 | can sudo without password. |
---|
69 | |
---|
70 | After install all three hosts can also be accessed as `root` using |
---|
71 | password `vagrant` (for example vh5): |
---|
72 | |
---|
73 | $ ssh -l root 192.168.36.10 |
---|
74 | |
---|
75 | See ``Vagrantfile`` for the IP addresses set. |
---|
76 | |
---|
77 | You can halt (all) the virtual hosts with:: |
---|
78 | |
---|
79 | $ vagrant halt |
---|
80 | |
---|
81 | |
---|
82 | |
---|
83 | Ansible Environment |
---|
84 | =================== |
---|
85 | |
---|
86 | The ansible environment should provide ansible roles and playbooks for |
---|
87 | WAeUP related server administration. |
---|
88 | |
---|
89 | The general file-layout and naming should follow |
---|
90 | |
---|
91 | https://docs.ansible.com/ansible/playbooks_best_practices.html#directory-layout |
---|
92 | |
---|