cobbler自动化部署多种类型的操作系统,一个软件全部搞定

简介:

在生产环境中难免会遇到,一些服务器需要安装centos,一些服务器需要安装ubuntu,或者一些系统需要安装centos6.4一些系统需要安装centos6.5,这时PXE就满足不了我们的要求。本文将介绍cobbler来实现此功能。


Cobbler必选的服务:

TFTP

Rsync

DHCP

DNS(根据需求)

Cobbler 命令:

Import

Sync

Reposync

Build ISO

核心概念:

Distros:定义启动内核、initrd文件等

Profiles:指定kickstart     指定level

 

Cobbler:

 

一、安装cobbler

前提:cobblerepel源提供,故此需要事先配置指向epelyum源方可进行类似下面的安装过程。

注意关闭selinux

wget http://mirrors.opencas.cn/epel/6/i386/epel-release-6-8.noarch.rpm

rpm -ivh epel-release-6-8.noarch.rpm 

yum clean all

 

# yum install cobbler cobbler-web pykickstart debmirror -y

# service httpd start

# service cobblerd start

# cobbler check


执行“cobbler check命令检查存的问题,而后逐一按提示解决之。常见的问题如下所示:

1 : The 'server' field in /etc/cobbler/settings must be set to something other than localhost, or kickstarting features will not work.  This should be a resolvable hostname or IP for the boot server as reachable by all machines that will use it.

2 : For PXE to be functional, the 'next_server' field in /etc/cobbler/settings must be set to something other than 127.0.0.1, and should match the IP of the boot server on the PXE network.

3 : 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.

4 : change 'disable' to 'no' in /etc/xinetd.d/rsync

5 : comment 'dists' on /etc/debmirror.conf for proper debian support

6 : comment 'arches' on /etc/debmirror.conf for proper debian support

7 : 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

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

Restart cobblerd and then run 'cobbler sync' to apply changes.

如上各问题的解决方法如下所示:

1、修改/etc/cobbler/settings文件中的server参数的值为提供cobbler服务的主机相应的IP地址或主机名,如172.16.100.15

2、修改/etc/cobbler/settings文件中的next_server参数的值为提供PXE服务的主机相应的IP地址,如172.16.100.16

3、如果当前节点可以访问互联网,执行“cobbler get-loaders”命令即可;否则,需要安装syslinux程序包,而后复制/usr/share/syslinux/{pxelinux.0,memu.c32}等文件至/var/lib/cobbler/loaders/目录中;

4、执行“chkconfig rsync on”命令即可;

5、注释/etc/debmirror.conf文件中的“@dists="sid";”一行;

6、注释/etc/debmirror.conf文件中的“@arches="i386";”一行;

7、执行“openssl passwd -1 -salt $(openssl rand -hex 4)”生成密码,并用其替换/etc/cobbler/settings文件中default_password_crypted参数的值;

8、执行“yum install cman fence-agents”命令安装相应的程序包即可;

接着重启cobblerd,而后执行“cobbler sync”同步新的配置至cobbler

二、安装DHCP

 

yum install dhcp -y

vim /etc/dhcp/dhcpd.conf

option domain-name "magedu.com";

option domain-name-servers 192.168.10.254,172.16.0.1;

default-lease-time 43200;

max-lease-time 86400;

log-facility local7;

subnet 192.168.10.0 netmask 255.255.255.0 {

    range 192.168.10.21 192.168.10.100;

    option routers 192.168.10.254;

}

next-server 192.168.10.254;

filename="pxelinux.0";

service dhcpd start

service xinetd restart 

cobbler sync


导入镜像文件:

插入光盘

挂载  [root@localhost ~]# mount /dev/cdrom /misc/cd

cobbler import --name="rhel-6.5-x86_64" --path=/misc/cd

cobbler distro list 查看

 

配置Kickstart

yum install system-config-kickstart -y

system-config-kickstart

kickstart配置参照网上其他例子,这里不做介绍

vim defcault.cfg

url --url="http://192.168.100.1/cobbler/ks_mirror/rhel-5.4-x86"

 

添加profile

cp /root/rhel-x86.cfg /var/lib/cobbler/kickstarts

cobbler profile add --name=rhel-5.4-i386-basic --distro=rhel-5.4-i386 --kickstart=/var/lib/cobbler/kickstarts/rhel-x86.cfg

 

拷贝ks.cfg文件

cp /var/lib/cobbler/kickstarts/ks.cfg /var/www/html/cobbler/ks.cfg

编辑并修改

vim /var/lib/tftpboot/pxelinux.cfg/default 

 

ks=http://192.168.19.42/cobbler/ks.cfg

重启服务

 

service cobblerd restart 

Cobbler list 查看

开启虚拟机测试!!!











