Puppet wymaga certyfikatów między zarządzanym klientem (puppet) a serwerem (puppetmaster). Możesz uruchomić ręcznie na kliencie, a następnie przejść na serwer, aby podpisać certyfikat, ale jak zautomatyzować ten proces dla klastrów / maszyn w chmurze?
26
Odpowiedzi:
Na serwerze (puppetmaster) uruchom:
Następnie skopiuj następujące dane z serwera na klienta:
Jeśli chcesz się zalogować
<NAME>
jako coś innego niż nazwa hosta, użyj:I dodaj do /etc/puppet/puppet.conf, jeśli uruchamiasz demona
źródło
puppet cert --generate <NAME>
zobaczyć serverfault.com/a/457364/71452Jeśli masz bazę danych hosta, możesz użyć funkcji automatycznego podpisywania. W swoim
puppet.conf
pliku[puppetmasterd]
dodaj:Następnie użyj crontab, aby wygenerować ten plik. Plik autosign jest tylko listą hostów do autosignu, kiedy po raz pierwszy łączą się z puppetmaster. Używam LDAP do konfigurowania moich hostów lalek, więc mój cron wygląda następująco:
Jestem pewien, że osoby korzystające z iClassify mogłyby napisać zapytanie, aby zrobić to samo.
Oczywiście musisz mieć zaufanie do sieci. Używam tego na EC2. Mój serwer puppetmaster należy do grupy, która zezwala tylko na połączenia z innych zaufanych grup. Nie poleciłbym tego robić, jeśli twój puppetmaster jest otwarty na Internet.
źródło
Prosta odpowiedź: automatycznie podpisuj nowe wnioski. Jest to oczywiście niebezpieczne, ponieważ ślepo ufasz każdemu systemowi, który łączy się z twoim puppetmasterem, co jest celem wymagającym ręcznego podpisywania.
Możesz także określić fałsz i plik, który ma być używany do określania, które klucze należy podpisać.
Zobacz informacje o konfiguracji na wiki Puppet.
Inną opcją jest użycie narzędzia takiego jak Capistrano , w którym określasz węzeł puppetmaster i tworzysz węzły instancji klienta, aw zadaniu:
źródło
[puppetmasterd]
nagłówek sekcji powinien być teraz[master]
. Więcej informacji można znaleźć na docs.puppetlabs.com/guides/tools.html .Na serwerze (puppetmaster) uruchom:
Następnie skopiuj następujące dane z serwera na klienta:
Jeśli chcesz mieć coś innego niż nazwę hosta, użyj:
I dodaj do /etc/puppet/puppet.conf, jeśli uruchamiasz demona
źródło