Skip to main content

Foreman,A Open Source Project

 1. What is Foreman?

Foreman is an open source project that helps system administrators manage servers throughout their lifecycle, from provisioning and configuration to orchestration and monitoring. Using Puppet, Chef, Salt, Ansible and Foreman’s smart proxy architecture, you can easily automate repetitive tasks, quickly deploy applications, and proactively manage change, both on-premise with VMs and bare-metal or in the cloud.
Foreman provide comprehensive, interaction facilities including a web frontend, CLI and RESTful API which enables you to build higher level business logic on top of a solid foundation.

The Foreman interface is very easy to use and user friendly.



As your organization grows, so does your workload — and the IT resources required to manage it. There is no “one-size-fits-all” system management solution, but a centralized, open source tool such as Foreman can help you manage your company’s IT assets by provisioning, maintaining, and updating hosts throughout the complete lifecycle.

Foreman becomes even more powerful when integrated with other open source projects and plugins, and I will discuss these in more detail below. To get started, however, let’s consider key functions of an effective system management tool.

Host provisioning is for deploying instances or virtual machines on bare-metal, on-premises, or a cloud provider’s data center.

Content management refers to publishing, promoting, and managing various versions of repositories and packages in the CDN and systems across the life cycle (i.e., development, testing, QA, and production).

Patch/errata management includes bug fixes and advisory or enhancement packages. An effective systems management tool should identify applicable errata regularly and patch registered systems promptly.

Subscription or license management enables the purchase, renewal, and extension of subscriptions through a systems management portal. This information should be updated frequently in the user account for each system.

Health monitoring and reporting enables real-time system checkups. This should include updates, errata, compliance, workload, and system performance metrics for registered hosts and running services.

Remote execution is for running arbitrary commands on hosts or groups of hosts to perform similar activities remotely. These commands can be customized; for example, to provision templates or partition tables.

Identity and policy lets you create different users and roles and manage various permission policies. This function should also support Kerberos and LDAP integration and authentication.

Alerts and notification audits administrator and user activities. This tool should instantly detect what changes are made in each node, when they are made, and where potential risk may exist.

Automation applies to repetitive tasks. A top systems management tool should help identify and automate these processes.

2. How to install Foreman?

Foreman can be installed on a Virtual Machine or on your bare metal.
For the initial setup, you must first open four mandatory ports 69 for TFTP, 80 for Http, 443 for Https UI access, 8140 for Puppet master and enable the Puppet, EPEL, and Foreman repositories. The following installation steps were performed on CentOS 7; however, other platforms that support Foreman installation include Fedora, Red Hat Enterprise Linux, Ubuntu, Oracle Linux, etc.

Step 1: Download Puppet, EPEL, and Foreman RPMs.

# yum -y install https://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
# yum -y install http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# yum -y install https://yum.theforeman

Step 2: Install and execute the Foreman installer RPM.
# yum -y install foreman-installer
# foreman-installer –help
# foreman-installer

Step 3: After installation, the installer with give you Foreman URL details, a default login user admin, and an auto-generated random password. Launch the Foreman https: URL on your browser and log in.



Successful installation of the Foreman tool using installer.



Login screen to Foreman GUI. Sign in here after installation to change your password.

Default password for Admin user is changeme.

For further information, you can refer to foreman documentation which includes information about foreman plugins and how to install them.

https://theforeman.org/documentation.html

Comments

Popular posts from this blog

Basics Of Ansible,A OpenSource Tech

What is Ansible? Ansible is simple open source IT engine which automates application deployment, intra service orchestration, cloud provisioning and many other IT tools. Ansible uses playbook to describe automation jobs, and playbook uses very simple language i.e.  YAML  (It’s a human-readable data serialization language & is commonly used for configuration files, but could be used in many applications where data is being stored)which is very easy for humans to understand, read and write. Hence the advantage is that even the IT infrastructure support guys can read and understand the playbook and debug if needed (YAML — It is in human readable form). Ansible is designed for multi-tier deployment. Ansible does not manage one system at time, it models IT infrastructure by describing all of your systems are interrelated. Ansible is completely agentless which means Ansible works by connecting your nodes through ssh(by default). But if you want other method for connection like K...

Web Development the Beginning…

  As I mentioned in my latest gift(blog) that  web-development  can be done with the help of many tools such as, 1)  Node.js – open source, runtime environment for developing Web apps 2) AngularJs  — structural framework for dynamic Web apps 3)  Brackets  — a modern, open source text editor 4) Bootstrap  — Javascript framework for developing responsive Web apps 5) LESS  — the dynamic stylesheet language 6) Atom  — a text editor 7) Notepad ++  — a text editor To develop any web application, the things required are, 1) Code Editor  (Text Editor) 2) OS  (Operating System) and 3) Language  (in which we are coding) There are many  web-development   languages  but, the most  popular , easy to  code  and  dynamic  are , 1) HTML (Hypertext Markup Language) 2) CSS (Cascading Style Sheets) 3) XML (EXtensible Markup Language) 4) PHP (Hypertext Preprocessor) 5) SQL (Structured Query Languag...