Introduction of Foreman architecture 1-why is Foreman so powerful as an automated O & M tool?

Source: Internet
Author: User

Zero-basic learning puppet automated configuration management documents

Before the introduction of Foreman, I have tested another front-end software in puppet, namely Kermit (Kermit. fr needs a wall ). To be honest, the Kermit-based architecture is still quite good, especially in the combination of various mcollective plug-ins. Unfortunately, the Community is too inactive, the software version is too slow, and there are too many pitfalls, finally, I gave up. However, his architecture is worth learning from. For those who want to build a UI on the puppet frontend, they can provide more reference.

This article introduces another outstanding front-end management tool foreman. What is Foreman? The official definition is as follows: foreman is a complete life cycle management tool for physical and virtual servers (Foreman is a complete lifecycle management tool for physical and virtual servers ).

Why should we introduce Foreman as the front-end of the configuration management tool?

This article analyzes the following aspects:

1. Foreman Architecture

A foreman installation will always contain a central Foreman instance that is responsible for providing the web based GUI, node configurations, initial host configuration files, etc. however, if the foreman installation supports unattended installations then other operations need to be completed MED to fully automate this process. the smart proxy manages remote services and is generally installed with all Foreman installations to allow for TFTP, DHCP, DNS, and puppet, and the puppet ca.

The above is an official definition. I will summarize it based on the daily usage (taking the latest stable Version 1.5.2 as an example)

  1. Foreman itself is only a framework, and uses smart-proxy to proxy various applications to complete various functions. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_architecture.png "alt =" Foreman frame "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman Frame

  2. Foreman uses proxy DNS, DHCP, and TFTP to complete the graphic unified management windows for KickStart, cobbler, jumpstart, and other automated installation system tools, the result is that you only need to customize various templates (PXE and Ks) on Foreman. Different templates can also nest various fragments (SNIPPET) for unified and simplified purposes. After that, you can add nodes and associate various templates to generate various PXE and Ks files for automatic installation. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_2.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_3.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  3. Foreman manages puppet Automatic Signature, puppet environment, class, variable, and facter by proxy puppet and puppet ca. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_4.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_5.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  4. Foreman manages the association between class and node through ENC and static group. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_6.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  5. With puppet plugin, Foreman can complete the trigger action of the puppet command on the node on the UI. The trigger method can be implemented by puppetkick (abandoned), mcollective (SUDO), and puppetssh (sshkey), salt, mrmrun, and other tools. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_7.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  6. Foreman can collect the reports and execution status after all nodes run puppet. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_8.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  7. Foreman also provides various search and report functions to better display the running status of nodes. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_9.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  8. In addition to bare metal management, Foreman can also manage various virtualization software, such as Rev-M, EC2, vmwware, and openstack. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_10.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  9. Foreman can also be integrated with LDAP and AD.

  10. Foreman also provides powerful user and permission management portals, allowing you to create multiple users, multiple user groups, and define roles for permissions. The functions and hosts displayed by users with different permissions on the UI are different. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_11.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

  11. Foreman also provides the audits (Audit) function for all operations on the UI, which ensures that all operations can be traced. 650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_12.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

In addition, there are many other functions ....

Due to the shortcomings of configuration management, the combination of Foreman and mcollective is not very good. It just borrowed the puppetkick plug-in to integrate a command of mcollective, in this regard, it is still necessary to wait for any improvement in the future.

2. Foreman's version blueprint

The foreman version development diagram is as follows:

650) This. width = 650; "src =" http://kisspuppet.com/img/foreman_leaning_1.png "alt =" Foreman version development map "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Foreman version development path

It can be seen that Foreman's development is quite rapid, and both version change and community activity are quite good. Currently, the latest stable version is 1.5.2, while the RC version of 1.6.0 is just released (statistical date: January 1, August 19, 2014)Current version development and expected line chart:Http://projects.theforeman.org/rb/releases/foreman

3. Foreman community activity

Foreman Google groups:

Https://groups.google.com/forum! Forum/Foreman-Users

Https://groups.google.com/forum! Forum/Foreman-Dev

IRC of FOREMAN:"# Theforeman"

Http://webchat.freenode.net/

@ Kisspuppet

August 19, 2014 Shanghai

Return to the main directory for communication:

Public Account: puppet2014You can search and join, or scan the following QR code to join

650) This. width = 650; "src =" http://kisspuppet.com/img/weixin.jpg "alt =" Public Account "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/> Public Account

QQ chat group: 296934942

650) This. width = 650; "src =" http://kisspuppet.com/img/contact1.jpg "alt =" QQ Contact Group "style =" margin: 0px; padding: 0px; Height: auto; Border: none; "/>


This article is from the "www.kisspuppet.com" blog, please be sure to keep this source http://dreamfire.blog.51cto.com/418026/1542171

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.