Difference between revisions of "Juju"

From Freephile Wiki
Jump to navigation Jump to search
(remove all the outdated content from 8 or 9 years ago)
Tag: Replaced
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
[[wp:Juju (software)|Juju]] (formerly Ensemble) is an open source service orchestration management tool developed by Canonical Ltd., the company behind [[Ubuntu]]. Juju allows software to be quickly deployed, integrated and scaled on a wide choice of cloud services or servers.
 
[[wp:Juju (software)|Juju]] (formerly Ensemble) is an open source service orchestration management tool developed by Canonical Ltd., the company behind [[Ubuntu]]. Juju allows software to be quickly deployed, integrated and scaled on a wide choice of cloud services or servers.
  
Juju can deploy to LXC <ref>See also: [[Docker]]</ref> (for local environments), OpenStack (for HP Cloud), Windows Azure, Joyent or Amazon EC2
+
Juju can deploy to LXC (for local environments), OpenStack (for HP Cloud), Windows Azure, Joyent or Amazon EC2
 +
 
 +
Kapil Thangavelu wrote [https://github.com/kapilt/juju-digitalocean JuDo] - A juju provider for digital ocean using a client side plugin and manual provisioning.
  
 
== Links ==
 
== Links ==
# https://juju.is/
+
# https://jujucharms.com/get-started
# https://juju.is/docs/juju/tutorial
+
 
# https://charmhub.io/
+
# https://jujucharms.com/docs/1.20/config-manual
 +
# https://jujucharms.com/docs/1.20/config-aws
 +
# https://jujucharms.com/docs/1.20/config-digitalocean
 +
# https://jujucharms.com/docs/1.20/config-vagrant
 +
 
 +
== TLDR ==
 +
<source lang="bash">
 +
sudo add-apt-repository ppa:juju/stable
 +
sudo apt-get install juju-quickstart
 +
sudo apt-get install juju-core
 +
# to just show existing/default
 +
# juju generate-config --show
 +
juju generate-config
 +
# edit to add your AWS KEYS
 +
juju bootstrap
 +
juju status
 +
# assuming it shows a single machine numbered '0'
 +
juju deploy apache2 --to 0
 +
juju deploy mediawiki --to 0
 +
# in our test, this deployed cs:trusty/mediawiki-3
 +
juju deploy mysql --to 0
 +
juju add-relation mediawiki:db mysql
 +
juju expose mediawiki
 +
juju status
 +
juju ssh
 +
</source>
 +
 
 +
Make sure to obtain and assign an "elastic IP" so that the instance has a static IP
 +
 
 +
 
 +
You can see what keys were added to the machine
 +
<code>juju authorised-keys list</code>
 +
and verify the key fingerprint for the key you want to use
 +
<code>ssh-keygen -lf /home/user/.ssh/id_rsa</code>
 +
 
 +
but you have to know/guess what user was installed by your charm
 +
 
 +
<code>ssh -i /home/user/.ssh/id_rsa -o IdentitiesOnly=true -vvv ubuntu@ec2-55-5-555-55.compute-1.amazonaws.com</code>
 +
 
 +
https://jujucharms.com/mediawiki/trusty/3
 +
 
 +
 
 +
== Help ==
 +
<source lang="bash">
 +
juju help
 +
</source>
 +
<pre>
 +
 
 +
Juju -- devops distilled
 +
https://juju.ubuntu.com/
 +
 
 +
Juju provides easy, intelligent service orchestration on top of environments
 +
such as Amazon EC2, HP Cloud, OpenStack, MaaS, or your own local machine.
 +
 
 +
Basic commands:
 +
  juju init            generate boilerplate configuration for juju environments
 +
  juju bootstrap        start up an environment from scratch
 +
 
 +
  juju deploy          deploy a new service
 +
  juju add-relation    add a relation between two services
 +
  juju expose          expose a service
 +
 
 +
  juju help bootstrap  more help on e.g. bootstrap command
 +
  juju help commands    list all commands
 +
  juju help glossary    glossary of terms
 +
  juju help topics      list all help topics
 +
 
 +
Provider information:
 +
  juju help azure-provider      use on Windows Azure
 +
  juju help ec2-provider        use on Amazon EC2
 +
  juju help hpcloud-provider    use on HP Cloud
 +
  juju help local-provider      use on this computer
 +
  juju help openstack-provider  use on OpenStack
 +
</pre>
  
  
{{References}}
 
  
 
[[Category:DevOps]]
 
[[Category:DevOps]]
 
[[Category:Service Orchestration]]
 
[[Category:Service Orchestration]]

Revision as of 22:49, 8 April 2015

Juju (formerly Ensemble) is an open source service orchestration management tool developed by Canonical Ltd., the company behind Ubuntu. Juju allows software to be quickly deployed, integrated and scaled on a wide choice of cloud services or servers.

Juju can deploy to LXC (for local environments), OpenStack (for HP Cloud), Windows Azure, Joyent or Amazon EC2

Kapil Thangavelu wrote JuDo - A juju provider for digital ocean using a client side plugin and manual provisioning.

Links[edit | edit source]

  1. https://jujucharms.com/get-started
  1. https://jujucharms.com/docs/1.20/config-manual
  2. https://jujucharms.com/docs/1.20/config-aws
  3. https://jujucharms.com/docs/1.20/config-digitalocean
  4. https://jujucharms.com/docs/1.20/config-vagrant

TLDR[edit | edit source]

sudo add-apt-repository ppa:juju/stable
sudo apt-get install juju-quickstart
sudo apt-get install juju-core
# to just show existing/default
# juju generate-config --show
juju generate-config
# edit to add your AWS KEYS
juju bootstrap
juju status
# assuming it shows a single machine numbered '0'
juju deploy apache2 --to 0
juju deploy mediawiki --to 0
# in our test, this deployed cs:trusty/mediawiki-3
juju deploy mysql --to 0
juju add-relation mediawiki:db mysql
juju expose mediawiki
juju status
juju ssh

Make sure to obtain and assign an "elastic IP" so that the instance has a static IP


You can see what keys were added to the machine juju authorised-keys list and verify the key fingerprint for the key you want to use ssh-keygen -lf /home/user/.ssh/id_rsa

but you have to know/guess what user was installed by your charm

ssh -i /home/user/.ssh/id_rsa -o IdentitiesOnly=true -vvv ubuntu@ec2-55-5-555-55.compute-1.amazonaws.com

https://jujucharms.com/mediawiki/trusty/3


Help[edit | edit source]

juju help

Juju -- devops distilled
https://juju.ubuntu.com/

Juju provides easy, intelligent service orchestration on top of environments
such as Amazon EC2, HP Cloud, OpenStack, MaaS, or your own local machine.

Basic commands:
  juju init             generate boilerplate configuration for juju environments
  juju bootstrap        start up an environment from scratch

  juju deploy           deploy a new service
  juju add-relation     add a relation between two services
  juju expose           expose a service

  juju help bootstrap   more help on e.g. bootstrap command
  juju help commands    list all commands
  juju help glossary    glossary of terms
  juju help topics      list all help topics

Provider information:
  juju help azure-provider       use on Windows Azure
  juju help ec2-provider         use on Amazon EC2
  juju help hpcloud-provider     use on HP Cloud
  juju help local-provider       use on this computer
  juju help openstack-provider   use on OpenStack