Chinaunix首页 | 论坛 | 博客
  • 博客访问: 351689
  • 博文数量: 52
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 577
  • 用 户 组: 普通用户
  • 注册时间: 2013-04-27 14:21
个人简介

知道自己该干嘛,知道自己能干嘛

文章分类

全部博文(52)

文章存档

2019年(1)

2018年(8)

2017年(2)

2016年(11)

2015年(3)

2014年(10)

2013年(17)

我的朋友

分类: 系统运维

2013-12-30 16:36:43

         
            之前一直都在忙于自考
,没有写博客,今天把最近研究的Cobbler写一篇,就当做是一篇学习笔记,记录一下部署流程。我们平常在日常工作中,拿到服务器的第一件事就是安装系统,现在公司采用的是 pxe+dchp+tftp+kickstart 安装系统的方式,首先说一下这种安装方式的优缺点,优点简单易学,运维必备技能。缺点:老旧,落后,横向扩展能力差,由于安装后没有网络可用受到很大制约,无法初始一些基础软件的安装 。在经过一番调研之后,我准备选用Cobbler在作为部署系统的应用平台,理由: 软件成熟,应用人群广泛,资料多,有web界面,可以定制系统,通过snippet 在post阶段可以安装基础软件。使用Cobbler 实现什么需求 , 安装系统,根据cobbler system 定义系统,安装好系统以后不需要在手动配置ip,hostname,dns,etc 。安装zabbix 与 saltstack agent 系统启动之后 自动注册各自的平台,zabbix 自动注册 zabbix-server 自动添加基础监控模板并开启对此主机的监控,自动注册saltstack-server,ipmi电源管理等等。

             部署环境 :  
                                 cobbler-server dell PowerEdge C6220

                                 cobbler-server OS   Centos6.4
                                 cobbler-server yum repo EPEL
                                 cobbler_server ip : 192.168.137.123
           
            再部署之前,首先请安装上与你系统对应的EPEL源的RPM包,很多软件我门都会使用yum安装

            部署目标及步骤 : ① 部署Cobbler-server
                                          ② 通过Cobbler 定制系统,通过Cobbler system完成自定义安装
                                          ③ 安装系统所需要的一些基础工具与 zabbix agent salt-minion

            step 1  :  部署基础的Cobbler环境
                           yum 安装一切

  1.               yum install -y cobbler httpd rsync tftp-server xinetd dhcp python-ctypes cman pykickstart                        
                          修改配置文件
  1.              vim /etc/cobbler/settings    // Cobbler主配置文件
  2.                        sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings    // 开启管理dhcp功能
  3.                        sed -i 's/manage_rsync: 0/manage_rsync: 1/' /etc/cobbler/settings    // 开启管理rsync功能
                         next_server : 192.168.137.123  // 设置你的 tftp server 地址, 和cobbler_server 是同一台地址
                         server : 192.168.137.123    // cobbler_server 地址  

                          getsebool 
                          getsebool:  SELinux is disabled    // 关闭 selinux
                          /etc/init.d/iptables stop    // 关闭防火墙

                          vim /etc/xinetd.d/tftp
                          service tftp
                          {
                                        disable                 = no    // 开启 tftp 服务

                         vim /etc/xinetd.d/rsync
                          service rsync
                          {
                                        disable                 = no    // 开启 rsync 服务


                          vim /etc/httpd/conf.d/wsgi.conf
                          取消掉  LoadModule wsgi_module modules/mod_wsgi.so 前的"#"号    // apache 启动加载 wsgi 模块

                          openssl passwd -1 -salt 'random-phrase-here' 'Cailu' 
                          $1$random-p$WdA.q7B.jLd413ds.EunF0    // 生成系统安装后的 root 密码

                         # cobbler has various sample kickstart templates stored
                         # in /var/lib/cobbler/kickstarts/.  This controls 
                         # what install (root) password is set up for those
                         # systems that reference this variable.  The factory
                         # default is "cobbler" and cobbler check will warn if
                         # this is not changed.
                         # The simplest way to change the password is to run 
                         # openssl passwd -1
                         # and put the output between the "" below.
                            default_password_crypted: "$1$random-p$WdA.q7B.jLd413ds.EunF0"

                         配置DHCP
                         如果你通过 cobbler 管理 dhcp , 只需要填写 cobbler dhcp 模板
                         vim /etc/cobbler/dhcp.template    添加一段配置
                         
                        subnet 192.168.137.0  netmask 255.255.255.0 {
                                                         option routers             192.168.137.123;     // dhcp 分配的网关
                                                         option domain-name-servers 202.106.0.20;    // dhcp 分配的DNS服务器地址
                                                         option subnet-mask         255.255.255.0;    // 分配使用的掩码
                                                         range dynamic-bootp        192.168.137.100 192.168.137.120;    //分配地址的范围
                                                         default-lease-time         600;    // 默认租约时间
                                                         max-lease-time             1200;    // 最大租约时间
                                                         next-server                192.168.137.123;    // tftp server 地址
                                                         class "pxeclients" {
                                                         match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
                                                         if option pxe-system-type = 00:02 {
                                                                             filename "ia64/elilo.efi";
                                                         } else if option pxe-system-type = 00:06 {
                                                                             filename "grub/grub-x86.efi";
                                                         } else if option pxe-system-type = 00:07 {
                                                                             filename "grub/grub-x86_64.efi";
                                                         } else {
                                                                             filename "pxelinux.0";
                                                         }
                                                   }
 
                         ifconfig eth0:0 192.168.137.123 netmask 255.255.255.0    // 在eth0 网卡绑定临时IP

                                                      vim /etc/sysconfig/dhcpd
                                                      # Command line options here
                                                      DHCPDARGS=eth0:0    // 修改DHCP监听接口为我们刚才绑定的临时网口

                                                      配置相关服务开机启动
                                                       chkconfig httpd on
                                                       chkconfig cobblerd on
                                                       chkconfig dhcpd on
                                                       chkconfig xinetd on
                                                       chkconfig tftp on

                                                      开启相关服务
                                                      /etc/init.d/httpd start

                                                      /etc/init.d/dhcpd start
                                                      /etc/init.d/xinetd start
                                                      /etc/init.d/cobblerd start

 
                                                   cobbler get-loaders    // 下载引导操作系统文件
                                                     yum install debmirror -y
                                                     vim /etc/debmirror.conf
                                                     #@dists="sid";    // 注销
                                                     #@arches="i386";    // 注销
                
                                                     使用 cobbler check 检查环境是否 配置成功
                                                     cobbler check
                                                     No configuration problems found.  All systems go.

                                                     到此步骤为止,cobbler server 就算配置好了   

                                                   
 

                                                                                                                                                           emar_Cail





                          
                
    


阅读(1951) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~