运维自动化部署Cobbler的安装过程

一、概述

服务最好安装在 Centos下,它需要Python支持。

Cobbler服务是一个容器,它整合了以下几个开源软件:

1 Dhcp

2 Dns (可选bind,dnsmasq)

3 Kickstart/PXE

4 Apache(提供kickstart 的安装源,并提供定制化的kickstart配置)

5 Tftp (PXE启动时需要)

同时,它和apache做了深度整合。通过 cobbler,可以实现对RedHat/Centos/Fedora系统的快速部署,同时也支持Suse 和Debian(Ubuntu)系统。

综上所述,一个理想的安装环境是:



相关配置参数:



官方文档 : https://github.com/cobbler/cobbler/wiki/

二、 安装

1) 定义 Yum源

可根据自己所在地选择离自己近的镜像源,比如mirrors.163.com或mirrors.sohu.com

相关配置文件: /etc/yum.repos.d/CentOS-Base.repo

2) 安装 epel源

Centos5 32位: rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/5/i386/epel-release-5-4.noarch.rpm

Centos5 64位: rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm

Centos6 32位: rpm -Uvh 'http://mirrors.ustc.edu.cn/fedora/epel/6/i386/epel-release-6-7.noarch.rpm'

Centos6 64位: rpm -Uvh 'http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-7.noarch.rpm'

确定是否正确安装 :

yum list|grep -E "^epel"

epel-release.noarch 5-4 installed

也可以用这个命令: rpm -qa |grep -i epel

3) 安装cobbler服务

A) yum -y install cobbler

确认是否正确安装 :

rpm -qa |grep -i cobbler

B) 安装其它需要的服务

yum -y install cman tftp-server dhcp cobbler cobbler-web bind pykickstart rsync

根据需要来,比如 我的测试环境不需要bind,就没有安装

需要确认 mod_wsgi已经正确安装,否则需要手动安装

yum -y install mod_wsgi

确认apache配置已经 加载wsgi_module: /etc/httpd/conf.d/wsgi.conf

4) 安装debmirror

debmirror 可以用来下载 ubuntu 12.04的镜像源 来做本地源.

目前debmirrors, 只能使用rpm包安装, 先装依赖包

yum -y install ed patch perl perl-Compress-Zlib perl-Cwd perl-Digest-MD5 perl-Digest-SHA1 perl-LockFile-Simple perl-libwww-perl

安装debmirrors :

rpm -Uvh 'http://mirrors.ustc.edu.cn/fedora/epel/5Server/x86_64/debmirror-20090807-1.el5.noarch.rpm'

5) 关闭selinux 和防火墙

sed -i '/^SELINUX=/ s/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

setenforce 0

//为调试方便,暂时关闭防火墙

service iptables stop

6) 启动Cobbler服务

/etc/init.d/cobblerd start

7) 可能会缺少的包:

请注意察看 cobbler服务启动的报错信息,我第一次安装时候就遇到有关 ctypes的报错,只能手动安装:

yum -y install python-ctypes

8) Cobbler相关配置

根据需要修改 cobbler主配置文件: /etc/cobbler/settings

//cobbler监听IP是 192.168.100.1

sed -i 's/server: 127.0.0.1/server: 192.168.100.1/g' /etc/cobbler/settings

//pxe安装 只允许一次,防止误操作 ( 在正式环境有用。实际测试来看,这个功能可以屏蔽掉 )

sed -i 's/pxe_just_once: 0/pxe_just_once: 1/g' /etc/cobbler/settings

//dhcp 服务的IP地址,PXE过程中 会用到

sed -i 's/next_server: 127.0.0.1/next_server: 192.168. 100.1 /g' /etc/cobbler/settings

//支持 对的dhcp管理,在做自定义配置时,需要修改dhcp相关配置,以配合PXE启动用

sed -i 's/manage_dhcp: 0/manage_dhcp: 1/g' /etc/cobbler/settings

9) 进行cobbler系统检查

cobbler check

可自动 检查安装环境是否满足cobbler服务的需要

出现如下结果提示:

The following are potential configuration items that you may want to fix:

1 : some network boot-loaders are missing from /var/lib/cobbler/loaders, you may run 'cobbler get-loaders' to download them, or, if you only want to handle x86/x86_64 netbooting, you may ensure that you have installed a *recent* version of the syslinux package installed and can ignore this message entirely. Files in this directory, should you want to support all architectures, should include pxelinux.0, menu.c32, elilo.efi, and yaboot. The 'cobbler get-loaders' command is the easiest way to resolve these requirements.

