Le soluzioni cloud computing offerte da Hosting Solutions permettono di avviare un server in pochi secondi. Il vantaggio del servizio offerto da Hosting Solutions è quello di poter disporre di un cloud server in pochissimo tempo, pagando solamente i minuti di effettivo utilizzo (Pay Per Use). Per la creazione e configurazione del server possiamo consultare questo articolo.
Dopo aver avviato il server possiamo prepararlo per ospitare i siti Web. Il nostro obiettivo è quello di installare ISPConfig, un’applicazione Web che permette di configurare, utilizzando l’interfaccia del browser, tutti i servizi necessari ad un Web server. Questo ci permetterà di amministrare la macchina, creando gli account e la configurazione necessarie per ospitare dei siti Web. Per utilizzare
ISPConfig dobbiamo innanzitutto rimuovere altri pacchetti dal server, come ad esempio Apache.
Iniziamo quindi col fare un po’ di pulizia sull’istanza appena creata, usando come esempio un’istanza Linux Debian 6 con profilo Silver. Ovviamente avremo bisogno di collegarci al server mediante una connessione ssh, come spiegato qui.
Pulizia del server
Prima di rimuovere il software non necessario ricordiamoci che l’istanza appena creata potrebbe non essere aggiornata, quindi il comando apt-get remove potrebbe limitarsi a rimuovere solo i meta-package. Per evitare problemi di questo tipo aggiorniamo il server:
apt-get update
A questo punto rimuoviamo Apache usando il comando
apt-get purge apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils
Digitando s (sì) quando ci viene chiesto “Continuare? [S/n]”.
Infine, per essere sicuri di rimuovere anche le eventuali dipendenze di Apache2 digitiamo
apt-get autoremove
Anche in questo caso digitiamo s quando quando ci viene chiesto se vogliamo continuare l’operazione.
Con questo abbiamo finito di pulire il server. Passiamo adesso alla preparazione dell’ambiente richiesto da ISPConfig. Prima di installare ISPConfig è infatti necessario installare nginx (il web server) e alcune librerie PHP, eseguendo i seguenti comandi
apt-get install nginx
apt-get install php5-fpm
apt-get install php5-cli
apt-get install php5-mysql
Come sempre, se ci viene chiesto “Continuare? [S/n]”, rispondiamo s.
Nel caso qualcosa andasse storto durante l’istallazione di questi pacchetti possiamo provare a consultare l’ultima pagina di questo articolo (sezione Trouble Shooting).
Installazione del database
Per poter funzionare correttamente la nostra installazione di ISPConfig deve appoggiarsi ad un database. Vediamo come preparare un ambiente MySQL, che servirà sia durante il processo di installazione di ISPConfig, sia a regime. Per installare il database eseguiamo il comando
apt-get install mysql-server mysql-client
Anche qui digitiamo s quando quando ci ci viene chiesto se vogliamo continuare l’operazione.
Durante l’istallazione di MySQL ci verrà chiesta la password (due volte).
Al termine dell’installazione possiamo verificare che il database sia avviato usando l’istruzione
ps aux | grep mysql
Oppure possiamo connetterci al database digitando
mysql -u root -p
E inserendo la password digitata durante l’installazione di MySQL. Per uscire dall’interfaccia di amministrazione del database scriviamo quit oppure exit. Quest’ultimo passaggio può essere utile per verificare che la password che abbiamo inserito durante l’installazione sia corretta, onde evitare sorprese.
Infine installiamo postfix:
apt-get install postfix postfix-mysql postfix-doc
Digitando s quando ci viene chiesta la solita domanda. Successivamente ci verrà chiesto il tipo di servizio (scegliamo la voce Sito Internet) e il nome del server (ad esempio: ilmiosito.it). Ovviamente, se vogliamo associare il server ad un certo dominio, in questo caso inseriremo il nome del dominio che ci interessa
Con questo abbiamo finito di preparare l’ambiente richiesto per l’installazione di ISPConfig. Nella prossima lezione vedremo come installare e configurare ISPConfig. Prima di procedere dedichiamo una pagina alla soluzione degli eventuali problemi di installazione, in modo da fornire un esempio concreto di trouble shooting.
Trouble Shooting
La preparazione dell’ambiente necessario per installare ISPConfig è tutto sommato semplice, ovvero non richiede particolari competenze tecniche. Questo però è vero solo se le cose vanno lisce (dopotutto si tratta solo di copiare e incollare le istruzioni che abbiamo visto nelle pagine precedenti). Ricordiamo che è impossibile scrivere delle istruzioni che valgano per sempre. Da un giorno all’altro le librerie, i repository e le immagini delle istanze possono cambiare. Per questo motivo è inevitabile che qualcosa possa andare storto. Anche in questo caso possiamo provare a cavarcela da soli. A titolo di esempio vediamo come risolvere un possibile problema di installazione. Supponiamo che dopo aver digitato il comando
apt-get install php5-fpm
troviamo un errore del genere
Ciò significa che non è stato possibile scaricare e installare la libreria php5-fpm. Come possiamo risolvere problemi di questo tipo? Come prima cosa possiamo vedere se la nostra distribuzione Linux è in grado di trovare la libreria mancante, usando il comando
apt-cache search php5 | grep fpm
Se l’istruzione non ritorna alcun risultato significa che il nostro server non è in grado di trovare la libreria mancante. In questo caso una soluzione molto semplice consiste nell’aggiungere un nuovo repository. Ad esempio, se stiamo lavorando su una macchina Debian e non troviamo la libreria php5-fpm, possiamo cercare su Google le seguenti parole: “Debian repository php5-fpm”. Ogni repository dovrebbe avere una sezione di nome “Instructions”, “Documentation”, “Howto”, “Setup” o qualcosa del genere. Ad esempio vediamo come seguire le istruzioni riportate qui.
http://www.dotdeb.org/instructions/
Spostiamoci nella directory dove si trova il file sources.list e editiamolo:
cd /etc/apt
vi sources.list
Questo file dovrebbe contenere la lista dei repository, ad esempio:
deb http://ftp.it.debian.org/debian/ squeeze main
deb-src http://ftp.it.debian.org/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main
deb http://ftp.it.debian.org/debian/ squeeze-updates main
deb-src http://ftp.it.debian.org/debian/ squeeze-updates main
In fondo a questa lista aggiungiamo il repository trovato dopo la ricerca su Google
deb http://packages.dotdeb.org squeeze all
deb-src http://packages.dotdeb.org squeeze all
poi, dopo aver salvato il file, eseguiamo le seguenti istruzioni
wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | apt-key add –
apt-get update
A questo punto il nostro sistema dovrebbe essere in grado di installare le librerie mancanti, recuperandole dal nuovo repository. Nel caso specifico della libreria php5-fpm possiamo procedere con l’installazione, ovvero eseguire il comando che prima non era andato a buon fine
apt-get install php5-fpm
L’esempio appena visto può essere applicato in qualsiasi contesto, ovviamente usando il nome della libreria specifica che non riusciamo ad installare e seguendo la procedura di configurazione dei repository che troviamo dopo la ricerca sul Web. Procedendo in questo modo siamo teoricamente in grado di risolvere qualunque problema di installazione.