SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
login



    Puppetmanaged.org
        How to use it in
            your
         environment



                
id



     uid=500(Yaakov M. Nemoy) gid=500(Human)
         groups=10(wheel),501(Fedora Project
        Ambassador),502(Puppetmanaged.org
    Developer),503(RHCE),666(UMC Utrecht BOFH)



                         
elinks

    ●   Puppetmanaged.org is a collection of (mostly)
        standalone common puppet modules for per
        service deployment of your infrastructure
    ●   It's designed around principles of good
        configuration management




                               
elinks

    ●   Puppet          ●   Zarafa
    ●   Mysql           ●   Openldap
    ●   Apache          ●   Openvpn
    ●   Bind            ●   Postfix
    ●   Cobbler         ●   Monit
    ●   Yum             ●   Munin
    ●   Samba           ●   Nagios
                     
elinks

    ●   Authconfig         ●   Selinux
    ●   Autofs             ●   Ssh
    ●   Func               ●   Sudo
    ●   Iptables           ●   Trac
    ●   NFS                ●   Virt
    ●   NTP                ●   Xen
    ●   Rsync              ●   Pam
                        
elinks

    ●   Each module contains
        ●   A bunch of file declarations
        ●   Gets your service up and running
        ●   RHEL default configurations
        ●   Well defined classes with logical meaning
        ●   Every class has a disabled subclass for cleanup
        ●   A pony – development, testing, and production
            branches

                                     
elinks

    ●   pm.org is file based – just deliver the files and
        get out of the way
    ●   There are five options for file locations
        ●   Environment + Host
        ●   Environment
        ●   System Wide + Host
        ●   System Wide
        ●   PM.org default
                                  
elinks
    ●   puppet://$server/private/$environment/webserver/httpd.conf.
        $hostname
    ●   puppet://$server/private/$environment/webserver/httpd.conf
    ●   puppet://$server/files/webserver/httpd.conf.$hostname
    ●   puppet://$server/files/webserver/httpd.conf
    ●   puppet://$server/webserver/httpd.conf




                                       
elinks

node 'node1.example.org' {
    include webserver

    webserver::virtualhost { "www.example.org":
        enable => true
    }

    webserver::module::enable { "php":
        enable => true
    }
}


                         
elinks
    ●   Uses definitions to create pseudo resources
    ●   Makes these modules very easy to adopt
    ●   Easy to deploy in your current infrastructure,
        one module at a time
    ●   Easy to collaborate with upstream on




                                
git clone




    All modules in a git repository




                    
make
    ●   All you need is a git repo with a directory per
        module
    ●   Each branch is a seperate environment
    ●   The master branch is the site-wide
        configuration
    ●   The pm.org puppet module handles the rest




                                
make

    ●   Some services require OS version specific files,
        then you get twenty options
        ●   OS + minor version
        ●   OS + major version
        ●   OS
        ●   Default
    ●   For example:
        ●   pam
                                  
make install
    ●   ah... um.....




                              
make install
    ●   Actually this slide should be
        febootstrap/debootstrap




                                
git svn




    I can't talk about how to fix this in your
                  environment...




                         
git svn




              Or can i?

    [Insert Shamless Hire Me Plug]




                   
git svn




    The UMC Utrecht DBG née Genomics Center is
    a public institution, so we can talk about how we
                solved the problem there




                             
git foo
    ●   There are good gateways for git and other
        source control




                               
git svn
    ●   We started with an old experimental version of
        pm.org
        ●   conf/manifests – this is our site manifest
        ●   distr/modules – one git repo per module
        ●   distr/files – legacy files
        ●   distr/files/private – file domain structure
    ●   We only have one environment currently



                                          
git branch
    ●   Each repo is cloned into the svn, then branched
        to a umc specific branch
    ●   Since we're using svn, i freely use git rebase,
        so it's obvious which patches are not yet
        upstream
    ●   The diff between development and umc is
        meant to be as short as possible



                                
