Juju installation (release 0): Difference between revisions
From OSM Public Wiki
Garciadeblas (talk | contribs) No edit summary |
Garciadeblas (talk | contribs) |
||
Line 43: | Line 43: | ||
=Configuration= | =Configuration= | ||
*In the Juju client, edit /etc/squid-deb-proxy/mirror-dstdomain.acl to add the following lines: | *In the Juju client, edit '''/etc/squid-deb-proxy/mirror-dstdomain.acl''' to add the following lines: | ||
# launchpad personal package archives (disabled by default) | # launchpad personal package archives (disabled by default) | ||
ppa.launchpad.net | ppa.launchpad.net | ||
private-ppa.launchpad.net | private-ppa.launchpad.net | ||
*In the Juju client, | *In the Juju client, restart squid-deb-proxy | ||
sudo service squid-deb-proxy restart | sudo service squid-deb-proxy restart | ||
Line 64: | Line 64: | ||
apt-http-proxy: http://<proxy-ip>:8000 | apt-http-proxy: http://<proxy-ip>:8000 | ||
apt-https-proxy: http://<proxy-ip>:8000 | apt-https-proxy: http://<proxy-ip>:8000 | ||
* | *From Juju client, bootstrap the environment: | ||
juju bootstrap -v # -v so you can see what's going on | juju bootstrap -v # -v so you can see what's going on | ||
* | *From Juju client, test the environment deploying juju-gui: | ||
juju deploy juju-gui --to 0 | juju deploy juju-gui --to 0 | ||
*Access juju-gui through the web browser (https://<jujuserver-ip>) | *Access juju-gui through the web browser (https://<jujuserver-ip>) | ||
Line 83: | Line 83: | ||
state-server-member-status: has-vote | state-server-member-status: has-vote | ||
services: {} | services: {} | ||
juju status --format=tabular | |||
[Services] | |||
NAME STATUS EXPOSED CHARM | |||
juju-gui unknown false cs:trusty/juju-gui-54 | |||
[Units] | |||
ID WORKLOAD-STATE AGENT-STATE VERSION MACHINE PORTS PUBLIC-ADDRESS MESSAGE | |||
juju-gui/0 unknown idle 1.25.5 0 80/tcp,443/tcp 10.95.172.23 | |||
[Machines] | |||
ID STATE VERSION DNS INS-ID SERIES HARDWARE | |||
0 started 1.25.5 10.95.172.23 manual: trusty arch=amd64 cpu-cores=4 mem=3953M | |||
*More about using juju: https://github.com/juju/cheatsheet | *More about using juju: https://github.com/juju/cheatsheet |
Revision as of 15:51, 25 May 2016
VM creation
- Juju Server and Client (single VM)
- Minimum Requirements:
- 4 vCPU
- 4GB RAM
- 40GB disk
- Minimum Requirements:
- Base image: ubuntu-14.04.4-server-amd64
In case you want to install them in separate VMs, the minimum requirements are:
- Juju Server:
- 4 vCPU
- 4GB RAM
- 40GB disk
- Juju Client:
- 2 vCPU
- 2GB RAM
- 20GB disk
- Base image in both cases: ubuntu-14.04.4-server-amd64
Installing required packages and libraries
Install Juju Server
- Create a user (e.g. user osm, pwd osm) and add it to the sudo group.
sudo adduser osm usermod -a -G sudo osm
- Install packages for Juju Server
sudo apt-get install systemd-services lxc
- If required, edit the file /etc/default/lxc-net to change the lxc network addressing. This is only needed if there is overlapping with other network interfaces used by the Juju Server.
For instance, in order to use the subnet 10.0.3.0/24, you could make the following configuration:
LXC_BRIDGE="lxcbr0" LXC_ADDR="10.0.3.1" LXC_NETMASK="255.255.255.0" LXC_NETWORK="10.0.3.0/24" LXC_DHCP_RANGE="10.0.3.2,10.0.3.254" LXC_DHCP_MAX="253"
Install Juju Client
- Install packages for Juju Client
sudo add-apt-repository ppa:juju/stable sudo apt-get update sudo apt-get install juju juju-local juju-quickstart charm-tools squid-deb-proxy
Configuration
- In the Juju client, edit /etc/squid-deb-proxy/mirror-dstdomain.acl to add the following lines:
# launchpad personal package archives (disabled by default) ppa.launchpad.net private-ppa.launchpad.net
- In the Juju client, restart squid-deb-proxy
sudo service squid-deb-proxy restart
- In the Juju client, create file .juju/environments.yaml using the appropriate IP address for the bootstrap host (the Juju server IP address) and for the squid proxy (either the IP address of the LXC bridge - 10.0.3.1 - in case of a single-VM installation, or the IP address of the Juju client in case server and client are running in different VMs).
default: osm0-manual environments: osm0-manual: admin-secret: osm bootstrap-host: <jujuserver-ip> bootstrap-user: osm default-series: trusty type: manual enable-os-refresh-update: False enable-os-upgrade: False apt-http-proxy: http://<proxy-ip>:8000 apt-https-proxy: http://<proxy-ip>:8000
- From Juju client, bootstrap the environment:
juju bootstrap -v # -v so you can see what's going on
- From Juju client, test the environment deploying juju-gui:
juju deploy juju-gui --to 0
- Access juju-gui through the web browser (https://<jujuserver-ip>)
- Additional commands:
juju debug-log # open this in another terminal or tab, so you can see what juju is doing while you type other commands juju status # provides the status. When no charms have been launched, you should see an output like below: environment: osm0-manual machines: "0": agent-state: started agent-version: 1.25.5 dns-name: 10.11.12.13 instance-id: 'manual:' series: trusty hardware: arch=amd64 cpu-cores=4 mem=3953M state-server-member-status: has-vote services: {} juju status --format=tabular [Services] NAME STATUS EXPOSED CHARM juju-gui unknown false cs:trusty/juju-gui-54 [Units] ID WORKLOAD-STATE AGENT-STATE VERSION MACHINE PORTS PUBLIC-ADDRESS MESSAGE juju-gui/0 unknown idle 1.25.5 0 80/tcp,443/tcp 10.95.172.23 [Machines] ID STATE VERSION DNS INS-ID SERIES HARDWARE 0 started 1.25.5 10.95.172.23 manual: trusty arch=amd64 cpu-cores=4 mem=3953M
- More about using juju: https://github.com/juju/cheatsheet