Documentation on basic server installation, fixed hiera_include default
This commit is contained in:
parent
ca541b6193
commit
af31faf6e6
2 changed files with 20 additions and 21 deletions
39
README.md
39
README.md
|
@ -43,7 +43,7 @@ Ovvero della centralizzazione, automazione e documentazione delle configurazioni
|
|||
- **/root/.mrconfig** elenca i repository ed e' parametrizzato in funzione di SITE, HOSTNAME e REPO_ROOT
|
||||
<pre>
|
||||
[DEFAULT]
|
||||
lib = SITE="ortiche" && \
|
||||
lib = SITE="nome_site" && \
|
||||
HOSTFQDN="$(hostname --fqdn)" && HOSTNAME="$(hostname)" && \
|
||||
REPO_ROOT="git@gitlab.com:organization/"
|
||||
[/etc/puppet]
|
||||
|
@ -120,22 +120,17 @@ order = 4
|
|||
- Includo qui i file sensibili per un unico server?
|
||||
|
||||
|
||||
#### Workflow
|
||||
- Aggiungere uno sviluppatore a opuppet su Gogs
|
||||
1. Creare l'utente <developer> dalla pagina di [registrazione](http://git.lattuga.net/user/sign_up). L'indirizzo email deve essere valido per procedere all'attivazione dell'utente;
|
||||
2. Aggiungere l'utente <developer> al team "Developer" dell'organizzazione opuppet.
|
||||
### Installare e configurare un nuovo server
|
||||
|
||||
- Aggiungere un server a opuppet su Gogs
|
||||
1. Creare un indirizzo email da associare all'utente. Per esempio, su indivia, `php vmail.php -na <hostname>@ortiche.net gestione@posta.indivia.net` ;
|
||||
2. Se non esiste gia', generare sul server <hostname> una nuova coppia di chiavi ssh per l'utente root (`ssh-keygen -b 4096 -t rsa`). Se i filename delle chiavi non vengono modificati allora e' sufficiente questo passo, altrimenti sara' necessario aggiungere le entry corrispondenti in `/root/.ssh/config` ;
|
||||
3. Creare l'utente <hostname> dalla pagina di [registrazione](http://git.lattuga.net/user/sign_up). L'indirizzo email deve essere valido per procedere all'attivazione dell'utente;
|
||||
4. Associare la chiave ssh generata, all'utente <hostname> su gogs;
|
||||
5. Aggiungere l'utente <hostname> al team "Deploy" dell'organizzazione opuppet.
|
||||
6. Testare eseguendo `git clone --recursive gogs@lattuga.net:opuppet/puppet-deploy.git` sul server <hostname>
|
||||
#### Creare la configurazione di un nuovo [site]
|
||||
|
||||
- Installare un nuovo server Debian wheezy e configurare Git/puppet
|
||||
1. `wget https://apt.puppetlabs.com/puppetlabs-release-wheezy.deb && dpkg -i puppetlabs-release-wheezy.deb && apt-get update`
|
||||
2. Creare il file `/etc/apt/preferences.d/00-puppet.pref` con le seguente configurazione:
|
||||
#### Configurazione di un server base, senza moduli specifici per site o host
|
||||
1. Installare un nuovo server Debian Wheezy
|
||||
2. Abilitare i backports (necessari per `git-remote-gcrypt`)
|
||||
`echo "deb http://http.debian.net/debian wheezy-backports main" >> /etc/apt/sources.list`
|
||||
3. Aggiungere i repository dei PuppetLabs (per le versioni aggiornate di puppet)
|
||||
`wget https://apt.puppetlabs.com/puppetlabs-release-wheezy.deb && dpkg -i puppetlabs-release-wheezy.deb
|
||||
4. Creare il file `/etc/apt/preferences.d/00-puppet.pref` con le seguente configurazione:
|
||||
`Package: puppet puppet-common
|
||||
Pin: version 3.7*
|
||||
Pin-Priority: 999
|
||||
|
@ -143,11 +138,15 @@ order = 4
|
|||
Package: facter
|
||||
Pin: version 2.3*
|
||||
Pin-Priority: 999`
|
||||
3. Aggiungere la linea `echo "deb http://http.debian.net/debian wheezy-backports main" >> /etc/apt/sources.list && apt-get update`
|
||||
1. Da root `apt-get install puppet git`
|
||||
2. Eliminare i file esistenti per puppet: `rm -rf /etc/puppet`
|
||||
3. Aggiungere l'utente specifico del server sulla piattaforma Gogs (vedi piu' in alto)
|
||||
4. Clonare il repository puppet-deploy al punto della configurazione di puppet: `cd /etc && git clone --recursive gogs@lattuga.net:opuppet/puppet-deploy.git`
|
||||
5. Aggiornare la lista dei pacchetti disponibili
|
||||
`apt-get update`
|
||||
6. Da root `apt-get install puppet git git-remote-gcrypt myrepos`
|
||||
7. Eliminare i file esistenti per puppet `rm -rf /etc/puppet`
|
||||
8. Generare una nuova coppia di chiavi gpg `gpg --gen-key`
|
||||
9. Configurare sul repository git l'account e i permessi per il nuovo server. Questo passo potrebbe non essere indispensabile, dipende dal repository configurato.
|
||||
10. Copiare i file `.mrconfig` e `.mrtrust` forniti sopra in `/root` e configurare le variabili `SITE` e `REPO_ROOT` in `.mrconfig`.
|
||||
11. Eseguire l'update di tutti i moduli `mr -d /etc/ update`
|
||||
12. Lanciare l'esecuzione di puppet `puppet apply -v /etc/puppet/manifests/site.pp`
|
||||
|
||||
- Aggiungere la configurazione di un nuovo server in puppet-deploy
|
||||
- Aggiungere un submodule a puppet-deploy
|
||||
|
|
|
@ -8,5 +8,5 @@ $admin=hiera('host-admin',"root@$::fqdn")
|
|||
notify{"This node is mantained by ${::admin}": }
|
||||
|
||||
node default {
|
||||
hiera_include('host-roles')
|
||||
hiera_include('host-roles', '')
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue