Difference between revisions of "Winter 2011 Handout - Installing Func In the Arm Build Farm"

From CDOT Wiki
Jump to: navigation, search
(Challenges)
(Challenges)
Line 34: Line 34:
 
When transitioning to the ARM build environment, there were a few challenges we had to overcome.
 
When transitioning to the ARM build environment, there were a few challenges we had to overcome.
  
Since the ARM arch is relatively new to Fedora , we need to check if it has been successfully build and if we can get it from the YUM repo, or are we going to have to build from source
+
* Since the ARM arch is relatively new to Fedora , we need to check if it has been successfully build and if we can get it from the YUM repo, or are we going to have to build from source
  
It seems to me like ARM Fedora has some incompatibilities with hardware calls made by func, this is effecting the functionality of some of the modules used in func.
+
* It seems to me like ARM Fedora has some incompatibilities with hardware calls made by func, this is effecting the functionality of some of the modules used in func.
  
By default, func on are cannot dynamically configure the minion to use hostname or IP. These settings must be specified by the configuration file.
+
* By default, func on are cannot dynamically configure the minion to use hostname or IP. These settings must be specified by the configuration file.
  
 
= Results =
 
= Results =

Revision as of 14:32, 12 April 2011


Status

This page status is: DRAFT.

Title

Participants

Timothy Furzer - Semester 6 CTYC

Introduction

Func is a multifaceted multi-module application for generating secure connections to one or more remote machines. Managing a build farm of many arm machines has the potential to utilize this software to great potential. Proper installation and configuration of this software goes hand in hand with the development and deployment of other cluster management software such as Puppet and Icinga. Func can perform functions such as executing remote shell commands, calling hardware info, querying RPM databases of one or more machines managed by the Overlord machine, and contributes to CDOTs goal of centralized management

Approach

Before actually putting Func into action on production systems within CDOT I set up a test environment using my current VMWare ESXi infrastructure at home, creating a small 3-system environment with Fedora 13 and core packages. After installing and configuring a traditional func environment, understanding its operation and components to look at when troubleshooting, I could mirror this installation in the ARM build farm and troubleshoot any issues that would arise. Func consists of two parts. Certmaster, which is the mechanism for implementing the PKI encrypted communication between master and minion. The second part of the install is the func command and API system. The install on my little test infrastructure was fairly straightforward in nature.


On all machines involved we need to install the func package, (works on FC7 and above, NOARCH). Since we know CDOT has host files established for our environment with only 3 machines we simply add the machines to the /etc/hosts file. the three machines are names, certmaster, certminion1 and certminion2 respectively.


By default func ships with a wide variety of modules that can be utilized straight out of the box to execute commands on your system for a list of these pre-included module see https://fedorahosted.org/func/wiki/ModulesList. As well as being extended to add support for the execution of programs written in python, or bash.

Challenges

When transitioning to the ARM build environment, there were a few challenges we had to overcome.

  • Since the ARM arch is relatively new to Fedora , we need to check if it has been successfully build and if we can get it from the YUM repo, or are we going to have to build from source
  • It seems to me like ARM Fedora has some incompatibilities with hardware calls made by func, this is effecting the functionality of some of the modules used in func.
  • By default, func on are cannot dynamically configure the minion to use hostname or IP. These settings must be specified by the configuration file.

Results

Links

Timothy Furzer's Blog
Func Website

Acknowledgments

Pictures / Graphics