Bruke Juju Charms til enkelt å distribuere tjenester i Ubuntu
En av Ubuntus største fordeler er enkelheten i APT-pakkesystemet. Du finner et skrivebordsprogram du ønsker, utsteder en kommando, og den er klar til å kjøre. For applikasjon på server side, installerer denne APT-installasjonen noen ganger bare filene du må kjøre programmet - du må konfigurere og kjøre programmet (ofte en tjeneste eller en demon) selv. Men juju- systemet tar sikte på å få tilgang til serverbaserte programmer så enkle som for skrivebordet. Slik bruker du det.
Installasjon og innledende oppsett
Sette opp juju er litt mer involvert enn for eksempel å installere en LAMP-stabel med tasksel, da den er utviklet for skymiljøer. Først må vi installere juju og dens avhengigheter:
sudo apt-install install juju libvirt-bin lxc apt-cacher-ng libzookeeper-java zookeeper
Merk : Selv om det finnes en versjon av juju i Universe repositories for Precise, har "Juju hackers" -laget noen PPA-er med oppdaterte versjoner. Jeg bruker versjonen fra lagerene.
Når dette er fullført, må du generere en SSH-nøkkel for serveren din, hvis du ikke allerede har en:
ssh-keygen -t rsa
Til slutt må brukeren være en gruppe tilknyttet virtualiseringsdemonen libvirtd :
sudo usermod -a -G libvirtd [brukernavnet ditt]
Dette skyldes at juju-miljøet ditt egentlig er et virtuelt Ubuntu-miljø i din nåværende maskin. Deretter må du starte "bootstrap" -prosessen, der dette virtuelle miljøet lastes ned og installeres:
juju bootstrap
Oops! Vi mangler en konfigurasjonsfil ... heldigvis har juju minst laget et eksempel for oss. Rediger filen ~ / .juju / environments.yaml ved hjelp av tekstredigeringsprogrammet ditt for å matche følgende:
standard: wordpress-miljøer: wordpress: type: lokal admin-hemmelig: [opprett et unikt uttrykk her] standard-serie: presis data-dir: / home / [brukernavnet ditt] / [en katalog du velger]
Nå, hvis du klarer å ta serveren ned, vil omstart sikre at alle tjenestene er startet på riktig måte. La oss få litt sjarm .
Installere og kjøre Charms
Som nevnt, er Charms lik APT-pakker, men er også fokusert på alle de tingene som må skje for å få en tjeneste i gang. Vi distribuerer en forekomst av WordPress som et eksempel her med følgende kommando:
juju distribuere wordpress
Nå skal vi kunne gå til IP-adressen til vår server og komme til blogging ... vi kan bekrefte at WordPress kjører med følgende kommando:
juju status
Men vent, det er en feil her! Dette skyldes at juju ikke håndterer avhengighet automatisk. WordPress krever at en MySQL-database skal fungere, og dette ble ikke installert automatisk. La oss få dette opprettet:
juju distribuere mysql
Nå må vi koble de to sammen:
juju add-relation wordpress mysql
Til slutt, la oss gjøre det synlig for verden:
Juju avsløre wordpress
På dette punktet er den vanskeligste delen av prosessen: tålmodighet . Mens disse kommandoene vil ha virket fullført, vil det faktisk være et stort antall ting som skjer i bakgrunnen - spesielt nedlasting, installasjon og konfigurasjon av det "virtuelle" Ubuntu-miljøet. Du vil legge merke til to oppføringer under "tjenester:" når du utsteder juju status
, en som heter "wordpress" (dette er den faktiske WordPress-forekomsten) og "mysql" (dette er MySQL-forekomsten). Under hver, er det en "agent-state" -linje, som sannsynligvis vil si "ventende". Du kan også høre at harddisken din går i stykker ... det er OK, det er bare mange pakker som blir installert (se resultatene av ps ax
å se noe av det som skjer).
Tilstrekkelig å si, må du vente til begge tjenestelistene " agent-state: startet ." Fortsett å bruke juju status
å sjekke fremdriften. Når de begge er startet, kan du se ditt WordPress-installasjon ved å besøke IP-adressen som er oppført i "public-adress" -linjen for utgangen av juju status
(min var http://10.0.3.66).