This document provides an overview and agenda for a Puppet workshop. Puppet is an automated system configuration management tool. The workshop agenda includes installing and initializing Puppet, creating modules for user management and Apache site configuration, using templates, and setting up reporting and a dashboard. The document explains Puppet concepts like manifests, modules, templates, and functions. It also provides examples of Puppet configuration language and directory structures for modules.
Building A Scalable Open Source Storage SolutionPhil Cryer
The Biodiversity Heritage Library (BHL), like many other projects within biodiversity informatics, maintains terabytes of data that must be safeguarded against loss. Further, a scalable and resilient infrastructure is required to enable continuous data interoperability, as BHL provides unique services to its community of users. This volume of data and associated availability requirements present significant challenges to a distributed organization like BHL, not only in funding capital equipment purchases, but also in ongoing system administration and maintenance. A new standardized system is required to bring new opportunities to collaborate on distributed services and processing across what will be geographically dispersed nodes. Such services and processing include taxon name finding, indexes or GUID/LSID services, distributed text mining, names reconciliation and other computationally intensive tasks, or tasks with high availability requirements.
Linux host orchestration with Foreman, Puppet and GitlabBen Tullis
A brief look at the Foreman host lifecycle management system, beginning with its rapid provisioning features and moving onto its integration with the Puppet configuration management system.
GItlab is introduced to the mix and an example is given of how it can be integrated with Forman and Puppet to form an on-premise configuration versioning component. This configuration, which builds upon the Puppet multiple environments feature, is currently being employed in the task of building a test-driven continuous delivery system for the OpenCorporates project.
PuppetCamp SEA @ Blk 71 - Puppet: The Year That WasWalter Heck
Nigel Kersten started off the day with a very interesting and informative talk about the past, current and future of Puppet. He showed Puppet's link with the worldwide tech community and how they plan to make the Puppet experience even better. He also gave updates on what Puppet Labs has done recently, as well as elaborated on the improvements of Puppet 3.0, Puppet DB and Puppet Enterprise. Nigel also mentioned that Puppet Labs is still dedicated on fixing any issues that any updates or the community may have, and that the company also hopes to improve things moving towards the future.
Building A Scalable Open Source Storage SolutionPhil Cryer
The Biodiversity Heritage Library (BHL), like many other projects within biodiversity informatics, maintains terabytes of data that must be safeguarded against loss. Further, a scalable and resilient infrastructure is required to enable continuous data interoperability, as BHL provides unique services to its community of users. This volume of data and associated availability requirements present significant challenges to a distributed organization like BHL, not only in funding capital equipment purchases, but also in ongoing system administration and maintenance. A new standardized system is required to bring new opportunities to collaborate on distributed services and processing across what will be geographically dispersed nodes. Such services and processing include taxon name finding, indexes or GUID/LSID services, distributed text mining, names reconciliation and other computationally intensive tasks, or tasks with high availability requirements.
Linux host orchestration with Foreman, Puppet and GitlabBen Tullis
A brief look at the Foreman host lifecycle management system, beginning with its rapid provisioning features and moving onto its integration with the Puppet configuration management system.
GItlab is introduced to the mix and an example is given of how it can be integrated with Forman and Puppet to form an on-premise configuration versioning component. This configuration, which builds upon the Puppet multiple environments feature, is currently being employed in the task of building a test-driven continuous delivery system for the OpenCorporates project.
PuppetCamp SEA @ Blk 71 - Puppet: The Year That WasWalter Heck
Nigel Kersten started off the day with a very interesting and informative talk about the past, current and future of Puppet. He showed Puppet's link with the worldwide tech community and how they plan to make the Puppet experience even better. He also gave updates on what Puppet Labs has done recently, as well as elaborated on the improvements of Puppet 3.0, Puppet DB and Puppet Enterprise. Nigel also mentioned that Puppet Labs is still dedicated on fixing any issues that any updates or the community may have, and that the company also hopes to improve things moving towards the future.
PuppetCamp SEA @ Blk 71 - Puppet: The Year That WasOlinData
Nigel Kersten, CTO at Puppet Labs, started off the day with a very interesting and informative talk about the past, current and future of Puppet. He showed Puppet's link with the worldwide tech community and how they plan to make the Puppet experience even better. He also gave updates on what Puppet Labs has done recently, as well as elaborated on the improvements of Puppet 3.0, Puppet DB and Puppet Enterprise.
Gentoo Linux, or Why in the World You Should Compile EverythingDonnie Berkholz
Gentoo Linux is a special flavor of Linux that can be automatically optimized and customized for just about any application or need. Extreme performance, configurability and a top-notch user and developer community are all hallmarks of the Gentoo experience.
As a leader of Gentoo, I will provide an overview of how it works from a developer's and a user's point of view, and why you should be running it especially if you're:
- In need of an awesome development environment;
- Interested in learning what's inside the black box of Linux;
- OCD about having a perfectly configured setup; or
- Building an embedded, minimal system or a high-performance cluster.
If there's interest, I can also talk about future developments on the horizon for Gentoo, package management in general, etc.
Confgetti - Put A Leash On Your Configuration!Nikola Tuckovic
Tool for configuration and variables management.
Fetch variables for your application easily from Consul KV ➡️ config*.json ➡️ environment. via simple python method/s!
Open Source Tool Chains for Cloud ComputingMark Hinkle
This presentation was given at LinuxCon 2010.
The proliferation of cloud computing is inevitable, hosted apps, software-as-as-service and now dynamic on-demand utility computing is becoming the norm. The session will be a “fire-side” chat style discussion of the types of challenges presented by IT management operations personnel and how they can manage cloud infrastructure using open source tools. The talk will discuss options for deploying and integrating tools that provision, configure, orchestrate and monitor cloud (and physical)infrastructure. The session will appeal to those IT professionals (syadmins, net-ops, developers) who develop and manage infrastructure that resides in hosted environments like Amazon EC2 without disregarding traditionally hosted internal infrastructure.
Containers for Science and High-Performance ComputingDmitry Spodarets
Within this talk, we will explore how Singularity liberates non-privileged users and host resources (such as interconnects, resource managers, file systems, accelerators, etc.) allowing users to take full control to set-up and run in their native environments. This talk explores how Singularity combines software packaging models with minimalistic containers to create very lightweight application bundles which can be simply executed and contained completely within their environment or be used to interact directly with the host file systems at native speeds. A Singularity application bundle can be as simple as containing a single binary application or as complicated as containing an entire workflow and is as flexible as you will need.
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...Nagios
Mike Merideth's presentation on The Art and Zen of Managing Nagios with Puppet.
The presentation was given during the Nagios World Conference North America held Oct 13th - Oct 16th, 2014 in Saint Paul, MN. For more information on the conference (including photos and videos), visit: http://go.nagios.com/conference
Stackato presentation done at the Nordic Perl Workshop 2012 in Stockholm, Sweden
More information available at: https://logiclab.jira.com/wiki/display/OPEN/Stackato
Learning Puppet is hard.
But: You can use Puppet by using YAML only.
In this talk I am going to explain the YAML/Hiera based node classification and the possibility to manage systems by using YAML only.
HashiTalksDACH-Terraform-Managing training instances in the CloudMartin Alfke
Cloud automation is important. When we have a need for a training instance, we use terraform for VM provisioning.
But: each setup has slight differences (SW Versions, Number of VMs needed, ...)
We decided to build the terraform code as abstract as possible and use a per setup data based approach to provide information on numbers of VMs and deployment order.
All data are then used in combination with terraform and Puppet Bolt.
PuppetCamp SEA @ Blk 71 - Puppet: The Year That WasOlinData
Nigel Kersten, CTO at Puppet Labs, started off the day with a very interesting and informative talk about the past, current and future of Puppet. He showed Puppet's link with the worldwide tech community and how they plan to make the Puppet experience even better. He also gave updates on what Puppet Labs has done recently, as well as elaborated on the improvements of Puppet 3.0, Puppet DB and Puppet Enterprise.
Gentoo Linux, or Why in the World You Should Compile EverythingDonnie Berkholz
Gentoo Linux is a special flavor of Linux that can be automatically optimized and customized for just about any application or need. Extreme performance, configurability and a top-notch user and developer community are all hallmarks of the Gentoo experience.
As a leader of Gentoo, I will provide an overview of how it works from a developer's and a user's point of view, and why you should be running it especially if you're:
- In need of an awesome development environment;
- Interested in learning what's inside the black box of Linux;
- OCD about having a perfectly configured setup; or
- Building an embedded, minimal system or a high-performance cluster.
If there's interest, I can also talk about future developments on the horizon for Gentoo, package management in general, etc.
Confgetti - Put A Leash On Your Configuration!Nikola Tuckovic
Tool for configuration and variables management.
Fetch variables for your application easily from Consul KV ➡️ config*.json ➡️ environment. via simple python method/s!
Open Source Tool Chains for Cloud ComputingMark Hinkle
This presentation was given at LinuxCon 2010.
The proliferation of cloud computing is inevitable, hosted apps, software-as-as-service and now dynamic on-demand utility computing is becoming the norm. The session will be a “fire-side” chat style discussion of the types of challenges presented by IT management operations personnel and how they can manage cloud infrastructure using open source tools. The talk will discuss options for deploying and integrating tools that provision, configure, orchestrate and monitor cloud (and physical)infrastructure. The session will appeal to those IT professionals (syadmins, net-ops, developers) who develop and manage infrastructure that resides in hosted environments like Amazon EC2 without disregarding traditionally hosted internal infrastructure.
Containers for Science and High-Performance ComputingDmitry Spodarets
Within this talk, we will explore how Singularity liberates non-privileged users and host resources (such as interconnects, resource managers, file systems, accelerators, etc.) allowing users to take full control to set-up and run in their native environments. This talk explores how Singularity combines software packaging models with minimalistic containers to create very lightweight application bundles which can be simply executed and contained completely within their environment or be used to interact directly with the host file systems at native speeds. A Singularity application bundle can be as simple as containing a single binary application or as complicated as containing an entire workflow and is as flexible as you will need.
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...Nagios
Mike Merideth's presentation on The Art and Zen of Managing Nagios with Puppet.
The presentation was given during the Nagios World Conference North America held Oct 13th - Oct 16th, 2014 in Saint Paul, MN. For more information on the conference (including photos and videos), visit: http://go.nagios.com/conference
Stackato presentation done at the Nordic Perl Workshop 2012 in Stockholm, Sweden
More information available at: https://logiclab.jira.com/wiki/display/OPEN/Stackato
Learning Puppet is hard.
But: You can use Puppet by using YAML only.
In this talk I am going to explain the YAML/Hiera based node classification and the possibility to manage systems by using YAML only.
HashiTalksDACH-Terraform-Managing training instances in the CloudMartin Alfke
Cloud automation is important. When we have a need for a training instance, we use terraform for VM provisioning.
But: each setup has slight differences (SW Versions, Number of VMs needed, ...)
We decided to build the terraform code as abstract as possible and use a per setup data based approach to provide information on numbers of VMs and deployment order.
All data are then used in combination with terraform and Puppet Bolt.
ADDO 2019 DevOps in a containerized worldMartin Alfke
"We don't do DevOps anymore, we do containers"
Are containers the death to DevOps?
Why do we still need DevOps when doing containers?
DevOps KATA ((K)Culture, Automation, Transparency, Agility)
“Docker, Docker, Docker, Docker,…” developers really love Docker. Usually one sees the no longer need for configuration management, the easy way to spin up a platform on a laptop, the low resource footprint. But how do you deploy laptops in data centers?
This talk will give you an insight how we (more Ops then Dev) started to learn (and love) containers, the issues we saw when running them in larger scale and how Ops people should start dealing with Container technologies.
PuppetConf 2016 Moving from Exec to Types and ProvidesMartin Alfke
"We want to automate this application rollout and configuration by using Puppet DSL." The task is clear, the tool is clear. But how to proceed? Installation is delivered as tarball, configuration is done by running cli commands. This talk will give an overview on how we started using commands within exec resources, the difficulties and problems that rose up, and the process of moving to Types and Providers.
PuppetCamp London fall 2014
Martin Alfke - Can you upgrade to Puppet 4.x?
My talk at PuppetCamp London 2014 taking care on best practices and bad examples and an outlook to Puppet 4.
Puppet User Group Berlin Q1 meetup:
Introduction to the new, experimental puppet parser
http://www.meetup.com/Puppet-User-Group-Berlin/events/145643562/
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
In questo evento online gratuito, organizzato dalla Community Italiana di UiPath, potrai esplorare le nuove funzionalità di Autopilot, il tool che integra l'Intelligenza Artificiale nei processi di sviluppo e utilizzo delle Automazioni.
📕 Vedremo insieme alcuni esempi dell'utilizzo di Autopilot in diversi tool della Suite UiPath:
Autopilot per Studio Web
Autopilot per Studio
Autopilot per Apps
Clipboard AI
GenAI applicata alla Document Understanding
👨🏫👨💻 Speakers:
Stefano Negro, UiPath MVPx3, RPA Tech Lead @ BSP Consultant
Flavio Martinelli, UiPath MVP 2023, Technical Account Manager @UiPath
Andrei Tasca, RPA Solutions Team Lead @NTT Data
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
Puppet buero20 presentation
1. Puppet
Automated System Configuration Management
Martin Alfke <martin.alfke@buero20.org>
1
Wednesday, December 8, 2010
2. Agenda
• Part I - Puppet Basics
• General + Communication
• Manifests, Modules, Templates + Functions
• Part II - Puppet Workshop
• Part III - Working with Puppet
• GIT/SVN for Puppet
• Production / Test / Development
• Monitoring
2
Wednesday, December 8, 2010
3. General
• “Put simply, Puppet is a system for automating
system administration tasks”
• Puppet...
• is a declarative language for expressing system
configuration
• is a client-server distribution
• Requirements:
• Ruby > 1.8.1 < 1.9
• Facter
3
Wednesday, December 8, 2010
4. Communication
• Security
• SSL certificate based authentication
• manual signing of certificate requests
• Layers:
• Configuration Language
• Transaction layer
• Resource Abstraction Layer
4
Wednesday, December 8, 2010
5. Supported Platforms
• Linux
• Debian / Ubuntu / Fedora / CentOS / RHEL /
OEL / Mandriva / SuSE / Gentoo
• BSD
• FreeBSD / OpenBSD
• Other Unix
• OS X / Solaris / HP-UX
• Windows - coming in 2010
5
Wednesday, December 8, 2010
6. Functional Overview
• Clients connect to
Puppet Master
• Puppet Master send
clients description of
tasks
• Puppet Master stores
Clients reports
• Reports can be imported
into dashboard database
• Dashboard web interface
to reports
6
Wednesday, December 8, 2010
8. Puppet Configuration Language - 1-6
• manifests/site.pp
• Global file with node definitions
• modules/<name>/manifests/init.pp
• Module initialization
• Use lower case for names (modules, templates, functions,
defines, exec, resources,...)
8
Wednesday, December 8, 2010
9. Puppet Configuration Language - 2-6
• Resources
• user - create or remove users
• group - create or remove groups
• package install or remove distribution packages
• file - create directories, symlinks, copy files
• cron - add cron jobs
• service - run or stop services like daemons
9
Wednesday, December 8, 2010
10. Puppet Configuration Language - 3-6
• Classes
• aggregate resources for easier use
• subclasses (=nested classes) for modularity
• parameterised classes for more flexible handling
• classes support inheritance
10
Wednesday, December 8, 2010
11. Puppet Configuration Language - 4-6
• Definitions
• reusable objects
• Modules
• combine collections of resources, classes and
definitions
11
Wednesday, December 8, 2010
12. Puppet Configuration Language - 5-6
• Chaining resources
• make sure that a service is restarted after
filechange
• make sure that config file is copied prior
starting a service
• make sure that a package is installed prior
starting the service
12
Wednesday, December 8, 2010
13. Puppet Configuration Language - 6-6
• Nodes
• connect modules and clases to systems
• nodenames are short hostname, fqdn or
“default”
13
Wednesday, December 8, 2010
14. Manifests
• Define static resources
file { “/etc/passwd”: • Static resources have
owner => root, full path and name.
group => root,
mode => 644,
}
14
Wednesday, December 8, 2010
15. Manifests with facter Variables
• Using facter
variables inside
file { “sshconfig”:
a definition
name => $operatingsystem ? {
solaris => “/usr/local/etc/ssh/sshd_config”,
default => “/etc/ssh/sshd_config”,
},
owner => root,
group => root,
mode => 644,
}
15
Wednesday, December 8, 2010
16. Manifest with Sub-Classes
class mysql {
class client {
class packages {
package { "mysql-client": ensure => installed }
}
}
class server {
class packages {
package { "mysql-server": ensure => installed }
package { "mysql-common": ensure => installed }
16
Wednesday, December 8, 2010
20. Modules - Initialization Manifest
• init.pp manifest will be integrated
automatically when class name is
equal to module name
• modules/manifests/sshd/init.pp
class sshd {
file { “/etc/ssh/sshd_config”:
mode => 644,
source => “puppet:///modules/sshd/etc/ssh/sshd_config”,
}
}
20
Wednesday, December 8, 2010
23. Functions
• Directory structure e.g. read parameter
from configuration file using facter:
lib/
facter/
function.rb
• Content of library functions function.rb:
require ‘facter’
Facter.add(“PUPPET_FUNCTION”) do
%x{/bin/grep -E “^PUPPET_FUNCTION=” /etc/
puppet_function | sed -e ‘s/*.=//’ } .chomp
end
end
23
Wednesday, December 8, 2010
24. Agenda
• Part I - Puppet Basics
• General + Communication
• Manifests, Modules, Templates + Functions
• Part II - Puppet Workshop
• Part III - Working with Puppet
• GIT/SVN for Puppet
• Production / Test / Development
• Monitoring
24
Wednesday, December 8, 2010
25. Puppet Workshop
• Installation - Puppet master and client on puppet master only
• Initialization
• Installation - Puppet client on puppet client only
• Modules
• User Management
• Apache sites configuration
• Templating for /etc/hosts
• Setup Reporting and Dashboard
25
Wednesday, December 8, 2010
53. Puppet Workshop - Functions - 2-2
• including modules in manifests/site.pp
node default {
include <name>
}
53
Wednesday, December 8, 2010
54. Puppet Workshop - Facter Function - 1-4
• Facter Function
• provide additional fact
1. Module directories
mkdir -p modules/facter/lib/facter
54
Wednesday, December 8, 2010
55. Puppet Workshop - Facter Function - 2-4
2. function.rb
vi modules/facter/lib/facter/function.rb
require ʻfacterʼ
Facter.add(“PUPPET_FUNCTION”) do
! setcode do
! ! %x{/bin/grep -E “^PUPPET_FUNCTION=” /etc/puppet_function |
sed -e ʻs/.*=//ʼ}.chomp
! end
end
55
Wednesday, December 8, 2010
56. Puppet Workshop - Facter Function - 3-4
3. puppet.conf
section [main]
pluginsync = true
4. puppet run
puppetd --test
5. call facter puppet function
facter --puppet | grep puppet_function
56
Wednesday, December 8, 2010
57. Puppet Workshop - Facter Function - 4-4
3. use custom facts in manifests
case $puppet_function {
! “MYSQL”:! ! { include mysql }
! “APACHE”:!! { include apache }
! “PROXY”:! ! { include proxy }
...
}
57
Wednesday, December 8, 2010
59. Puppet Workshop - Dashboard - 2-5
• Configuration
• edit /usr/share/puppet-dashboard/config/database.yaml
• Create Database
• cd /usr/share/puppet-dashboard; rake RAILS_ENV
db:create or
• mysql -Ne ‘create database dashboard;’
59
Wednesday, December 8, 2010
60. Puppet Workshop - Dashboard - 3-5
• Initialize Database
• cd /usr/share/puppet-dashboard; rake
RAILS_ENV db:migrate
• Import Reports
• cd /usr/share/puppet-dashboard; rake
RAILS_ENV=production reports:import
60
Wednesday, December 8, 2010
61. Puppet Workshop - Dashboard - 4-5
• Start service
• cd /usr/share/puppet-dashboard; ./bin/server
-e production -d
• Review your Dashboard in browser
• http://<your puppetmaster ip>:3000/
61
Wednesday, December 8, 2010
62. Puppet Workshop - Dashboard - 5-5
• add error to manifest (e.g. point source to a
non existing file)
• run puppetd
• puppetd --test
• import data
• cd /usr/share/puppet-dashboard; rake
RAILS_ENV=production reports:import
• review dashboard
62
Wednesday, December 8, 2010
63. Agenda
• Part I - Puppet Basics
• General + Communication
• Manifests, Modules, Templates + Functions
• Part II - Puppet Workshop
• Part III - Working with Puppet
• GIT/SVN for Puppet
• Production / Test / Development
• Monitoring
63
Wednesday, December 8, 2010
64. Puppet into GIT/SVN
• Why revision control system?
• Co-working
• Branches
• Which RCS System?
• Which ever you prefer
64
Wednesday, December 8, 2010
65. Puppet Staging
• Production, Test and Development
• /etc/puppet/puppet.conf
• [main] - environment = ...
• [development] - modulepath=/etc/puppet/
development/modules
• [testing] - modulepath=/etc/puppet/testing/
modules
• [production] - modulepath=/etc/puppet/
production/modules
65
Wednesday, December 8, 2010
66. Puppet Monitoring
• Puppet Dashboard
• Configure puppet to store results
• [master] section: reports=http, store
• [agent] (v2.6) or [puppetd] section: report=true
• Configure Database (e.g. MySQL)
66
Wednesday, December 8, 2010