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

Docker Container Management from Cockpit

Cockpit can manage containers via docker. This functionality is present in the Cockpit docker package. Cockpit communicates with docker via its API via the /var/run/docker.sock unix socket. The docker API is root equivalent, and on a properly configured system, only root can access the docker API. If the currently logged in user is not root then Cockpit will try to escalate the user’s privileges via Polkit or sudo before connecting to the socket. Alternatively, we can create a docker Unix group. Anyone in that docker group can then access the docker API, and gain root privileges on the system. [root@rhel8 ~] #  yum install cockpit-docker    -y  Once the package installed then "containers" section would be added in the dashboard and we can manage the containers and images from the console. We can search or pull an image from docker hub just by searching with the keyword like nginx centos.   Once the Image downloaded we can start a contai

Remote Systems Management With Cockpit

The cockpit is a Red Hat Enterprise Linux web-based interface designed for managing and monitoring your local system, as well as Linux servers located in your network environment. In RHEL 8 Cockpit is the default installation candidate we can just start the service and then can start the management of machines. For RHEL7 or Fedora based machines we can follow steps to install and configure the cockpit.  Following are the few features of cockpit.  Managing services Managing user accounts Managing and monitoring system services Configuring network interfaces and firewall Reviewing system logs Managing virtual machines Creating diagnostic reports Setting kernel dump configuration Configuring SELinux Updating software Managing system subscriptions Installation of cockpit package.  [root@rhel8 ~] #  dnf   install cockpit cockpit-dashboard  -y  We need to enable the socket.  [root@rhel8 ~] #  systemctl enable --now cockpit.socket If firewall is runnin

Containers Without Docker on RHEL/Fedora

Docker is perfectly doing well with the containerization. Since docker uses the Server/Client architecture to run the containers. So, even if I am a client or developer who just wants to create a docker image from Dockerfile I need to start the docker daemon which of course generates some extra overhead on the machine.  Also, a daemon that needs to run on your system, and it needs to run with root privileges which might have certain security implications. Here now the solution is available where we do not need to start the daemon to create the containers. We can create the images and push them any of the repositories and images are fully compatible to run on any of the environment.  Podman is an open-source Linux tool for working with containers. That includes containers in registries such as docker.io and quay.io. let's start with the podman to manage the containers.  Install the package  [root@rhel8 ~] # dnf install podman -y  OR [root@rhel8 ~] # yum