本文转自 赵大鑫 51CTO博客,原文链接:http://blog.51cto.com/xinzong/1694856,如需转载请自行联系原作者
目录
相关文章
|
4天前
|
XML 数据管理 测试技术
深入探索软件自动化测试框架的设计与实现
【4月更文挑战第26天】 随着软件开发周期不断缩短,传统的手动测试方法已难以满足快速迭代的需求。本文聚焦于自动化测试框架的构建与优化,旨在提供一种高效、可维护且可扩展的软件测试解决方案。文章从自动化测试的必要性出发,详细阐述了自动化测试框架设计的核心要素,包括模块化设计、数据驱动测试以及关键词驱动测试等概念。同时,结合实例分析了如何利用流行的测试工具进行框架搭建,并提出了针对常见问题的创新解决方法。最后,通过案例研究展示了该框架在实际项目中的应用效果和潜在改进空间。
|
4天前
|
监控 Ruby
使用Ruby编写的电脑监控软件:自动化任务管理与运行状态监测
本文介绍了一款使用Ruby编写的电脑监控软件,该软件通过自动化任务管理和系统状态监测提供便利的系统管理。示例代码展示了如何定义任务类、运行任务、检查系统状态并在异常时发送通知。此外,还说明了如何将监控数据自动提交到网站以进行进一步分析,从而确保系统稳定运行。
65 0
|
4天前
|
存储 Linux API
软件体系结构 - 嵌入式系统(2)- 嵌入式操作系统
软件体系结构 - 嵌入式系统(2)- 嵌入式操作系统
17 0
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
深入探索软件自动化测试的未来趋势
【5月更文挑战第12天】 随着软件开发周期的不断缩短和市场需求的快速变化,传统的手动测试方法已经难以满足现代软件质量保证的需求。自动化测试作为一种高效、可靠的解决方案,正逐渐成为行业标配。本文将深入探讨自动化测试的最新发展,分析其在持续集成/持续部署(CI/CD)环境中的作用,以及人工智能(AI)如何重塑测试实践。同时,我们还将展望自动化测试工具和技术的未来演进路径。
|
4天前
|
JSON 监控 调度
局域网管理软件的自动化任务调度:Python 中的 APScheduler 库的应用
使用 Python 的 APScheduler 库可简化局域网管理中的自动化任务调度。APScheduler 是一个轻量级定时任务调度库,支持多种触发方式如间隔、时间、日期和 Cron 表达式。示例代码展示了如何创建每 10 秒执行一次的定时任务。在局域网管理场景中,可以利用 APScheduler 定期监控设备状态,当设备离线时自动提交数据到网站,提升管理效率。
29 0
|
4天前
|
人工智能 大数据 测试技术
深入探索软件自动化测试的未来
【5月更文挑战第8天】随着科技的不断发展,软件测试领域正经历着前所未有的变革。本文将深入探讨软件自动化测试的现状与未来,从人工智能、大数据和云计算等方面分析其对软件测试的影响,以及如何利用这些技术提高测试效率和质量。
|
4天前
电子好书发您分享《2023龙蜥操作系统大会统信软件分论坛》
`2023龙蜥操作系统大会统信软件分论坛聚焦产业合作,探索操作系统新未来。[阅读电子书](https://developer.aliyun.com/ebook/8318/116368?spm=a2c6h.26392459.ebook-detail.4.762f2594SihPuU)`
36 7
|
4天前
|
机器学习/深度学习 人工智能 算法
深入探索软件自动化测试的优化策略
【5月更文挑战第4天】 随着软件开发周期的不断缩短和发布频率的增加,传统的手动测试方法已无法满足快速迭代的需求。因此,本文聚焦于自动化测试流程的优化,旨在提高测试效率和质量。文章首先回顾了自动化测试的基本概念与实施条件,随后分析了当前自动化测试面临的主要挑战,包括维护成本高、测试用例设计复杂等问题。在此基础上,提出了一系列优化策略:持续集成环境下的自动化测试、数据驱动测试、关键字驱动测试、以及基于人工智能的测试用例生成和维护等。通过案例分析和性能评估,验证了这些策略在提升测试覆盖率和减少人工干预方面的有效性。
|
4天前
|
机器学习/深度学习 敏捷开发 人工智能
探索软件自动化测试的未来趋势
【5月更文挑战第4天】 在快速发展的信息时代,软件已成为支撑现代社会运行的核心力量。随之而来的是软件测试领域面临的挑战和机遇,特别是自动化测试技术。本文将深入探讨自动化测试的最新发展,分析其对提高软件开发效率、降低维护成本的重要性,同时预测未来可能的技术趋势。通过实际案例分析和最新研究动态的梳理,旨在为读者呈现一个清晰的自动化测试技术蓝图。
|
4天前
|
测试技术 持续交付 数据安全/隐私保护
深入理解软件自动化测试中的数据驱动策略
【5月更文挑战第1天】 在软件测试领域,自动化测试已经成为提高测试效率和质量的重要手段。其中,数据驱动测试(DDT)作为一种高效实施自动化测试的策略,允许测试用例与测试数据分离,增强了测试脚本的可维护性和灵活性。本文将详细探讨数据驱动测试的核心概念、实现方式以及在实际中的应用案例,帮助读者更深入地理解如何利用数据驱动策略优化自动化测试流程。