Använda Juju Charms för att enkelt distribuera tjänster i Ubuntu
En av Ubuntus största fördelar är APT-paketets enkelhet. Du hittar ett skrivbordsprogram du vill ha, utfärdar ett kommando, och det är redo att köra. För applikation på serverns sida installerar dock denna APT-installation ibland bara de filer som du behöver köra programmet - du måste själv konfigurera och köra programmet (ofta en tjänst eller en demon). Men juju- systemet syftar till att göra åtkomst till serverbaserade program lika enkla som för skrivbordet. Så här använder du den.
Installation och inledande inställning
Installera juju är lite mer involverad än, till exempel, installera en LAMP-stack med tasksel, eftersom den är utformad för molnmiljöer. Först måste vi installera juju och dess beroenden:
sudo apt-få installera juju libvirt-bin lxc apt-cacher-ng libzookeeper-java zookeeper
Obs! När det finns en version av juju i Universums repositories for Precise, har "Juju hackers" -laget några PPAs med uppdaterade versioner. Jag använder versionen från repositorierna.
När det här är klart måste du skapa en SSH-nyckel för din server om du inte redan har en:
ssh-keygen -t rsa
Slutligen måste din användare vara en grupp som är associerad med virtualiseringsdemon libvirtd :
sudo usermod -a -G libvirtd [ditt användarnamn]
Detta beror på att din juju-miljö faktiskt är en virtuell Ubuntu-miljö inom din nuvarande maskin. Därefter måste du initiera "bootstrap" -processen, där den här virtuella miljön hämtas och installeras:
juju bootstrap
hoppsan! Vi saknar en konfigurationsfil ... tack och lov, juju har åtminstone skapat ett exempel för oss. Med hjälp av din textredigerare redigerar du filen ~ / .juju / environments.yaml för att matcha följande:
default: wordpress environments: wordpress: typ: local admin-secret: [skapa en unik fras här] default-serie: exakt data-dir: / home / [ditt användarnamn] / [en katalog du väljer]
Om du nu kan ta ner servern kommer omstart att säkerställa att alla tjänster startas korrekt. Låt oss få lite charm .
Installera och springa charms
Som nämnts liknar Charms APT-paket, men är också inriktade på alla saker som måste hända för att få en tjänst igång. Vi distribuerar en instans av WordPress som ett exempel här med följande kommando:
juju deploy wordpress
Nu borde vi kunna gå till IP-adressen på vår server och komma till bloggar ... vi kan bekräfta att WordPress körs med följande kommando:
juju status
Men vänta, det finns ett fel här! Detta beror på att juju inte hanterar beroenden automatiskt. WordPress kräver att en MySQL-databas ska fungera, och det har inte installerats automatiskt. Låt oss få den här inställningen:
juju distribuera mysql
Nu måste vi ansluta de två tillsammans:
juju add-relation wordpress mysql
Till sist, låt oss göra det synligt för världen:
juju avslöja wordpress
Vid denna punkt är den svåraste delen av processen: tålamod . Även om dessa kommandon har verkade slutföra, kommer det faktiskt att finnas ett stort antal saker som händer i bakgrunden - speciellt nedladdningen, installationen och konfigurationen av den virtuella Ubuntu-miljön. Du märker två listor under "services:" när du utfärdar juju status
, en som heter "wordpress" (det här är själva WordPress-instansen) och "mysql" (det här är MySQL-förekomsten). Under varje, det finns en "agent-state" -linje, som sannolikt kommer att säga "väntar". Du kan också höra din hårddisk churning ... det är OK, det är bara en massa paket som installeras (kolla resultatet av ps ax
att se några av vad som händer).
Det är tillräckligt att säga att du måste vänta tills båda servicelistan " agent-state: startade ". Fortsätt använda juju status
att kontrollera framstegen. När de båda är startade kan du se din WordPress-installation genom att besöka IP-adressen som anges i "public-adress" -raden för utgången av juju status
(min var http://10.0.3.66).