Vagrant a Puppet na Windows

Klinki

Vagrant a Puppet na Windows
« kdy: 23. 09. 2014, 23:30:05 »
Zdravím,

snažím se rozjet Vagrant a Puppet na Windows. Našel jsem pěknou webovou aplikaci: https://puphpet.com/  na vygenerování konfigurace pro Puppet, ale nelíbí se mi, že rovnou stahuje i moduly. Chtěl bych si ty vygenerované konfiguráky ukládat do GITu, takže bych byl raději,  kdybych tam nedával moduly. Jestli to dobře chápu, tak moduly jsou stejně definovány v souboru Puppetfile, takže by snad mělo jít je nějak snadno stáhnout?

Na netu jsem našel doporučení na https://github.com/mhahn/vagrant-librarian-puppet   ale ten mi bohužel nejde nainstalovat (asi to bude tím, že nemám na počítači nainstalované Ruby).

Je nutné instalovat Ruby? Chtěl bych vývojové prostředí co nejvíce virtualizovat (právě za pomocí Vagrantu a Puppetu), takže bych byl rád, kdyby se to obešlo ideálně téměř bez instalace dodatečných programů na hosta.

Pokud to jinak nepude, tak raději budu ukládat i moduly do GITu (což se mi zatím docela příčí), než abych musel cokoliv dalšího instalovat na hosta..


DK

Re:Vagrant a Puppet na Windows
« Odpověď #1 kdy: 24. 09. 2014, 07:42:08 »
bez ruby se neobejdes, Puppet je v nem napsany (a na virtualserveru musi bezet puppet klient)

Re:Vagrant a Puppet na Windows
« Odpověď #2 kdy: 24. 09. 2014, 08:40:10 »
Puphpet neznám, takže nevím, jak funguje, ale vesměs všechny config management softwary fungují tak, že mají nějaký centrální uzel (salt-master, chef-server), ze kterého si ostatní uzly stahují konfiguraci. Pokud tenhle centrální uzel nechceš mít na Windows (což je asi dobrý nápad, protože instalace a rozchození bývá porod), tak si prostě zprovozni další virtuální mašinu, která bude fungovat jako master. Nody na ni ale pochopitelně musí mít konektivitu.

Pokud vyloženě master node nechceš a chceš na nody doručit předpisy nějak po vlastní ose, tak to většinou jde taky - pro Salt máš návod tady: http://docs.saltstack.com/en/latest/topics/tutorials/quickstart.html pro Chef googli "chef-solo", s puppetem neporadím :)
Tenhle způsob fungování bych ale spíš nepodoručil, hlavně proto, že když funguješ v master-klient režimu, může master předat klientovi jenom ty údaje, který opravdu potřebuje. Pokud budeš všechno kopírovat všude, budeš mít např. všechny hesla ke všem serverům na všech serverech, což fakt není dobrý nápad, nebo si budeš muset zavíst nějakej svůj systém, jak něco kopírovat jenom někam a to už je lepší si rozjet toho normálního mastera...

Jinak generování předpisů nějakým dalším nástrojem považuju za taky špatný nápad - měl bys je psát ručně, abys přesně věděl, co ti kde jede, proč a jak je to nakonfigurovaný. Generování tak možná v případě stejných serverů s různými parametry, ale na to zas ty konfigurační softwary mají nástroje, na jejichž limity narazíš fakt spíš výjimečně.

Pokud ti puppetovské předpisy a konfigurace přijdou moc složité, zkus Ansible (tady na rootu byl seriál) nebo Salt. Salt má tu výhodu, že předpisy prostě bere z disku tak, jak leží a běží, takže s verzováním gitem se dobře integruje. U Chefu je to složitější, protože má verzování vlastní, musíš tam nové verze nahrávat a je to otrava.