目录


作用
组件
命令
安装过程
    安装包
    配置文件
    启动cobbler服务
    配置cobbler服务
    使用cobbler_web

作用:系统自动化安装,支持linux,也支持win

核心组件(组件必须):

distros(发行版)    cobbler依靠此组件去读取外部的kernel和initrd,即系统版本
profiles and sub-profiles    cobbler依靠此组件将kickstart文件和distros文件关联起来,构建自动化的整体配置信息,提供系统的初始化安装信息(sub-profiles提供额外信息)
systems    cobbler借助此组件来配置网络接口
repos(profiles的补充组件)    cobbler借助此组件完成软件安装,一个yum源
images(systems的补充组件)    cobbler借助此组件完成特定功能
组件的继承关系:distros>>profiles>>systems,即配置后一个,均需要指定前一个组件名
还有一些软件分发组件,不过这个不好用,因此可以用puppet替代
相关信息>>[*]非必须 {*}必须
列出当前已经配置好的组件信息:cobbler [组件] list    --不加组件,则显示所有组件
删除组件信息:cobbler {组件} remove --name=对应组件的配置名
修改组件信息:cobbler {组件} edit --name=对应组件的配置名 继承关系的关联配置名 [--distros=] [--kickstart=]
            |__ cobbler profiles edit --name=centos-6.4-x86_64-develop --distros=centos-6.4-x86_64 --kickstart=centos-6.4-x86_64.cfg

命令:

import    可以将一个完整的系统光盘的kernel和initrd导出到cobbler中
sync
reposync    repo同步
build iso
command line search
replication 复制
validate kickstart
配置过程:
1.安装包(属于epel源,请先配置好epel,这里就不说怎么搞了,然后直接yum以下安装包)
如果安装过程提醒gpgcheck的话
则加入--nogpgcheck
cobbler    httpd    cobbler-web(提供网络接口)    debmirror    pykickstart

2.配置文件路径/etc/cobbler,在此目录中,包含了众多的服务模板文件.
/etc/cobbler/settings    --定义主配置信息
/etc/cobbler/modules.conf    --定义cobbler可以管理的服务模块
/etc/cobbler/users.digest    --定义账号密码,关联web访问
路径里面存放了多个服务样板,均以template后缀显示

3.启动cobbler服务
3-1.启动httpd服务.(进行cobbler check命令检查前,必须先启动httpd服务),并且关闭selinux
#service cobblerd start
3-2.cobbler check    --检查cobbler环境错误,依据错误提示进行更正
常见的所需更正的错误如下:
>>#vim /etc/cobbler/settings
    next_server: tftp_ip
    server: tftp_ip
#一般来说,tftp就是cobbler自身,故而此处ip均填写自身ip,不要使用127.0.0.1
>>#关闭selinux
>>#cobbler get-loaders    --下载bootloader所需文件
    pxelinux.0    menu.c32    --与pc server有关的文件,这里是linux所需的
>>#清空iptables规则,并关闭iptables,如果是内网的话,或者,开启69,80/443,25151端口
>>#vim /etc/xinetd.d/rsync
    |__    disable = no
#chkconfig rsync on
>>#vim /etc/debmirror.conf,注释以下两项
    #@dists="sid"
    #@arches="i386"
>>#openssl passwd -1 -salt `openssl rand -hex 4`    --生成8位随机数,并加上输入的密码,组成一个新的加密密码
    修改/etc/cobbler/settings
    default_password_crypted:"加入生成的加密密码"
>>#yum install fence-agents

