The daemon in puppets

Download The daemon in puppets

Post on 25-Dec-2014

193 views

Category:

Technology

0 download

Embed Size (px)

DESCRIPTION

 

TRANSCRIPT

<ul><li> 1. The Daemon in Puppets by Edward Tan (... next)1/25 </li> <li> 2. Disclaimer I only represent myself and no one/company/entity else. I solemnly, sincerely and truly declare and affirm that I will tell the truth, the whole truth and nothing but the truth. (... next)2/25 </li> <li> 3. Before Starting * How many of you heard about FreeBSD? * How many admins here? * BSD? * Linux? * Other unix? * windows??? :p gotta ask (... next)3/25 </li> <li> 4. Whore you? * Blogger (psybermonkey.net &amp; AboutBSD.net) * Author (BSDMag, second article coming out) * Speaker (of this talk, The Daemon in Puppets) (... next)4/25 </li> <li> 5. What are you doing? * Full time System Administrator * network related * DNS * Radius * Apache * LDAP * Cacti * Nagios * -- snip -- (the list is getting too long) * shells * perl * bourne &amp; again shell * Rest of the time * FreeBSD (... next)5/25 </li> <li> 6. FreeBSD? Whats that? * Unix variant * started from 386BSD, 1993 * advance, complex, sophisticated * OS comes with : * ZFS * PF (packet filter) * 10gbps * IPv6 ready (since y2k) * use by : * companies Apple Cisco Juniper * web Yahoo! Apache Netcraft (... next)6/25 </li> <li> 7. * a true operating system * not just a kernel, but a base comes with it of tools &amp; programs * ports * flexibility of source code * simplicity of package management tools * more then 23,000 applications waiting to be install by mere : "make install" (... next)7/25 </li> <li> 8. * and yet simple directory structured * / root * /dev device nodes * /boot bootstrap needed programs &amp; files * /etc configurations * /usr user land utilities &amp; apps * /usr/ports The FreeBSD ports collection * /usr/local local executables &amp; libraries * /usr/local/share/doc documentations aka doc * /var variable files * /bin user utilities &amp; apps * /sbin system utilities &amp; apps * /mnt directory for mount points * /tmp temporary directory * these clearly defined directories eases organization of information on the disk (... next)8/25 </li> <li> 9. Linus Torvalds once said : "If 386BSD had been available when I started on Linux, Linux would probably never had happened." (... next)9/25 </li> <li> 10. Okay, why is there anything to do with Puppet? * Im taking care of more then 60 servers * 80% of it is FreeBSD * new deployment &amp; migration of these servers are happening * new projects needs new services * hardware refreshment &amp; virtulization is moving these servers around * disaster recovery * automated * redundancy * automated setup of new server requires minimum documentation * policies can be applied automatically * ntpd * sshd * sudoers * resolv.conf * syslogd * etc (... next)10/25 </li> <li> 11. Wow, you need to manage your configs more efficiently. * Some alternative * svn * still required certain amount of work after svn export * OS integration is minimum * e.g. create user configure network card static * doesnt do templating &amp; file line editing * e.g. file_line in stdlib (... next)11/25 </li> <li> 12. * cssh * cool * reduced repetitious work across servers when deployment * but still back to square one when customizing servers (... next)12/25 </li> <li> 13. * Bcfg2/etch * never like HTML (... next)13/25 </li> <li> 14. * Chef * wolf in disguise * not free, at least for modules (... next)14/25 </li> <li> 15. * cfEngine * looks promising * puppet just sound better (... next)15/25 </li> <li> 16. Why Puppet? * excellent documentation * step by step guide * tutorial with Virtual Machine provided * surprisingly easy DSL * client server model * manages other platform also * linux * windows * cisco? * it works with FreeBSD * system * ports installation * user creation * service start/stop/restart * file system * file creation * ownership * available through ports * cd /usr/ports/sysutils/puppet; make install (... next)16/25 </li> <li> 17. But I thought you mention Lazy, Impatience &amp; Hubris? * Lazy * The manifest &amp; modules needs to be setup once and can use many times * Impatience * Puppets excellent DSL &amp; docs give gradual learning curve * only learn what you need to know and implement * Hubris * Manifest &amp; modules are the essence of using (showing off) Puppet (... next)17/25 </li> <li> 18. How do I install Puppet on FreeBSD? * use ports * it requires * ruby * portupgrade * others ... (... next)18/25 </li> <li> 19. Enough said, can you show me? * expect these : * "Puppetless" installation &amp; configuration of FreeBSD * apache22 * vhost * test page * Puppet master FreeBSD installation * installation Puppet * dependency installation * Puppet master configuration * client installation * requirement installations * first sign up of puppet with puppet master * show off manifest of * installation of ports * user environment settings * bash * vim * ssh * tmux * sudoers * apache22 * vhost * test page (... next)19/25 </li> <li> 20. (youre suppose to be showing off Puppet on FreeBSD) (... next)20/25 </li> <li> 21. * conclusion after demo * for linux admin, puppet just works * for freebsd admin, puppet just works * for freebsd wannatry, puppet just works (... next)21/25 </li> <li> 22. What I hope to see Puppet in FreeBSD * portmaster instead of portupgrade * new &amp; shiny * patches are active * simple dependency, /bin/sh only (... next)22/25 </li> <li> 23. Question? * Blog : http://psybermonkey.net * Email : edward@psybermonkey.net (... next)23/25 </li> <li> 24. The End ... (... next)24/25 </li> <li> 25. Errata * On slide 14, stating Chef is not Free wasnt true. This was a last minute learning that, there are open source Chefs modules which can be download and use freely. My mistake. Credits * History of FreeBSD - http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/history.html * Quote of Linus Torvalds - http://en.wikiquote.org/wiki/Linus_Torvalds * Quote "Lazy, Impatience &amp; Hubris" was taken from Larry Wall, the creator of Perl - http://en.wikipedia.org/wiki/Larry_Wall The End, seriously this time. :)25/25 </li> </ul>