Search Posts list-of-concepts-prep:Puppet
Concept Master-slave Architecture
What is the Master-slave architecture in Puppet ?
To all servers from a single remote location Providing control over all your configured machines, so a centralized master-server change gets propagated
Why we use Master-slave architecture in Puppet ?
To operate from a Central area we need to have this architecture
How can we use Master-slave architecture in Puppet ?
Puppet architecture follow this syntax
Puppet slave
Facts
Puppetmaster
Catalog
Puppet slave
Report
Puppet master
Concept Infrastructure as Code(IaC)
What is Infrastructure as Code(IaC) ?
Infrastructure as Code (IAC) is a type of IT infrastructure that operations teams can automatically manage and provision through code, rather than using a manual process.
Why we use Infrastructure as Code(IaC) ?
to managing data center server, storage, and networking infrastructure. IaC is meant to significantly simplify large-scale configuration and management.”
How we use Infrastructure as Code(IaC) ?
In push, the controlling servers pushes the configuration to the destination system
In Pull, server to be configured will pull its configuraion from the controlling server.
—————————————————————————————————————-
How Puppet Works
CONCEPT NEED OF PUPPET
What is the puppet?
Puppet is a configuration management tool which is used to configure the dev, test, production, dr environment as per the organization requirement
How to use puppet?
We have puppet master and puppet-agent
Puppet master is initial state where we prepare all the configuration
Once all the configuration are wrote in manifest we configure the nodes using these manifests
Why do we need puppet?
As we use puppet as configuration management tool which reduces the human involvement in configuring the environment
Puppet will reduce the time taken to configure the environment
—————————————————————————————————————-
Chef vs Puppet vs Ansible vs SaltStack Configuration Management Tools Comparison Edureka
Concept DevOps
What is DevOps?
Devops an enterprise software development phrase used to mean a type of agile relationship between development and IT operations
Why we use DevOps?
The goal of DevOps is to change and improve the relationship by advocating better communication and collaboration between these two business units
How can we use DevOps?
DevOps has various tools throughout the lifecycle of the project.
Concept Infrastructure as code
What is Infrastructure as code?
Provisioning of Dev, test and Prod environment by writing code for infrastructure
Why we use IaC?
We can have the same environment throughout the organization
How do we implement IaC?
We write code in central sever by which we configure the Dev, Test, Production
Concept Configuration Management
What is Configuration Management?
Configuration management (CM) focuses on establishing and maintaining consistency of a product’s performance
Why do we need Configuration management tools?
Mass deployment, migrating from test to production, application failure
How can to provide Configuration management?
We Have various tools like chef, puppet, Ansible, salt-stack
—————————————————————————————————————-
How Puppet works
concept NEED OF PUPPET
What is the puppet?
puppet is an configuration management tool which is used to configure the dev, test, production, dr environment as per the organization requirement.
How to use puppet?
we have puppet master and puppet-agent
pupppet master is initial state where we prepare all the configuration
once all the configuration are wrote in manifest we confiure the nodes using these manifests
why do we need puppet?
As we use puppet as configuration management tool which reduces the human involvement in configuring the environment
puppet will reduce the time taken to configure the environment
—————————————————————————————————————-
Puppet Demo for user creation and package installation and file management
Concept Package Installation
Why we can create the user creation and package installation and file management in puppet?
Master can create or modify any file on puppet agent
Master can install or remove any package from remote puppet agent
Master can add a user on remote puppet agents
What is the role of users and packages installations in puppet?
To setup requirements, to install, to deploy and to configure systems
How we do user creation and package installation and file management in puppet?
check the contents in puppet agents
Configure contents that are not available in puppet agent
Restart the puppet master
Restart the puppet agent
After restarting puppet agent check the contents
Login with the created user
Configure any changes or remove package or install packages from that user
—————————————————————————————————————-
Learning Puppet Manifests
Concept Manifest
What is Manifest in Puppet ?
Puppet,all the programs which are written using Ruby programming language and saved with an extension of .pp are called manifests.
Why we use Manifests in Puppet ?
Manifest contains a set of instructions and collection of resource declarations,using the extension .pp to be executed, manifest
While writing a manifest, the user can define a new variable or use an existing variable at any point in a manifest. Puppet supports different kind of variables but few of them are frequently used such as strings and array of string. Apart from them, other formats are also supported.
How we use puppet manifests ?
We have to declare the modules in the classes
How to stop or overwrite the default behaviour of puppet of overwriting the files.
Check the sshd statusàmake sure the actual file and copied file are having different portsàApply puppet to site.pp file”
How do we have the overwritten file when it is not exists.
Remove Allowusers <username> from the actual configuration fileàDon’t overwrite the file , if it already existsàstop sshd serviceàApply puppet to site.pp
—————————————————————————————————————-
Puppet Server Centralized Bucket Configuration
Concept Puppet Server Centralized Bucket
What is the puppet server Centralized Bucket ?
Bucket is nothing but the original copy of the file.
Why we use Puppet server Centralized Bucket ?
To use a central file bucket for backups and it can be used to send configuration files to different puppet managed servers.
How we create Puppet Server Centralized Bucket ?
Steps are here
Go to puppet masteràedit the site.ppà Go to puppet agentà Configure filebucket using Resource
—————————————————————————————————————-
Puppet Server 4.10 Configuration
Concept Puppet server Configuration
What is Puppet Server ?
Puppet Server is an application that runs on the Java Virtual Machine (JVM) and provides the same services as the classic Puppet master application
Why we use Puppet Server Configuration ?
To start and stop the service, you’ll use the usual commands for your OS, such as service puppetserver restart, service puppetserver status, etc.
How we configure Puppet Server ?
Here is the tasks
Go to puppet server main configuration file
Configure the Puppet Server
Configure the Puppet Agent
Add the port to firewall
Revoke the certificate from server
—————————————————————————————————–
Installing Puppet Server & Agent
Concept Installing Puppet server&Agent
What is Installing Puppet Server & Agent
Puppet uses a client/server model where the managed servers, called Puppet agents, talk to and pull down configuration profiles from the Puppet master.
Why we install the Puppet server & Agent ?
Puppet usually uses an agent/master (client/server) architecture, but it can also run in a self-contained architecture. Your choice determines which packages you install, and what extra configuration you need to do.”
Here are the steps
Add the DNS address on PuppetServer
Add DNS address on PuppetAgent
Download puppet collection package repository
Install the puppet server and puppet agent
—————————————————————————————————————-
Puppet Server – Managing Packages and Services
Concept Puppet managing Packages and Services
What is puppet package ?
Manage packages. There is a basic dichotomy in package support right now:
Some package types (such as yum and apt) can retrieve their own package files, while others (such as rpm and sun) cannot
Why we use puppet packages ?
For those package formats that cannot retrieve their own files, you can use the source parameter to point to the correct file.
How we use puppet packages ?
Throgh some attributes like
name, provider, ensure, adminfile, allow_virtual, allowcdrom, category, configfiles
Concept puppet services
What are the puppet services ?
Service support unfortunately varies widely by platform —
some platforms have very little if any concept of a running service, and some have a very codified and powerful concept” Puppet’s service support is usually capable of doing the right thing, but the more information you can provide, the better behaviour you will get.
Why we use puppet services ?
Through these attributes
binary, control, enable, ensure, flags, hasrestart, hasstatus, manifest,
path, pattern, provider, restart, start, status, stop”
How we use puppet packages ?
“To define the modules and to configure the envireonment throught it
—————————————————————————————————————-
Puppet Server – Scheduling Jobs with Cron
Concept Scheduling Jobs with Cron
What are Scheduling Jobs with Cron?
Scheduling Tasks with Cron Jobs.
Cron Jobs are used for scheduling tasks to run on the server.
They’re most commonly used for automating system maintenance or administration.
Why we use Scheduling Jobs with Cron?
Cron Jobs are used for scheduling tasks to run on the server.
They’re most commonly used for automating system maintenance or administration.
However, they are also relevant to web application development.
There are many situations when a web application may need certain tasks to run periodically”
How to create Scheduling Jobs with Cron?
Steps: Use the exec resource
Scheduling the job
—————————————————————————————————————-
Automate SSH configuration in 5 minutes with Puppet Enterprise
Concept Automate SSH configuration
What is Automate SSH configuration?
SSH (Secure SHELL) is an open source and most trusted
Network protocol that is used to login into remote servers for execution of commands and programs.
It is also used to transfer files from one computer to another computer over the network using secure copy (SCP) Protocol.
Why is Automate SSH configuration?
To setup password-less login on various environments using
Ssh keys to connect to remote Linux servers without entering password. Using password-less login with SSH keys will increase the trust between two Linux servers for easy file synchronization or transfer
How to create Automation SSH Configuration?
Here are the steps
Create Authentication SSH-Keygen Keys on env1
Create .ssh Directory on env
Upload Generated Public Keys to env2
Set permissions on env
Login from env1 to env2 server without password
—————————————————————————————————————-
Managing Users and Roles in Puppet Server
Concept Access-Control
What is Access Control?
In Puppet Enterprise (PE), role-based access control (RBAC) is used to manage user permissions.
Permissions define what actions users can perform on designated objects
Why we are use Access Control in Puppet?
Used to grant individual users the permission to perform specific actions
Permissions are grouped into user roles, and each user is assigned at least one user role.
How to do Access Control?
Give the user role access to a node group
Enable new user to log in
Assign the user role to the new user
Concept User-Roles
What are role of User Roles in Puppet?
The “”role”” in role-based access control refers to a system of user roles, which are assigned to user groups and their users.
Those roles contain permissions, which define what a user can or can’t do within PE.
Why we use user roles in puppet?
When you add new users to PE, they can’t actually do anything until they’re associated with a user role,
Either explicitly through role assignment or implicitly through group membership and role inheritance.
When a user is added to a role, they receive all the permissions of that role.
How to create user roles in puppet?
Give the user role access to a node group
Enable new user to log in
Assign the user role to the new user
—————————————————————————————————————-
Video- Puppet Labs Datacentre Automation
Concept Usage of Puppet
What is the puppet?
Puppet is a configuration management tool which is used to configure the dev, test, production, dr environment as per the organization requirement
Why we use puppet?
We use puppet to configure the environment and to automate configuration management
How Puppet works?
Create models of configurations by resource such as web servers, database servers and application servers
—————————————————————————————————————-
—————————————————————————————————————-
Video- Puppet Labs Datacentre Automation
Concept Usage of Puppet
What is the puppet?
Puppet is a configuration management tool which is used to configure the dev, test, production, dr environment as per the organization requirement
Why we use puppet?
We use puppet to configure the environment and to automate configuration management
How Puppet works?
Create models of configurations by resource such as web servers, database servers and application servers
—————————————————————————————————————-
Chef vs Puppet vs Ansible vs SaltStack Configuration Management Tools Comparison Edureka
Concept DevOps
What is DevOps?
Devops an enterprise software development phrase used to mean a type of agile relationship between development and IT operations
Why we use DevOps?
The goal of DevOps is to change and improve the relationship by advocating better communication and collaboration between these two business units
How can we use DevOps?
DevOps has various tools throughout the lifecycle of the project
Concept Infrastructure as code
What is Infrastructure as code?
Provisioning of Dev, test and Prod environment by writing code for infrastructure
Why we use IaC?
We can have the same environment throughout the organization
How do we implement IaC?
We write code in central sever by which we configure the Dev, Test, Production
Concept Configuration Management
What is Configuration Management?
Configuration management (CM) focuses on establishing and maintaining consistency of a product’s performance
Why do we need Configuration management tools?
Mass deployment, migrating from test to production, application failure
How can to provide Configuration management?
We Have various tools like chef, puppet, Ansible, salt-stack
—————————————————————————————————————-
Configuration management with Puppet Stephen Wallace
Concept Configuration management
What is configuration management?
Continuous process of recording and maintaining consistent and reliable records pertaining to an organization’s hardware and software composition, including software version control and hardware updates.
Why we use configuration management?
It will helps to have the same environment throughout the organization
How can we use configuration management?
We have various tools like puppet, Ansible, chef, salt stack which in turn helps to configure the management
Concept Usage Of manifest
What is Manifest?
Manifest are simply files that contain the Puppet code your resource declaration
Why we use manifest?
To define the resources
How can we use manifest?
We can declare the resources in the manifest using classes
—————————————————————————————————————-
Demo Using a Puppet manifest to install Apache Tomcat.
Concept Continuous Delivery
What is continuous delivery?
It is the ability to get changes of all types—including new features, configuration changes, bug fixes and experiments
Why we use continuous delivery?
It is often assumed that if we want to deploy software more frequently, we must accept lower levels of stability and reliability in our systems
How we do continuous Delivery?
Document to automate
Write an automated test to verify behaviour
Automate to single command
Version all scripts
Run headless with every change
Concept Puppet configuration files
What are the puppet configuration files?
The files are used to define the puppet configurations
Why we use puppet configuration files?
We use the puppet configuration files to define the modules, connectivity settings, node details
How do we use Puppet configuration files?
We use various files like site.pp, default.pp, init.pp where we define the configure settings of the puppet nodes and connectivity details between the nodes
—————————————————————————————————————-
Managing Mesos, Docker, and Chronos with Puppet
CONCEPT USAGE OF MESOS
What is Mesos?
Apache Mesos is a cluster manager that provides efficient resource isolation and sharing across distributed applications or frameworks
Why we use Mesos?
Enter Apache Mesos, a distributed systems kernel with built-in support for Docker containers, an HTTP API, a Web UI, true high availability, fault tolerance, and is designed natively for the cloud.
How we use Mesos?
It uses an algorithm called dominate-resource-fairness
CONCEPT USAGE OF DOCKER
What is a Docker?
Docker is a way to easily package and deploy your apps
Why we use Docker?
Able to run the application on just about any platform any cloud provider and easily deploy package
How we use Docker?
We can use Docker by pulling the images of the application from Docker hub or custom created, later we can run the application through that image
CONCEPT NEED OF PUPPET
What is the puppet?
Puppet is a configuration management tool which is used to configure the dev, test, production, dr environment as per the organization requirement
How to use puppet?
We have puppet master and puppet-agent
Puppet master is initial state where we prepare all the configuration
Once all the configuration are wrote in manifest we configure the nodes using these manifests
Why do we need puppet?
As we use puppet as configuration management tool which reduces the human involvement in configuring the environment
Puppet will reduce the time taken to configure the environment
CONCEPT Roles and Models of Puppet
What is the roles and models of puppet?
Role defines the business logic of your particular node
Why we use roles and models of the puppet
That every node is assigned a single roll each roll is made up of profiles
How we use the roles and models of the puppet
Those profiles can be compassable and reused across multiple nodes
Concept Usage of Classes
What is the class?
In Puppet class contains the package or module details
Why we use class?
we use class to define the module and the services provide by the module
How we use class?
We define the class in the manifest directory
Concept Building Docker Images With Puppet
What is Build Docker images?
We can create an image of the existing application as the image and reuse it
Why we use puppet to build Docker images?
Reuse your existing puppet code to start making a migration towards containers
How we Build Docker images with puppet?
As we have puppet master, puppet-agent configuration we can use puppet apply to build the images
—————————————————————————————————————-
How to Use Class Containment in Puppet
Concept Usage of Classes
What is the class?
In Puppet class contains the package or module details
Why we use class
We use class to define the module and the services provide by the module
How we use class
We define the class in the manifest directory
—————————————————————————————————————-
Puppet Best Practices- Roles & Profiles – Gary Larizza at PuppetConf 2016
Concept Usage of Profiles
What is a profile?
Wrapper classes that use multiple component modules to configure a layered technology stack
Why we use Profile?
Layers of indirection might seem like they add complexity, but they give you a space to build practical, business-specific interfaces to the configuration you care most about
How we use Profiles?
If your business will always use the same value for a given parameter, hardcode it.
If you can’t hardcode it, try to compute it based on information you already have
Concept Usage of Roles
What is a Role?
Wrapper classes that use multiple profiles to build a complete system configuration
Why we use Roles?
Layers of indirection might seem like they add complexity, but they give you a space to build practical, business-specific interfaces to the configuration you care most about
How we use Roles?
The only thing roles should do is declare profile classes with include. Don’t declare any component classes or normal resources in a role.
—————————————————————————————————————-
Organizing Puppet with Roles and Profiles
Concept Roles and profiles
Why we create the Roles and Profiles?
To group elements and modules together and
Represents actual implementation”
What are the Roles and Profiles?
Roles and profiles are just classes that appear as sub-classes to the profile or role module
How we implement puppet Roles and Profiles?
Move to production env
Move to sub-directory manifests
Create a .pp file
By the keyword of ‘include’ we can create profiles
A role is nothing but the group of all our profiles
—————————————————————————————————————-
Creating Roles and Assigning Roles to Nodes Puppet Server
Concept Roles and Profiles
Why we were creating and assigning the roles & profiles?
To group elements and modules together and
Represents actual implementation
What are the roles & profiles in puppet?
Profiles are really just to group elements and modules together
Roles represents actual implementation
How to creating roles and assigning roles to nodes puppet server?
Go to the modules directory in puppet master
Creates the .pp manifest & setting up the new node
Run the command,
Puppet agent -t
So node is created
—————————————————————————————————————-
Puppet Demo for user creation and package installation and file management
Concept Package Installation
Why we can create the user creation and package installation and file management in puppet?
Master can create or modify any file on puppet agent
Master can install or remove any package from remote puppet agent
Master can add a user on remote puppet agents
What is the role of users and packages installations in puppet?
To setup requirements, to install, to deploy and to configure systems
How we do user creation and package installation and
File management in puppet?”
check the contents in puppet agents
Configure contents that are not available in puppet agent
Restart the puppet master
Restart the puppet agent
After restarting puppet agent check the contents
Login with the created user
Configure any changes or remove package or install packages from that user”
—————————————————————————————————————-
Practical CI-CD with Puppet Code and Configuration
Concept Integration Testing
What is Integration testing?
A software development process which program units are combined and tested as groups in multiple ways. In this context, a unit is defined as the smallest testable part of an application
Why should we need to automate the integration testing?
Running integration tests automatically and avoiding human-introduced mistakes.
Making test results repeatable
How to automate integrate testing?
Tests running in parallel
A life-cycle model where system/integration tests run only after unit tests have passed
—————————————————————————————————————-
Mastering Code Deploy with Jenkins and Puppet
Concept Code Deploy
What is AWS Code Deploy?
An AWS service that coordinates application deployments to fleets of instances
Why AWS Code Deploy?
For Predictability, Deployment tracking, System downtime, Rollback and Complex to use
How do we do it?
Our Software Engineer in the Automation and Development team help customers automate their processes
In the cloud by developing a CI & CD solution for the AWS cloud, based on Code Deploy, Jenkins and Puppet
—————————————————————————————————————-
CI-CD on Windows-based Environments – Yes it is Possible – Noam Shochat
Concept Usage of Jenkins
What is Jenkins?
Jenkins is continuous integration system
Why we Use Jenkins?
The software enables developers to find and solve defects in a code base rapidly and to automate testing of their builds
How do we use Jenkins?
We can integrate various tools using plugins in Jenkins and automate all build process and increase the pace of the product delivery
Concept Usage of Puppet with windows
What is the puppet?
Puppet is a configuration management tool which is used to configure the dev, test, production, dr environment as per the organization requirement
Why we use puppet?
Enable feature
Install 3rd party apps
Creating folder
Installing/configure windows services
Installing/configure websites
How we use puppet?
We use puppet to with one central node called puppet-master later we configure the environment
Concept Usage of Mcollective
What is Mcollective?
Mcollective is a framework for building server orchestration or parallel job-execution systems
Why we use Mcollective??
Interact with clusters of servers, whether in small groups or very large deployments.
How we use Mcollective?
Write custom reports about your infrastructure.
Use agent plugins to manage packages, services, and other common components created by the community.
—————————————————————————————————————-
Continuous Integration with Puppet manifests
Concept Continuous integration
What is the Continuous integration with puppet manifests?
From a central machine continuously the manifests nothing but .pp files are integrated overall the target host machines
Why we need the Continuous Integration with puppet manifest?
Manifests are nothing but the .pp files which contain the operating details, deployment methods etc.
So for every targeted host system requires the .pp files
In order to have those details we need to integrate the puppet
How we create the Continuous Integration with puppet manifests?
Install or clone the Jenkins with puppet
Installing Jenkins plugins
To add slave to Jenkins
Installation of Oscar
—————————————————————————————————————-
Continuously Integrating Puppet
Concept continuously integrating
What is continuously integrating with puppet?
Continuous Integration (CI) with puppet is a development practice that requires developers to integrate code into a shared repository several times a day
Why we need continuously integrating with puppet?
For these reasons
Run your tests in the real world, Increase your code coverage, Deploy your code to production, Build stuff now, Build stuff faster, Don’t break stuff, Decrease code review time
How to enable continuous integration with puppet?
Continuous Integration of Puppet is done by Integration of Puppet with Jenkins. Here is the flow… Go to Jenkins > Manage Jenkins > Puppet Enterprise. Fill out the DNS address of the Puppet Enterprise Server. Note, if the Puppet agent is installed on the Jenkins server, it will be used to configure the Puppet Enterprise Server address.
—————————————————————————————————————-
043 Puppet Mote, Tomcat Integration with Jenkins
Concept Usage of Jenkins
What is Jenkins?
Jenkins is continuous integration system
Why we Use Jenkins?
The software enables developers to find and solve defects in a code base rapidly and to automate testing of their builds
How do we use Jenkins?
We can integrate various tools using plugins in Jenkins and automate all build process and increase the pace of the product delivery
Concept Continuously Integrating Puppet
What is continuously integrating with puppet?
Continuous Integration (CI) with puppet is a development practice that requires developers to integrate code into a shared repository several times a day
Why we need continuously integrating with puppet?
For these reasons, run your tests in the real world, Increase your code coverage, Deploy your code to production, Build stuff now, Build stuff faster, Don’t break stuff, Decrease code review time
How to enable continuous integration with puppet?
Continuous Integration of Puppet is done by Integration of Puppet with Jenkins. Here is the flow… Go to Jenkins > Manage Jenkins > Puppet Enterprise
—————————————————————————————————————-
Setting up Jenkins with Puppet
Concept Jenkins pipeline
What is the Jenkins pipeline with the Puppet code?
The Puppet Enterprise for Jenkins Pipeline plugin itself has zero system dependencies, making buy-in from the team that manages Jenkins simpler
Why we create jerkins pipeline with the Puppet code?
it easy to interface with Puppet Enterprise services such as the code management service and orchestrator service in order to use Puppet to perform some or all of the deployment tasks in a continuous delivery pipeline
How to create Jenkins pipeline with the Puppet code?
Go to Jenkins > Manage Jenkins > Puppet Enterprise. Fill out the DNS address of the Puppet Enterprise Server. Note, if the Puppet agent is installed on the Jenkins server, it will be used to configure the Puppet Enterprise Server address.
No comments:
Post a Comment