Skip to main content

Installing Puppet 4 On RHEL/CentOS-7

Installing Puppet Open Source 4


Pre-Install Checks:

1. Decide on a Deployment Type:

Because Puppet can run in Mater/Agent(Server/Client) mode and also in stand-alone mode, So we need to decide which type of installation we are going to install. Accordingly we need to choose the packages.


2. Hardware Requirements:

I. The Puppet agent service has no particular hardware requirements and can run on nearly anything.

II. At minimum, Puppet master server should have two processor cores and at least 1 GB RAM.

III. To comfortably serve at least 1000 nodes, it should have 2-4 processor cores and at least 4 GB RAM.


3. Network Configuration.

I. In an agent/master deployment, we must prepare our network for Puppet’s traffic.

Firewall: 8140 port

Name Resolution: Every node must have a unique hostname.Forward and reverse DNS must both be configured correctly. Or we can create entries in /etc/hosts file.


4. Timekeeping on the Puppet Master Server:

The time must be set accurately on the Puppet master server that will be acting as the certificate authority. We Have to use NTP.



Installing the Packages:

Most Linux systems including CentOS, Redhat, Ubuntu, and Debian have packages. Still not available for Mac OS X package. For a complete list of supported platforms, view the system requirements page.


First of all we need to Install a Release Package to Enable Puppet Labs Package Repositories:

Installing on CentOS-7/RHEL-7

# rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm

Now we can install the puppetserver package:

# yum install puppetserver

Note: This will also install puppet-agent package on the machine.

If we want to edit the master machine settings, we can simply open the config file, which is on different location then the previous version.

/etc/puppetlabs/puppet/puppet.conf

Now we need to set Java Heap Size:

What is Java heap size ?
Java heap size is for hardware and for the amount of traffic the service will be handling.

# vim /etc/sysconfig/puppetserver 

JAVA_ARGS="-Xms1g -Xmx1g
It means we are going to set 1g memory for the puppet master service.

If we want to assign 512M memory then, we can set: -Xms512m -Xmx512m

Stating the PuppetServer Service:

# systemctl start puppetserver

or

# /opt/puppetlabs/bin/puppetserver foreground – -debug


Now we can verify the service is running or not:

# netstat -tupnl | grep 8140

<<==NEXT WILL CHECK THE DIFFERENCE BETWEEN PUPPET 3 AND 4 ==>>


Comments

Popular posts from this blog

LINUX CONTAINERS

LINUX CONTAINERS What is Linux Container:  Linux containers have different approach than the Virtualization technology. Simply we can say this is OS level Virtualization, which means all containers run on top of one linux operating system.  We can start containers on a hardware running machine or inside of running virtual machine. Each container run's as a fully isolated operating sysem. In container virtualization rather than having an entire Operating System guest OS, containers isolate the guest but do not virtualize the hardware. For running containers one needs a patched kernel and user tools, the kernel provides process isolation and performs resource management. Thus all containers are running under the same kernel but they still have their own file system, processes, memory etc. Linux based containers mainly involved with two concepts: 1. Namespaces 2. Cgroups ( Controll Groups) There are total 6 types of Namespaces: 1. PID Na...

Setting up DNS service Add-On in kubernetes

Setting up DNS service Add-On in kubernetes What things get DNS names? Every Service defined in the cluster (including the DNS server itself) is assigned a DNS name. By default, a client Pod’s DNS search list will include the Pod’s own namespace and the cluster’s default domain. This is best illustrated by example: Assume a Service named “ my-service ” in the Kubernetes namespace “ dev ” . A Pod running in namespace “ dev ” can look up this service by simply doing a DNS query for “ my-service ” . A Pod running in namespace can look up this service by doing a DNS query for my-service.dev . Kubernetes offers a cluster addon for DNS service discovery, which most environments enable by default. “SkyDNS” seems to be the standard DNS server of choice, since it was designed to work on top of etcd. The “ kube-dns” addon is composed of a kubernetes service which, like all services, is allocated an arbitrary VIP within the preconfigured subnet (this is the IP that every other serv...

Canonical Kubernetes Platform

Recently,  Canonical has announce the release of the Canonical Kubernetes Platform version 1.32, a robust and user-friendly solution for seamless cluster creation and management. This platform is designed to simplify the deployment and maintenance of containerized workloads, making it an ideal choice for both developers and enterprises. Here are some of the attracting features of this Platform.  ZeroOps with Built-in Essentials:  The platform comes pre-configured with critical components such as networking, DNS, metrics server, local storage, ingress, gateway, and load balancer, enabling immediate productivity post-installation. Simplified Installation and Maintenance:   Leveraging snap packages, the installation process is straightforward, and automated patch upgrades enhance security without manual intervention. Effortless Scalability:  Adding new nodes is seamless, and achieving high availability requires minimal effort, ensuring your infrastructure sca...