emacs
    ●   Our umc branches normally just edit file
        locations and comment out code defined in
        legacy
    ●   UMC specific classes are in
        conf/manifests/classes/*pp




                               
git rebase
    ●   Every time i commit to git, i can also commit it
        to our SVN
    ●   Everytime someone else commits to svn, i can
        rebase the git on top




                                
git push
    ●   Commiting is then very easy, just switch to the
        right branch and push
    ●   git format patch is great
    ●   There is a devel mailing list open for patches
    ●   Frequent patchers can probably get commit
        access




                                
publican
    ●   Documentation is yet another git repo
    ●   We store it at documentation/
    ●   We branch and merge like usual




                               
make install
    ●   Move all code into modules or classes
    ●   Migrate to pm.org's puppet module managing
        site.pp
    ●   Sort all files into distr/files/private
    ●   Ensure every module we have is pm.org quality




                                   
make install
    ●   Move each git repo to its own toplevel in svn
        (except maybe distr/modules)
    ●   git-svn handles mapping svn branches
    ●   Fix the puppet module to do svn too




                                
cat /dev/future
    ●   Environments per working group
        ●   Each group has write access to their own branch
    ●   Porcelain – extensions on top of pm.org
        standard
    ●   More modules
    ●   Better integration with external nodes



                                   
who
    ●   ogd.nl                   ●   rpmfusion.org
    ●   kolabsys.com             ●   kanarip.com
    ●   genomicscenter.nl
    ●   op.umcutrecht.nl
    ●   berica.nl
    ●   fedoraunity.org
    ●   puppetmanaged.org


                              
wget puppetmanaged.org
    ●   http://www.puppetmanaged.org/
    ●   http://git.puppetmanaged.org/
    ●   http://www.puppetmanaged.org/mailman/listinfo
        ●   Commits
        ●   Devel
        ●   Users




                               
questions?
    ●   loupgaroublond@gmail.com
    ●   loupgaroublond on practically every social
        network, especially freenode
    ●   #ergo@freenode.net
    ●   Or just annoy kanarip
        ●   the one with the ugly haircut




                                    

Mais conteúdo relacionado

Mais procurados

Introduction to Docker (as presented at December 2013 Global Hackathon)
Introduction to Docker (as presented at December 2013 Global Hackathon)Introduction to Docker (as presented at December 2013 Global Hackathon)
Introduction to Docker (as presented at December 2013 Global Hackathon)Jérôme Petazzoni
 
Linux Virtualization
Linux VirtualizationLinux Virtualization
Linux VirtualizationOpenVZ
 
N problems of Linux Containers
N problems of Linux ContainersN problems of Linux Containers
N problems of Linux ContainersKirill Kolyshkin
 
Lvm and gang 2015
Lvm and gang 2015Lvm and gang 2015
Lvm and gang 2015plarsen67
 
Introduction to containers
Introduction to containersIntroduction to containers
Introduction to containersNitish Jadia
 
Docker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesDocker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesJérôme Petazzoni
 
Containers with systemd-nspawn
Containers with systemd-nspawnContainers with systemd-nspawn
Containers with systemd-nspawnGábor Nyers
 
Lightweight Virtualization: LXC Best Practices
Lightweight Virtualization: LXC Best PracticesLightweight Virtualization: LXC Best Practices
Lightweight Virtualization: LXC Best PracticesWerner Fischer
 
Tuning systemd for embedded
Tuning systemd for embeddedTuning systemd for embedded
Tuning systemd for embeddedAlison Chaiken
 
Openvz - a quick introduction
Openvz - a quick introductionOpenvz - a quick introduction
Openvz - a quick introductionOlle E Johansson
 
Docker and Containers for Development and Deployment — SCALE12X
Docker and Containers for Development and Deployment — SCALE12XDocker and Containers for Development and Deployment — SCALE12X
Docker and Containers for Development and Deployment — SCALE12XJérôme Petazzoni
 
Thinking inside the box (shared)
Thinking inside the box (shared)Thinking inside the box (shared)
Thinking inside the box (shared)Joe Brockmeier
 
Lightweight Virtualization: LXC containers & AUFS
Lightweight Virtualization: LXC containers & AUFSLightweight Virtualization: LXC containers & AUFS
Lightweight Virtualization: LXC containers & AUFSJérôme Petazzoni
 
OpenWRT guide and memo
OpenWRT guide and memoOpenWRT guide and memo
OpenWRT guide and memo家榮 吳
 
pkgsrc on SmartOS
pkgsrc on SmartOSpkgsrc on SmartOS
pkgsrc on SmartOSjonperkin
 
Linuxtag.ceph.talk
Linuxtag.ceph.talkLinuxtag.ceph.talk
Linuxtag.ceph.talkUdo Seidel
 
LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013dotCloud
 

Mais procurados (20)

Introduction to Docker (as presented at December 2013 Global Hackathon)
Introduction to Docker (as presented at December 2013 Global Hackathon)Introduction to Docker (as presented at December 2013 Global Hackathon)
Introduction to Docker (as presented at December 2013 Global Hackathon)
 
Linux Virtualization
Linux VirtualizationLinux Virtualization
Linux Virtualization
 
N problems of Linux Containers
N problems of Linux ContainersN problems of Linux Containers
N problems of Linux Containers
 
Lvm and gang 2015
Lvm and gang 2015Lvm and gang 2015
Lvm and gang 2015
 
LinuxTag2012 Rear
LinuxTag2012 RearLinuxTag2012 Rear
LinuxTag2012 Rear
 
Introduction to containers
Introduction to containersIntroduction to containers
Introduction to containers
 
Docker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesDocker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los Angeles
 
First steps on CentOs7
First steps on CentOs7First steps on CentOs7
First steps on CentOs7
 
Containers with systemd-nspawn
Containers with systemd-nspawnContainers with systemd-nspawn
Containers with systemd-nspawn
 
Lightweight Virtualization: LXC Best Practices
Lightweight Virtualization: LXC Best PracticesLightweight Virtualization: LXC Best Practices
Lightweight Virtualization: LXC Best Practices
 
Tuning systemd for embedded
Tuning systemd for embeddedTuning systemd for embedded
Tuning systemd for embedded
 
Openvz - a quick introduction
Openvz - a quick introductionOpenvz - a quick introduction
Openvz - a quick introduction
 
pkgsrc on MirBSD
pkgsrc on MirBSDpkgsrc on MirBSD
pkgsrc on MirBSD
 
Docker and Containers for Development and Deployment — SCALE12X
Docker and Containers for Development and Deployment — SCALE12XDocker and Containers for Development and Deployment — SCALE12X
Docker and Containers for Development and Deployment — SCALE12X
 
Thinking inside the box (shared)
Thinking inside the box (shared)Thinking inside the box (shared)
Thinking inside the box (shared)
 
Lightweight Virtualization: LXC containers & AUFS
Lightweight Virtualization: LXC containers & AUFSLightweight Virtualization: LXC containers & AUFS
Lightweight Virtualization: LXC containers & AUFS
 
OpenWRT guide and memo
OpenWRT guide and memoOpenWRT guide and memo
OpenWRT guide and memo
 
pkgsrc on SmartOS
pkgsrc on SmartOSpkgsrc on SmartOS
pkgsrc on SmartOS
 
Linuxtag.ceph.talk
Linuxtag.ceph.talkLinuxtag.ceph.talk
Linuxtag.ceph.talk
 
LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013
 

Semelhante a Puppet managed loadays

Puppet managed loadays
Puppet managed loadaysPuppet managed loadays
Puppet managed loadaysYankee Nemoy
 
My "Perfect" Toolchain Setup for Grails Projects
My "Perfect" Toolchain Setup for Grails ProjectsMy "Perfect" Toolchain Setup for Grails Projects
My "Perfect" Toolchain Setup for Grails ProjectsGR8Conf
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013dotCloud
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Docker, Inc.
 
Managing multiple environments with Ansible
Managing multiple environments with AnsibleManaging multiple environments with Ansible
Managing multiple environments with Ansiblejtyr
 
Android Variants, Hacks, Tricks and Resources presented at AnDevConII
Android Variants, Hacks, Tricks and Resources presented at AnDevConIIAndroid Variants, Hacks, Tricks and Resources presented at AnDevConII
Android Variants, Hacks, Tricks and Resources presented at AnDevConIIOpersys inc.
 
Introduction to git & WordPress
Introduction to git & WordPressIntroduction to git & WordPress
Introduction to git & WordPressJosh Lee
 
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo..."Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...Yandex
 
Repositories as Code
Repositories as CodeRepositories as Code
Repositories as CodeKris Buytaert
 
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...Opersys inc.
 
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012Lance Albertson
 
Gentoo Linux, or Why in the World You Should Compile Everything
Gentoo Linux, or Why in the World You Should Compile EverythingGentoo Linux, or Why in the World You Should Compile Everything
Gentoo Linux, or Why in the World You Should Compile EverythingDonnie Berkholz
 
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewireIntroduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewiredotCloud
 
Creating a Mature Puppet System
Creating a Mature Puppet SystemCreating a Mature Puppet System
Creating a Mature Puppet SystemPuppet
 
Creating a mature puppet system
Creating a mature puppet systemCreating a mature puppet system
Creating a mature puppet systemrkhatibi
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at ScaleKris Buytaert
 
A Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and ContainersA Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and ContainersDocker, Inc.
 
Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...
Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...
Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...Puppet
 
Leveraging Android's Linux Heritage
Leveraging Android's Linux HeritageLeveraging Android's Linux Heritage
Leveraging Android's Linux HeritageOpersys inc.
 

Semelhante a Puppet managed loadays (20)

Puppet managed loadays
Puppet managed loadaysPuppet managed loadays
Puppet managed loadays
 
My "Perfect" Toolchain Setup for Grails Projects
My "Perfect" Toolchain Setup for Grails ProjectsMy "Perfect" Toolchain Setup for Grails Projects
My "Perfect" Toolchain Setup for Grails Projects
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
 
Managing multiple environments with Ansible
Managing multiple environments with AnsibleManaging multiple environments with Ansible
Managing multiple environments with Ansible
 
Android Variants, Hacks, Tricks and Resources presented at AnDevConII
Android Variants, Hacks, Tricks and Resources presented at AnDevConIIAndroid Variants, Hacks, Tricks and Resources presented at AnDevConII
Android Variants, Hacks, Tricks and Resources presented at AnDevConII
 
Introduction to git & WordPress
Introduction to git & WordPressIntroduction to git & WordPress
Introduction to git & WordPress
 
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo..."Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
 
Repositories as Code
Repositories as CodeRepositories as Code
Repositories as Code
 
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
 
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012
 
Gentoo Linux, or Why in the World You Should Compile Everything
Gentoo Linux, or Why in the World You Should Compile EverythingGentoo Linux, or Why in the World You Should Compile Everything
Gentoo Linux, or Why in the World You Should Compile Everything
 
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewireIntroduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
 
Creating a Mature Puppet System
Creating a Mature Puppet SystemCreating a Mature Puppet System
Creating a Mature Puppet System
 
Creating a mature puppet system
Creating a mature puppet systemCreating a mature puppet system
Creating a mature puppet system
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at Scale
 
A Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and ContainersA Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and Containers
 
Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...
Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...
Continuous Infrastructure: Modern Puppet for the Jenkins Project - PuppetConf...
 
Git In One Evening
Git In One EveningGit In One Evening
Git In One Evening
 
Leveraging Android's Linux Heritage
Leveraging Android's Linux HeritageLeveraging Android's Linux Heritage
Leveraging Android's Linux Heritage
 

Mais de loadays

Technical Presentation Zcp
Technical Presentation ZcpTechnical Presentation Zcp
Technical Presentation Zcploadays
 
Load2010 Se Linux Presentation
Load2010 Se Linux PresentationLoad2010 Se Linux Presentation
Load2010 Se Linux Presentationloadays
 
Presentation Gosa Loaddays2010
Presentation Gosa Loaddays2010Presentation Gosa Loaddays2010
Presentation Gosa Loaddays2010loadays
 
Load2010 Kvm Tutorial
Load2010 Kvm TutorialLoad2010 Kvm Tutorial
Load2010 Kvm Tutorialloadays
 
Load2010 Enterprise Linux Open Space
Load2010 Enterprise Linux Open SpaceLoad2010 Enterprise Linux Open Space
Load2010 Enterprise Linux Open Spaceloadays
 
Debian Secrets Loadays
Debian Secrets LoadaysDebian Secrets Loadays
Debian Secrets Loadaysloadays
 

Mais de loadays (6)

Technical Presentation Zcp
Technical Presentation ZcpTechnical Presentation Zcp
Technical Presentation Zcp
 
Load2010 Se Linux Presentation
Load2010 Se Linux PresentationLoad2010 Se Linux Presentation
Load2010 Se Linux Presentation
 
Presentation Gosa Loaddays2010
Presentation Gosa Loaddays2010Presentation Gosa Loaddays2010
Presentation Gosa Loaddays2010
 
Load2010 Kvm Tutorial
Load2010 Kvm TutorialLoad2010 Kvm Tutorial
Load2010 Kvm Tutorial
 
Load2010 Enterprise Linux Open Space
Load2010 Enterprise Linux Open SpaceLoad2010 Enterprise Linux Open Space
Load2010 Enterprise Linux Open Space
 
Debian Secrets Loadays
Debian Secrets LoadaysDebian Secrets Loadays
Debian Secrets Loadays
 

Último

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Puppet managed loadays

  • 1. login Puppetmanaged.org How to use it in your environment    
  • 2. id uid=500(Yaakov M. Nemoy) gid=500(Human) groups=10(wheel),501(Fedora Project Ambassador),502(Puppetmanaged.org Developer),503(RHCE),666(UMC Utrecht BOFH)    
  • 3. elinks ● Puppetmanaged.org is a collection of (mostly) standalone common puppet modules for per service deployment of your infrastructure ● It's designed around principles of good configuration management    
  • 4. elinks ● Puppet ● Zarafa ● Mysql ● Openldap ● Apache ● Openvpn ● Bind ● Postfix ● Cobbler ● Monit ● Yum ● Munin ● Samba ● Nagios    
  • 5. elinks ● Authconfig ● Selinux ● Autofs ● Ssh ● Func ● Sudo ● Iptables ● Trac ● NFS ● Virt ● NTP ● Xen ● Rsync ● Pam    
  • 6. elinks ● Each module contains ● A bunch of file declarations ● Gets your service up and running ● RHEL default configurations ● Well defined classes with logical meaning ● Every class has a disabled subclass for cleanup ● A pony – development, testing, and production branches    
  • 7. elinks ● pm.org is file based – just deliver the files and get out of the way ● There are five options for file locations ● Environment + Host ● Environment ● System Wide + Host ● System Wide ● PM.org default    
  • 8. elinks ● puppet://$server/private/$environment/webserver/httpd.conf. $hostname ● puppet://$server/private/$environment/webserver/httpd.conf ● puppet://$server/files/webserver/httpd.conf.$hostname ● puppet://$server/files/webserver/httpd.conf ● puppet://$server/webserver/httpd.conf    
  • 9. elinks node 'node1.example.org' { include webserver webserver::virtualhost { "www.example.org": enable => true } webserver::module::enable { "php": enable => true } }    
  • 10. elinks ● Uses definitions to create pseudo resources ● Makes these modules very easy to adopt ● Easy to deploy in your current infrastructure, one module at a time ● Easy to collaborate with upstream on    
  • 11. git clone All modules in a git repository    
  • 12. make ● All you need is a git repo with a directory per module ● Each branch is a seperate environment ● The master branch is the site-wide configuration ● The pm.org puppet module handles the rest    
  • 13. make ● Some services require OS version specific files, then you get twenty options ● OS + minor version ● OS + major version ● OS ● Default ● For example: ● pam    
  • 14. make install ● ah... um.....    
  • 15. make install ● Actually this slide should be febootstrap/debootstrap    
  • 16. git svn I can't talk about how to fix this in your environment...    
  • 17. git svn Or can i? [Insert Shamless Hire Me Plug]    
  • 18. git svn The UMC Utrecht DBG née Genomics Center is a public institution, so we can talk about how we solved the problem there    
  • 19. git foo ● There are good gateways for git and other source control    
  • 20. git svn ● We started with an old experimental version of pm.org ● conf/manifests – this is our site manifest ● distr/modules – one git repo per module ● distr/files – legacy files ● distr/files/private – file domain structure ● We only have one environment currently    
  • 21. git branch ● Each repo is cloned into the svn, then branched to a umc specific branch ● Since we're using svn, i freely use git rebase, so it's obvious which patches are not yet upstream ● The diff between development and umc is meant to be as short as possible    
  • 22. emacs ● Our umc branches normally just edit file locations and comment out code defined in legacy ● UMC specific classes are in conf/manifests/classes/*pp    
  • 23. git rebase ● Every time i commit to git, i can also commit it to our SVN ● Everytime someone else commits to svn, i can rebase the git on top    
  • 24. git push ● Commiting is then very easy, just switch to the right branch and push ● git format patch is great ● There is a devel mailing list open for patches ● Frequent patchers can probably get commit access    
  • 25. publican ● Documentation is yet another git repo ● We store it at documentation/ ● We branch and merge like usual    
  • 26. make install ● Move all code into modules or classes ● Migrate to pm.org's puppet module managing site.pp ● Sort all files into distr/files/private ● Ensure every module we have is pm.org quality    
  • 27. make install ● Move each git repo to its own toplevel in svn (except maybe distr/modules) ● git-svn handles mapping svn branches ● Fix the puppet module to do svn too    
  • 28. cat /dev/future ● Environments per working group ● Each group has write access to their own branch ● Porcelain – extensions on top of pm.org standard ● More modules ● Better integration with external nodes    
  • 29. who ● ogd.nl ● rpmfusion.org ● kolabsys.com ● kanarip.com ● genomicscenter.nl ● op.umcutrecht.nl ● berica.nl ● fedoraunity.org ● puppetmanaged.org    
  • 30. wget puppetmanaged.org ● http://www.puppetmanaged.org/ ● http://git.puppetmanaged.org/ ● http://www.puppetmanaged.org/mailman/listinfo ● Commits ● Devel ● Users    
  • 31. questions? ● loupgaroublond@gmail.com ● loupgaroublond on practically every social network, especially freenode ● #ergo@freenode.net ● Or just annoy kanarip ● the one with the ugly haircut