自动化运维之Cobbler

自动化运维:

        随着信息时代的持续发展,IT运维已经成为IT服务内涵中重要的组成部分。面对越来越复杂的业务,面对越来越多样化的用户需求,不断扩展的IT应用需要越来越合理的模式来保障IT服务能灵活便捷、安全稳定地持续保障,这种模式中的保障因素就是IT运维(其他因素是更加优越的IT架构等)。从初期的几台服务器发展到庞大的数据中心,单靠人工已经无法满足在技术、业务、管理等方面的要求,那么标准化、自动化、架构优化、过程优化等降低IT服务成本的因素越来越被人们所重视。其中,自动化最开始作为代替人工操作为出发点的诉求被广泛研究和应用。

 

运维操作:
         系统安装(物理机、虚拟机)–>程序安装、配置、服务启动–>批量操作(批量运行命令)–>程序发布–>监控 

运维工具Ops:
             OS Povisoning: 安装OS
                  Cloud: image template
                  Physical: PXE,Cobbler
              Configuration:程序安装、配置、服务启动
                  ansible(python), puppet(ruby), saltstack(python)新生比较难
              Command and Control:批量操作
                  ansible, fabric

Cobbler介绍:

 Cobbler能够快速建立多系统同时安装的网络系统安装环境;传统的pxe+dhcp+tftp+kickstart仅能够提供单一系统安装,功能过于简单;如果遇到安装不同操作系统时就遇到瓶颈;而cobbler正好解决了这一问题。Cobbler是多安装树的PXE环境,是PXE的高级封装。

Cobbler由不同的组件配合完成系统安装,各组件之间配合如下图所示:

                        拓扑图.png

三个核心组件:
                 repository:
                      mirror
                      import
                 distribution:表示一个操作系统。它承载了内核和 initrd 的信息,以及内核参数等其他数据

                 profile:包含一个发行版、一个 kickstart 文件以及可能的存储库,还包含更多特定的内核参数等其他数据。

Cobbler安装:(主要在VMware测试环境下需设置网卡为NAT模式并关闭其DHCP功能)

    yum install cobbler cobbler-web pykickstart debmirror(支持安装debain系统) httpd syslinux dhcp tftp-server

    yum install.png

    安装dhcp-server:

    yum install dhcp-server

    cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

    dhcp1.png

启动:

     systemctl start httpd    systemctl start rsyncd systemctl start cobblerd

检查cobbler环境问题:

    cobbler check

    check.png

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

    
如上各问题的解决方法如下所示:
1、修改/etc/cobbler/settings文件中的server参数的值为提供cobbler服务的主机相应的IP地址或主机名,如192.168.139.100;
2、修改/etc/cobbler/settings文件中的next_server参数的值为提供PXE服务的主机相应的IP地址,如192.168.139.100;
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”命令安装相应的程序包即可;

 

cobbler通过import导入方式添加distro文件:

先导入centos6.5映像文件至光盘然后挂载到mnt目录

[root@cobble ~]# mount -r /dev/cdrom /mnt

profile.png

#kickstart文件可按实际需要制作,这里直接修改cobbler里的kickstart里的安装模板,添加关键配置项如下:

  cp /var/lib/cobbler/kickstarts/sample_end.ks /var/lib/cobbler/kickstarts/CentOs-6.5-x86_64.cfg

  url.png

 添加新的profile的文件:(centos6和centos7文件系统不一样不能使用同一个profile文件)

cobbler profile add –name="Centos6.5-x86_64Mn" –distro="Centos6.5-x86_64"  

–kickstart=/var/lib/cobbler/kickstarts/CentOs-6.5-x86_64.cfg

Centos7在文件/var/lib/tftpboot/pxelinux.cfg/default  Centos7栏目append initrd后面添加 

     inst.repo=http://192.168.139.100/cobbler/ks_mirror/Centos-7.0-x86_64

    1111.png

客户端安装系统:
 3333.png

Cobbler 更简单:Web 界面

您可能希望轻松地可视化 Cobbler 对象,并为每天的重复任务重用对象值。Cobbler 提供了一个很有用的 Web 界面,您可以通过该界面实现此目的。要使用这个界面,首先需要安装它的程序包:

yum -y install cobbler-web