//解决办法 : 执行 cobbler get-loaders

2 : since iptables may be running, ensure 69, 80/443, and 25151 are unblocked

//解决办法 : iptables 保证对 69 80 443 25151 端口的 数据没有限制,如果仅仅只是在内部环境中使用,建议直接将防火墙关掉

3 : debmirror package is not installed, it will be required to manage debian deployments and repositories

//解决办法 : debian 安装用,暂时可以不管;如果需要安装,下载地址为:http://rpmfind.net/linux/rpm2html/search.php?query=debmirror

4 : The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to 'cobbler' and should be changed, try: "openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'" to generate new one

//解决办法 : 默认加密的密码,可以修改

5 : fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them

//解决办法 : 关于电源管理(跟DELl 远程控制协议类似东西?),也暂时不管。

10)重启 cobbler,并更新相关配置

//重启服务

/etc/init.d/cobblerd restart

//同步最新cobbler配置,它会根据配置自动修改dhcp,bind 等服务,因此我称之为容器的原因。

cobbler sync

注:在 对cobbler进行研究的整个过程中,得到了前辈陈沙克老师( www.chenshake.com ) 的大力支持和解惑,在编写此文时,也借鉴了部分沙克老师的文章,特此感谢。

(0)

相关推荐

  • linux中运维自动化之Cobbler 系统安装使用详解

    cobbler的简介 cobbler是Redhat支持的一个开源项目,用来部署和安装系统。所以对Redhat系列os支持是比较好的。不过对ubuntu支持是非常差的。cobbler里不少设置,只针对r ...

  • 运维自动化核心_Python的重要性(新人必看!)

    前段时间,在深圳举办了一场关于Python开发的沙龙,主题是关于用 Python在测试,运维,开发,游戏,人工智能,包括新起的VR技术等领域相关的拓展和发展 总结只需要学会一门语言,就可以实现整个应用 ...

  • 6要点助你开发自动化运维架构

    运维自动化是我们所渴望获得的,但是我们在一味强调自动化能力时,却忽略了影响自动化落地的一个关键因素.那便是跟运维朝夕相处,让人又爱又恨的业务架构. 操作方法 01 要点一:架构独立 任何架构的产生都是 ...

  • 开发自动化运维架构六要素

    运维自动化是我们所渴望获得的,但是我们在一味强调自动化能力时,却忽略了影响自动化落地的一个关键因素.那便是跟运维朝夕相处,让人又爱又恨的业务架构. 操作方法 01 要点一:架构独立 任何架构的产生都是 ...

  • 云计算时代的运维与安全

    云计算时代给大家带了很多机遇,同时也带来了很多挑战,有人就认为随着云的普及,运维人员将会最终消失。当然,这个论点不免有些偏激,但云时代的确给运维带来了很多不同,也让运维从业人员开始思考很多问题。在近日 ...

  • 如何避开ERP系统软件后期运维的风险

    在ERP软件实施项目中,除了前期选型和中期实施上的风险,还有减小后期系统运维上的风险也很重要.下面就讲讲在ERP软件运维过程中有哪些注意要点. 操作方法 01 运维在ERP项目中的地位 即使ERP软件 ...

  • 自动化运维之 Puppet 实战

    随着IT行业的迅猛发展,传统的运维方式靠大量人力比较吃力,近几年自动化运维管理快速的发展,得到了很多IT运维人员的青睐,一个完整的自动化运维包括系统安装、配置管理、服务监控三个方面。那今天咱们大家一起 ...

  • 运维老鸟教你安装centos6.5选择安装包的方法

    系统安装类型选择及自定义额外包组 进入如图2-28所示界面.上半部分是系统定制的不同的系统安装类型选择项,默认是“Desktop”,这里我们选择“Minimal”,即最小化安装,下半部分是在上面系统安 ...

  • 运维老鸟谈生产场景对linux系统进行分区的方法

    老鸟谈生产场景如何对linux系统进行分区? 前言: 我们买房子时,会考虑1室1厅,2室1厅,或3室2厅......!那么具体如何选,是要看 手中的money和家庭的人口数量. 同理,服务器操作系统在 ...