150 likes | 242 Views
Member: Wei-Jie Hsiao 、 Hui-Hsiung Chung Advisor: Quicy Wu Date: Mar.23. Configuring Systems with cfengine. Outline. Getting an Overview of cfengine Learning the Basic Setup. Getting an Overview of cfengine.
E N D
Member: Wei-Jie Hsiao、Hui-Hsiung Chung Advisor: Quicy Wu Date: Mar.23 Configuring Systems with cfengine
Outline • Getting an Overview of cfengine • Learning the Basic Setup
Getting an Overview of cfengine • Cfengine is software you can use to automate changes on UNIX (and UNIX- like) systems. • It is a high- level language that describes system state, not a general- purpose programming language such as Perl or a shell.
Getting an Overview of cfengine(cont.) • Cfengine can use Several ways to management the systems as follows: • Setup the network interface • Edit the system files • Edit the permission to access files • Delete the unused flies
The Components of cfengine: • Cfagent • Cfservd • Cfexecd • Cfkey • cfrun
cfagnet • The autonomous configuration agent (the heart of the framework). This command can be run manually (on demand),cfexecd on a regular basis, and/or by cfservd when triggered by a remote cfrun invocation. The necessary and sufficient condition for using cfengine is to run cfagent somehow.
Cfservd • The file- transfer and remote- activation daemon. You must run this on any cfengine file servers and on any system where you would like to execute cfagent remotely.
Cfexecd • Generates public/private key pairs and needs to be run only once on every host.
cfkey • The execution and reporting daemon. You run this either as a daemon or as a regular cron job. In either case, it handles running _b]cajp and reporting its output.
cfrun • You can run this command from a remote system that will contact the clients (through cfservd) and tell them to execute cfagent.
Learning the Basic Setup • Download the Cfengine from here http://www.cfengine.org, or any other website and install it. • Example: • Step1: • $ tar zxf cfengine-2.x.x.tar.gz • $ cd ./cfengine-2.x.x • $ ./configure • $ make • $ sudo make install
Learning the Basic Setup(cont.) • Then create the working directly as follows: • Step2: • # mkdir /var/cfengine • # mkdir /var/cfengine/bin • # mkdir /var/cfengine/inputs
Learning the Basic Setup(cont.) • Copy the binary code of cfengine to working directly • Step3: • # cp /usr/local/sbin/cfagent /var/cfengine/bin • # cp /usr/local/sbin/cfexecd /var/cfengine/bin • # cp /usr/local/sbin/cfservd /var/cfengine/bin • # chown -R root:0 /var/cfengine • # chmod -R 755 /var/cfengine
Learning the Basic Setup(cont.) • The first time we use the cfengine • # /usr/local/sbin/cfkey • # /var/cfengine/bin/cfagent • cfengine::/bin/echo Dange: Danger, Will Robinson! • Then we can check whether the cfengine is successfully working or not • #/var/cfengine/inputs/cfagent.conf • control: • actionsequence = ( shellcommands ) • shellcommands: • “/bin/echo Danger, Will Robinson!”