3-3.再次重启服务,并检查
3-4.同步cobbler
>>#cobbler sync
同步后,会在tftp下生成多个文件/var/lib/tftpboot/*

4.配置cobbler
4-1.修改/etc/cobbler/settings
查看manage_*开头的标签,dhcp默认参数是0,tftp默认参数是1
0表示不使用/etc/cobbler/modules.conf中的托管服务功能,1表示使用;若不使用托管,则需要自己手动配置各种服务.
4-2.这里我们就使用默认配置,即手动配置dhcp服务,tftp托管
>>#yum install dhcp tftp-server
>>#dhcp和tftp服务具体配置信息可以参照PXE简要配置过程
4-3.命令行模式配置cobbler
定义一个cobbler系统自动化配置
>>挂载系统光盘
    #mount /dev/cdrom /media
>>定义distro,提供内核文件(使用import方式,即将内核和init文件放置于自身,而不是外部).
    #cobbler import --name="rhel6-6.4-x86_64" --path=/media/
    文件默认导入到/var/www/cobbler,--path定义光盘挂载位置

    #cobbler distro list
    rhel-6.4-x86_64
    如果同一个内核,而所需软件不同,则多次执行以下三步即可
>>提供kickstart文件,提供安装模板,便于profile中调用.
    #yum install -y system-config-kickstart
    利用system-config-kickstart,并将生成的文件改名为rhel-6.4-x86_64.cfg,名字什么的其实无所谓.具体文件参考:cobbler之ks文件示例
>>定义profile,profile的名字将会在启动菜单中显示.(profile是从distro继承过来的,故而需要指定distro)
    #cobbler profile add --name=rhel-6.4-x86_64-basic --distro=rhel-6.4-x86_64 --kickstart=/root/rhel-6-x86_64.cfg
    #cobbler profile list
    rhel-6.4-x86_64-basic
>>同步cobbler
    #cobbler sync
    依据同步信息,可以看出vmlinuz和initrd.img被连接到/var/lib/tftpboot/images/,即从网站目录连接到了ftp服务器上.
    trying hardlink /var/www/cobbler/ks_mirror/centos-6.5-x86_64/images/pxeboot/vmlinuz -> /var/lib/tftpboot/images/rhel-6.4-x86_64/vmlinuz
    trying hardlink /var/www/cobbler/ks_mirror/centos-6.5-x86_64/images/pxeboot/initrd.img -> /var/lib/tftpboot/images/rhel-6.4-x86_64/initrd.img
>>查看菜单文件,即引导文件pxelinux.cfg,这里定义了cobbler的所有发行版的内核路径和initrd路径以及ks模板路径
    查看/var/lib/tftpboot/pxelinux.cfg/default,ks的路径可能有点问题
    直接选择默认安装方式,设置非手动
>>至此cobbler已经可以正常工作.

5.使用cobbler_web配置cobbler
5-1.cobbler_web的bug修复
当前epel源中提供的cobbler_web(程序包为cobbler-2.2.3-2.el6.noarch)存在bug,其/usr/share/cobbler/web/settings.py文件的内容需要修改为如下内容。
# Django settings for cobbler-web project.
import django
 
DEBUG = True
TEMPLATE_DEBUG = DEBUG
 
ADMINS = (
    # ('Your Name', 'your_email@domain.com'),
)
 
MANAGERS = ADMINS
 
DATABASE_ENGINE = ''     # cobbler-web does not use a database
DATABASE_NAME = ''      
DATABASE_USER = ''      
DATABASE_PASSWORD = ''  
DATABASE_HOST = ''      
DATABASE_PORT = ''      
 
# Force Django to use the systems timezone
TIME_ZONE = None
 
# Language section
# TBD.
LANGUAGE_CODE = 'en-us'
USE_I18N = False
 
SITE_ID = 1
 
# not used
MEDIA_ROOT = ''
MEDIA_URL = ''
ADMIN_MEDIA_PREFIX = '/media/'
 
SECRET_KEY = ''
 
# code config
 
if django.VERSION[0] == 1 and django.VERSION[1] < 4:
    TEMPLATE_LOADERS = (
        'django.template.loaders.filesystem.load_template_source',
        'django.template.loaders.app_directories.load_template_source',
    )
else:
    TEMPLATE_LOADERS = (
        'django.template.loaders.filesystem.Loader',
        'django.template.loaders.app_directories.Loader',
    )
 
if django.VERSION[0] == 1 and django.VERSION[1] < 2:
    # Legacy django had a different CSRF method, which also had
    # different middleware. We check the vesion here so we bring in
    # the correct one.
    MIDDLEWARE_CLASSES = (
        'django.middleware.common.CommonMiddleware',
        'django.contrib.csrf.middleware.CsrfMiddleware',
        'django.contrib.sessions.middleware.SessionMiddleware',
        'django.contrib.auth.middleware.AuthenticationMiddleware',
    )
else:
    MIDDLEWARE_CLASSES = (
        'django.middleware.common.CommonMiddleware',
        'django.middleware.csrf.CsrfViewMiddleware',
        'django.contrib.sessions.middleware.SessionMiddleware',
        'django.contrib.auth.middleware.AuthenticationMiddleware',
    )
 
ROOT_URLCONF = 'urls'
 
TEMPLATE_DIRS = (
    '/usr/share/cobbler/web/templates',
)
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'cobbler_web',
)
 
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS
 
TEMPLATE_CONTEXT_PROCESSORS += (
     'django.core.context_processors.request',
)
 
SESSION_ENGINE = 'django.contrib.sessions.backends.file'
SESSION_FILE_PATH = '/var/lib/cobbler/webui_sessions'
 
5-2 配置cobbler_web的认证功能
cobbler_web支持多种认证方式,如authn_configfile、authn_ldap或authn_pam等,默认为authn_denyall,即拒绝所有用户登录。下面说明两种能认证用户登录cobbler_web的方式。
>>使用authn_pam模块认证cobbler_web用户 
首先修改modules.conf中[authentication]段的module参数的值为authn_pam。
接着添加系统用户,用户名和密码按需设定即可,例如下面的命令所示。
# useradd cblradmin
# echo 'cblrpass' | passwd --stdin cblradmin
而后将cblradmin用户添加至cobbler_web的admin组中。修改/etc/cobbler/users.conf文件,将cblradmin用户名添加为admin参数的值即可,如下所示。
[admins]
admin = "cblradmin"
最后重启cobblerd服务,通过http://YOUR_COBBLERD_IP/cobbler_web访问即可。
>>使用authn_configfile模块认证cobbler_web用户
首先修改modules.conf中[authentication]段的module参数的值为authn_configfile。
接着创建其认证文件/etc/cobbler/users.digest,并添加所需的用户即可。需要注意的是,添加第一个用户时,需要为htdigest命令使用“-c”选项,后续添加其他用户时不能再使用;另外,cobbler_web的realm只能为Cobbler。如下所示:
# htdigest -c /etc/cobbler/users.digest Cobbler cblradmin 
最后重启cobblerd服务,通过http://YOUR_COBBLERD_IP/cobbler_web访问即可。  
来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/aaa103439/p/3d018608658a2c444b842cfa47861dda.html

cobbler之详细配置相关推荐

  1. Centos7 下cobbler安装及配置

    1.背景介绍 作为运维,在公司经常遇到一些机械性重复工作要做,例如:为新机器装系统,一台两台机器装系统,可以用光盘.U盘等介质安装,1小时也完成了,但是如果有成百台的服务器还要用光盘.U盘去安装,就显 ...

  2. CentOS 7下cobbler安装及配置

    目录 1.背景介绍 2. PEX 原理介绍 2.1 PEX 原理与概念 2.2 PEX 工作原理示意图​ 3. Cobbler 简介 3.1 Cobbler 概述 3.2 Cobbler 3.3 Co ...

  3. Nginx负载均衡的详细配置及使用案例

    Nginx负载均衡的详细配置及使用案例详解 感谢看过这一些列博文和评论的小伙伴, 我把自己所看到的学到的拿到这里来分享是想和大家一起学习进步, 想听听园友给出的意见, 也是对自己学习过程的一个总结.  ...

  4. IntelliJ IDEA详细配置

    2019独角兽企业重金招聘Python工程师标准>>> IntelliJ IDEA详细配置 关闭Intellij IDEA自动更新 在File->Settings->Ap ...

  5. apache mysql 连接数 winnt,APACHE PHP MYSQL PHPMYADMIN超详细配置教程

    Apache+PHP+MySQL+phpMyAdmin超详细配置教程 安装之前需要下载 Apache2.0.59 PHP4.4.4Win32 MySQL4.12 phpMyAdmin2.9.1.1rc ...

  6. Window VNC远程控制LINUX:VNC详细配置介绍

    Window VNC远程控制LINUX:VNC详细配置介绍 //---------------------------------------vnc linux下的详细配置 1.VNC的启动/停止/重 ...

  7. (原创)OpenStack服务如何使用Keystone(三)---详细配置Keystone中间件

    (一)Keystone端的操作 (二)如何在OpenStack服务上部署Keystone中间件 (三)详细配置keystonemiddleware 前文我们介绍了如何部署Keystone中间件以及中间 ...

  8. 游戏型计算机的配置表,爽玩游戏型详细配置列表及推荐理由

    爽玩游戏型详细配置列表及推荐理由: 配置清单 配件 品牌型号 数量 单价 CPU AMD羿龙II X4 955/盒装 1 ¥950 散热系统 极冻酷凌Igloo 5610+ 1 ¥99 内存 威刚2G ...

  9. SSM整合Shiro进行登陆认证和授权详细配置

    本篇博客将进行详细介绍Shiro+Spring+SpringMVC+Mybatis+数据库整合并进行登陆认证和授权详细配置. SSM的整合可以参考:https://blog.csdn.net/a745 ...

最新文章

  1. python中用def实现自动排序_用 python 实现各种排序算法
  2. python编程 语言-Python——最美丽的编程语言
  3. CF993E:Nikita and Order Statistics(FFT)
  4. 使用 XMLBeans 进行编程 XMLBeans 如何引发数据绑定的巨大变革
  5. 【高可用HA】Apache (2) —— Mac下安装多个Apache Tomcat实例
  6. minecraft服务器_如何启动自己的Minecraft服务器进行多人游戏
  7. leetcode1221. 分割平衡字符串(贪心算法)
  8. 怎样实现MathType在Numbers中的运用
  9. 华为云服务器怎样让网站显示不出来,云服务器网页不显示图片
  10. Himawari-8葵花八HSD数据处理——几何校正
  11. Exosip源码学习
  12. seo软件优化工具软件-免费seo软件优化工具以及免费排名软件下载
  13. 从零开始做小程序(四)—— 自定义顶部导航栏
  14. 时尚品牌如何做微信营销推广?具体方法有哪些?
  15. 苹果6用U盘越狱_iOS 13 Checkra1n Win 越狱新方法,超级简单
  16. 电子计算机没电了,主板电池没电了怎么办 主板电池没电会出现什么情况
  17. win10系统解决office16的VBE6EXT.OLB不能被加载的问题
  18. 智力开发(赛马问题)
  19. EChar中的柱状图如何设置柱子的最大宽度和刻度的最小间隔
  20. 全网最详细 解决戴维南定理的详细推导

热门文章

  1. 汇编语言学习之汇编语言源程序的输入
  2. 转载:不投简历,如何获得月薪2万的工作
  3. Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)
  4. SQL Server数据库导入导出数据方式比较
  5. python---之super()继承,解决钻石继承难题
  6. ModuleNotFoundError: No module named ‘torchversion‘
  7. 排队问题解题思路_教育随笔|数学之排队问题
  8. python 只用opencv吗,python – OpenCV:使用solvePnP来确定单应性
  9. 快捷键截屏_Windows10自带截屏快捷键使用方法大全
  10. python常用算法有哪些_python常见排序算法基础教程