Snelle start maken met een JuJu omgeving. Ook gelijk klaar om eventuele andere machines toe te voegen. Dit is de manual deployment variant
Middel JuJu kan je snel met 'blokjes' (Charms) applicaties deployen op machines.

Voorbereiding

SSH Keypair aanmaken

Om snel van de ene naar de andere machine te kunnen gaan moet er onder de niet root user een SSH Keypair worden aangemaakt en gedistribueerd over de andere machines.

$ ssh-keygen -t rsa -b 2048
$ cd /home/sander/.ssh
$ cat id_rsa.pub > authorized_keys
$ scp * host2:/home/sander/.ssh/

Beste is om de hostnames op te nemen in de hosts file of om daadwerkelijk DNS te gebruiken. 

Installatie JuJu

Eerste Host

Login met de niet root account 

$ sudo apt-get update
$ sudo apt-get install juju-core -y
$ juju generate-config

Open de configuratie file en wijzig voor het gemak het admin password. Daarnaast ook de hostname van de huidige host invullen. 

$ nano .juju/environments.yaml

Zoek naar manual: en wijzig daaronder de volgende opties
Eventueel kan de header manual: veranderd worden naar een naam die je zelf wil. Zolang type: maar manual blijft

bootstrap-host: <hostnaam>
admin-secret: <password>

Zet de omgeving om naar manual.

$ juju switch manual

Maak de omgeving klaar.

$ juju bootstrap

Als alles goed gaat zijn die de laatste regels in de terminal:

Bootstrapping Juju machine agent
Starting Juju machine agent (jujud-machine-0)
Bootstrap complete
$ juju status

Geeft als output:

environment: handmatig
machines:
 "0":
   agent-state: started
   agent-version: 1.22.6
   dns-name: ubuntu-ska05
   instance-id: 'manual:'
   series: trusty
   hardware: arch=amd64 cpu-cores=2 mem=1987M
   state-server-member-status: has-vote
services: {}

Hosts toevoegen

$ juju add-machine ssh:<hostnaam>

JuJu GUI deployen

$ juju deploy juju-gui
$ juju expose juju-gui

Middels expose wordt de webinterface vanaf extern toegangkelijk. 

JuJu met LXC Containers (Local deployment)

Apart IP-adres per Charm. DHCP server op netwerk deelt ipadressen uit. Ook voor de server. Met fixed IP voor de eerste host niet gelukt
Bewerk /etc/network/interfaces 

$ nano /etc/network/interfaces

Zet eth0 naar manual en voeg de bridge interface toe. Dan ziet de file er als volgt uit.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual

auto br0
iface br0 inet dhcp
	bridge_ports eth0
	bridge_stp off
	bridge_fd 0
	bridge_maxwait 0

Bewerk de LXC config 

$ nano /etc/lxc/default.conf
default.conf
lxc.network.type=veth
lxc.network.link=br0
lxc.network.flags=up

Bewerk /etc/default/lxc-net 

$ nano /etc/default/lxc-net

Let vooral op de eerste optie, die staat bovenaan in de file los van de adres en interface gegevens. De overige opties kunnen uitgeschakeld worden daar de DHCP van het netwerk wordt gebruikt.

USE_LXC_BRIDGE="false"
#LXC_BRIDGE="br0"
#LXC_ADDR="10.0.2.20"
#LXC_NETMASK="255.255.255.0"
#LXC_NETWORK="10.0.2.0/24"
#LXC_DHCP_RANGE="10.0.2.50,10.0.2.99"
#LXC_DHCP_MAX="49"

Reboot de machine om er zeker van te zijn dat alle instellingen zijn overgenomen.

Configureer nu de omgeving voor Local

$ juju generate-config
$ nano .juju/environments.yaml

Zoek naar local: Pas eventueel de naam aan naar iets wat je zelf wilt en voeg de keys admin-secret: en network-bridge: toe.

# https://juju.ubuntu.com/docs/config-local.html
    sariejuju:
        type: local
        admin-secret: secret
        network-bridge: br0

Ga hierna verder zoals hierboven beschreven staat bij JuJu GUI deployen.