Why use juju ??
Juju is a framework which support deploy applications to any cloud or Ubuntu based environment simple and more flexibility.What is juju charm ??
Charm is individual component which used to manage service. If we get simple service "mysql database" or "wordpress".If you need to deploy these service in to your cloud environment you need to just drag and drop these charms and connect them through GUI.Write Hello world charm.
When you write charm you may use python or bash script as programming languages.In here i will create "Helloworld" charm and then deploy in LXC container.
sudo apt-get install charm-toolsThen create Helloworld charm
charm create hello_world
Then it look like this one.It contains hooks folder and config.yaml and metadata.yaml
Then inside hooks folder there are several scripts files.These are "install" , "config-changed","start","stop","upgrade-charm" and other relation changed and relation joined scripts.
Charm life cycle
In this flow diagram show how scripts inside hooks folder runs.First it runs "install" hook which used to install all the dependencies to the charm.For example if your charm need java or python need to install before start application in your environment you have to mention these dependencies in install hook.
Then It runs "config-changed" hook.It is responsible for act when changing configuration in charms.And then "start" hook runs.It is responsible for start the application.It may be server or service.
And there are other three hooks which are related to changed or add relations to charms.As example if mysql charm need to connect to wordpress charm we have to add relation between mysql and wordpress.
And Last Step it runs "stop" hook.Which is responsible for shutdown all services provided in charm.
No comments:
Post a Comment