安装该程序包后,配置 Cobbler 授权和身份验证系统,以便您可以登录。配置位于文件 /etc/cobbler/modules.conf 中

可使用 LDAP、PAM 和配置文件等身份验证选项。因为 PAM 非常常见,所以使用它执行身份验证。在授权一节中,定义哪些用户拥有使用该工具的官方许可。将 module 值设置为 authz_ownership,以便您可在 users.conf 文件中指定谁能够访问 Web 界面。配置类似于清单 10 中的代码:
清单 10. Cobbler Web 界面的身份验证和授权配置
[authentication]

module = authn_pam

[authorization]
module = authz_ownership
存该文件。接下来,您需要一个名为 myuser 的系统用户(如果没有,可使用 useradd myuser && passwd myuser 创建)。然后,打开文件 /etc/cobbler/users.conf 并将 myuser 添加到 admins 组(这个组拥有对象的完整访问权)

配置已完成。现在,重新启动 Cobbler 和 Apache 服务以应用更改:

systemctl restart cobblerd 
systemctl  restart httpd
Web 界面很简单:左侧的菜单显示了配置类(比如存储库、系统、发行版和配置文件)、资源(用于配置管理)和操作(导入、同步)。单击一个配置类,就会在屏幕右侧列出所有对象。可通过每一项旁边的按钮(Edit、Copy、Rename、Delete)应用列表过滤器和执行不同操作

   web.png

   感谢马哥,每天进步一点点! 

原创文章,作者:n18-jude,如若转载,请注明出处:http://www.178linux.com/15099

(0)
n18-juden18-jude
上一篇 2016-04-21
下一篇 2016-04-22

相关推荐

  • 如何安装VMware Workstation

    1、打开安装包,直接点击“下一步” 2、选择接受条款,单击“下一步” 3、选择安装路径,单击“下一步” 4、单击“下一步”,也可以勾选掉两个选项   5、单击“下一步”   6、点击“安装”   7、完成安装  

    2017-07-11
  • Linux发展史

    Linux发展史 一、历史 (一)、Unix 1、Unix操作系统是一个强大的多用户、多任务操作系统,支持多种处理器架构。 2、最早由KenThompson(汤普逊)、Dennis Ritchie(丹尼斯·里奇,C语言之父,Unix之父)和Douglas McIlroy(麦克罗伊,程式设计师)于1969年在AT&T的贝尔实验室开发。 3、目前它的商标…

    Linux干货 2016-10-14
  • 计算机的组成及其功能

    计算机系统由硬件系统和软件系统两大部分组成。冯诺依曼奠定了现代计算机的基本结构。 冯诺依曼体系的计算机,必须具有如下功能: #1 把需要的程序和数据送至计算机中; #2 具有长期记忆程序、数据、中间结果及最终运算结果的能力; #3 能够完成各种算术运算、逻辑运算和数据传送等数据加工处理的能力; #4 能够根据需要控制程序走向,并能根据指令控制机器的各部件协调…

    Linux干货 2016-08-15
  • ​Bash2

    字串比较时变量最好使用"" 这样就不会报错了,只是退出码不为0 组合条件:     与:[ condition1 -a condition2 ]或condition1 && condition2     或:[ condition1 -o co…

    Linux干货 2016-09-25
  • Ubuntu 葵花宝典入门篇——要练此功,可能得自宫?

        此文章给初入ubuntu的小伙伴们写一篇装机篇和使用心得。第二期会给小伙伴介绍软件安装篇。如题目所说,乌班图确实是葵花宝典,练好了天下无敌。只是如果要安装UBUNTU系统,只是在虚拟机上跑跑是不够的,你必须在实际的桌面环境和服务器环境上才能体会到它的运行方式,而桌面环境和服务器环境几乎差不多。所以安装桌面版可以更好的理解…

    Linux干货 2017-03-26
  • MySQL Order By实现原理分析和Filesort优化

    在MySQL中的ORDER BY有两种排序实现方式: 1、利用有序索引获取有序数据 2、文件排序 在使用explain分析查询的时候,利用有序索引获取有序数据显示Using index。而文件排序显示Using filesort。 1.利用有序索引获取有序数据         &…

    Linux干货 2015-04-13