From af31faf6e684b9c101f2d3556c26d35e8acd9d2d Mon Sep 17 00:00:00 2001 From: jigen Date: Wed, 1 Jul 2015 16:46:01 +0200 Subject: [PATCH] Documentation on basic server installation, fixed hiera_include default --- README.md | 39 +++++++++++++++++++-------------------- manifests/site.pp | 2 +- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index a6333a7..e8ea6d3 100644 --- a/README.md +++ b/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
 [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  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  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 @ortiche.net gestione@posta.indivia.net` ;
-  2. Se non esiste gia', generare sul server  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  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  su gogs;
-  5. Aggiungere l'utente  al team "Deploy" dell'organizzazione opuppet. 
-  6. Testare eseguendo `git clone --recursive gogs@lattuga.net:opuppet/puppet-deploy.git` sul server 
+#### 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
diff --git a/manifests/site.pp b/manifests/site.pp
index f7556d9..11f11c0 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -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', '')
 }