zoukankan      html  css  js  c++  java
  • Cobbler 部署

    环境介绍

    Cobbler 操作系统: Centos-7.2-x86_64
    Cobbler服务器地址: 10.90.0.10

    部署 Cobbler

    1. 安装 Centos epel 原

      [root@node1 ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm

    2. 安装软件&启动服务

      [root@node1 ~]# yum install httpd dhcp tftp python-ctypes cobbler cobbler-web pykickstart fence-agents
      [root@node1 ~]# systemctl start cobblerd.service
      [root@node1 ~]# systemctl enable httpd
      [root@node1 ~]# systemctl start httpd
      # 下载cobbler相关组件
      [root@node1 ~]# cobbler get-loaders
      出现*** TASK COMPLETE ***字符表示下载成功
      检查需要修改的配置:由于不同的环境,提示会不一样,只需要安装提示内容一一解决即可
      
    3. 检查需要修改的配置:由于不同的环境,提示会不一样,只需要安装提示内容一一解决即可。

      [root@localhost ~]# cobbler check
      The following are potential configuration items that you may want to fix:
      
      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 : change 'disable' to 'no' in /etc/xinetd.d/tftp
      4 : enable and start rsyncd.service with systemctl
      5 : debmirror package is not installed, it will be required to manage debian deployments and repositories
      6 : 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
      
      Restart cobblerd and then run 'cobbler sync' to apply changes.
      解决第一个和第二个提示:设置cobbler地址和设置dhcp服务器地址
      [root@node1 ~]# vim /etc/cobbler/settings
      next_server: 10.90.0.10
      server: 10.90.0.10
      第三个和第四个提示解决:启动tftp和rsyncd服务
      [root@node1 ~]# yum -y install tftp-server xinetd
      启用tftp服务:
      [root@node1 ~]# vim /etc/xinetd.d/tftp
      disable = no
      启动xinetd服务:
      [root@node1 ~]# systemctl enable rsyncd.service
      [root@node1 ~]# systemctl enable xinetd
      [root@node1 ~]# systemctl start xinetd.service
      [root@node1 ~]# netstat -nulp | grep xinetd
      udp 0 0 0.0.0.0:69 0.0.0.0:* 3659/xinetd
      第5个可以不用解决 debian系统
      第六个提示解决:设置cobbler密码,同时也是安装服务器的登录密码
      [root@node1 ~]# openssl passwd -1 -salt 'Tczaflw@521' 'Tczaflw@521'
      $1$JM/i5ygv$cLMbz2ud00P6KI9XiEGj10
      修改cobbler把生成的密码放入配置文件
      [root@node1 ~]# vim /etc/cobbler/settings
      default_password_crypted: "$1$JM/i5ygv$cLMbz2ud00P6KI9XiEGj10"
      [root@node1 ~]# cobbler check
      只剩下5即可
      
    4. Cobbler管理DHCP服务器配置

      1. 编辑cobbler配置文件,开启cobbler管理dhcp

        [root@node1 ~]# vim /etc/cobbler/settings
        manage_dhcp: 1
        
      2. 编辑cobbler的dhcp管理模版,设置dhcp分配的网段,网管,dns信息

        [root@node1 ~]# vim /etc/cobbler/dhcp.template
        subnet 10.90.0.0 netmask 255.255.0.0 {
             option routers             10.90.0.10;
             option domain-name-servers 114.114.114.114;
             option subnet-mask         255.255.0.0;
             range dynamic-bootp        10.90.0.100 10.90.0.200;
        
      3. 同步cobbler配置:同步之前先重启cobbler保证所有配置生效

        [root@node1 ~]# systemctl restart cobblerd.service
        [root@node1 ~]# cobbler sync
        
    5. Cobbler导入镜像

      1. 挂载iso文件到系统

        [root@node1 ~]# mount /dev/cdrom /mnt
        
      2. 导入镜像文件到cobbler

        cobbler import --path=/mnt/ --name=Centos-7.2-x86_64 --arch=x86_64
        task started: 2016-11-19_170133_import
        task started (id=Media import, time=Sat Nov 19 17:01:33 2016)
        Found a candidate signature: breed=redhat, version=rhel6
        Found a candidate signature: breed=redhat, version=rhel7
        Found a matching signature: breed=redhat, version=rhel7
        Adding distros from path /var/www/cobbler/ks_mirror/Centos-7.2-x86_64:
        creating new distro: Centos-7.2-x86_64
        trying symlink: /var/www/cobbler/ks_mirror/Centos-7.2-x86_64 -> /var/www/cobbler/links/Centos-7.2-x86_64
        creating new profile: Centos-7.2-x86_64
        associating repos
        checking for rsync repo(s)
        checking for rhn repo(s)
        checking for yum repo(s)
        starting descent into /var/www/cobbler/ks_mirror/Centos-7.2-x86_64 for Centos-7.2-x86_64
        processing repo at : /var/www/cobbler/ks_mirror/Centos-7.2-x86_64
        need to process repo/comps: /var/www/cobbler/ks_mirror/Centos-7.2-x86_64
        looking for /var/www/cobbler/ks_mirror/Centos-7.2-x86_64/repodata/*comps*.xml
        Keeping repodata as-is :/var/www/cobbler/ks_mirror/Centos-7.2-x86_64/repodata
        *** TASK COMPLETE ***
        
      3. 查看cobbler已经有了一个安装源;使用如下命令可以获取到cobbler命令详细报表

        [root@node1 ~]# cobbler profile list
            Centos-7.2-x86_64
        [root@node1 ~]# cobbler profile report
        Name                           : Centos-7.2-x86_64
        TFTP Boot Files                : {}
        Comment                        :
        DHCP Tag                       : default
        Distribution                   : Centos-7.2-x86_64
        Enable gPXE?                   : 0
        Enable PXE Menu?               : 1
        Fetchable Files                : {}
        Kernel Options                 : {}
        Kernel Options (Post Install)  : {}
        Kickstart                      : /var/lib/cobbler/kickstarts/sample_end.ks
        Kickstart Metadata             : {}
        Management Classes             : []
        Management Parameters          : <<inherit>>
        Name Servers                   : []
        Name Servers Search Path       : []
        Owners                         : ['admin']
        Parent Profile                 :
        Internal proxy                 :
        Red Hat Management Key         : <<inherit>>
        Red Hat Management Server      : <<inherit>>
        Repos                          : []
        Server Override                : <<inherit>>
        Template Files                 : {}
        Virt Auto Boot                 : 1
        Virt Bridge                    : xenbr0
        Virt CPUs                      : 1
        Virt Disk Driver Type          : raw
        Virt File Size(GB)             : 5
        Virt Path                      :
        Virt RAM (MB)                  : 512
        Virt Type                      : kvm
        
      4. centos7的自动安装ks 文件---CentOS-7.2-x86_64.cfg

        #Kickstart Configurator for cobbler by Jason Zhao
        #platform=x86, AMD64, or Intel EM64T
        #System  language
        lang en_US
        #System keyboard
        keyboard us
        #Sytem timezone
        timezone Asia/Shanghai
        #Root password
        rootpw --iscrypted $default_password_crypted #cobbler 配置文件中的密码
        #Use text mode install
        text
        #Install OS instead of upgrade
        install
        #Use NFS installation Media
        url --url=$tree # URL地址(也就是安装源)设置为$tree表示自动获取;
        #System bootloader configuration
        bootloader --location=mbr
        #Clear the Master Boot Record
        zerombr
        #Partition clearing information
        clearpart --all --initlabel 
        #Disk partitioning information
        part / --fstype="xfs" --size=3072
        part /boot --fstype="xfs" --size=500
        part /software --fstype="xfs" --grow --size=1
        #System authorization infomation
        auth  --useshadow  --enablemd5 
        #Network information
        $SNIPPET('network_config') # 网卡配置也无须手动配置而是由cobbler进行配置。
        #network --bootproto=dhcp --device=em1 --onboot=on
        # Reboot after installation
        reboot
        #Firewall configuration
        firewall --disabled 
        #SELinux configuration
        selinux --disabled
        #Do not configure XWindows
        skipx
        #Package install information
        %pre
        $SNIPPET('log_ks_pre')
        $SNIPPET('kickstart_start')
        $SNIPPET('pre_install_network_config')
        # Enable installation monitoring
        $SNIPPET('pre_anamon')
        %end
        
        %packages --nobase
        @ core
        %end
        
        %post
        systemctl disable postfix.service
        %end
        
      5. 修改Centos-7.2-x86_64的kickstart文件

        [root@node1 ~]# cobbler profile edit --name Centos-7.2-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS-7.2-x86_64.cfg
        [root@node1 ~]# cobbler profile report | grep Kickstart
        Kickstart                      : /var/lib/cobbler/kickstarts/CentOS-7.2-x86_64.cfg
        Kickstart Metadata             : {}
        在装机时设置Centos7网卡为eth0
        [root@node1 ~]# cobbler profile edit --name=Centos-7.2-x86_64 --kopts='net.ifnames=0 biosdevname=0'
        设置完成使用cobbler sync进行同步配置
        
    6. 配置 cobbler_web
      

    7. 测试安装-成功

  • 相关阅读:
    分数加减法
    两点距离
    1的个数
    Swift 了解(1)
    ARC快速入门
    ARC基本概念
    autorelease注意事项
    autorelease基本使用
    NSTimer的使用
    如何监听控件的行为
  • 原文地址:https://www.cnblogs.com/edwardlogs/p/Cobbler-bu-shu.html
Copyright © 2011-2022 走看看