Cobbler自动部署主机系统
Cobbler自动部署主机系统
简介:
Cobbler由python语言开发,是对PXE和 Kickstart以及DHCP的封装。融合很多特性,提供了CLI和Web的管理形式。更加方便的实行网络安装。同时,Cobbler也提供了API接口,使用其它语言也很容易做扩展。它不仅可以安装物理机,同时也支持kvm、xen虚拟化、Guest OS的安装。更多的是它还能结合Puppet等集中化管理软件,实现自动化的管理。
PXE 预启动执行环境(Preboot eXecution Environment,PXE,也被称为预执行环境)是让计算机通过网
卡独立地使用数据设备(如硬盘)或者安装操作系统。
Cobbler提供以下服务集成:
* PXE服务支持
* DHCP服务管理
* DNS服务管理
* 电源管理
* Kickstart服务支持
* yum仓库管理
1.安装cobbler
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-X-Y.noarch.rpm
yum -y install httpd rsync tftp-server xinetd dhcp python-ctypes cman pykickstart
yum -y install cobbler* debmirror*
2.cobbler命令说明
cobbler check:检查cobbler配置
cobbler list:列出所有的cobbler元素
cobbler report:列出元素的详细信息
cobbler distro:查看导入的发行版系统信息
cobbler system:查看添加的系统信息
cobbler profile:查看配置信息
cobbler sync:同步cobbler配置
cobbler reposync:同步yum仓库
3.cobbler配置文件说明:
/etc/cobbler/seetings cobbler的主配置文件
/etc/cobbler/users.digest 用于web访问的用户名密码配置文件
/etc/cobbler/modules.conf 模块配置文件
/etc/cobbler/users.conf cobbler webui/web服务授权配置文件
/etc/cobbler/iso/ buildiso模板配置文件
/etc/cobbler/power 电源配置文件
/etc/cobbler/pxe pxeprofile配置模板
/etc/cobbler 此目录包含rsync,dhcp,dns,pxe,等服务的模板配置文件
4.系统镜像数据目录/var/www/cobbler
导入的系统发行版,repos镜像和kickstart文件都放置在/var/www/cobbler目录下
/var/www/cobbler/images存储所有导入发行版的kernel和initrd镜像用于远程网络启动
/var/www/cobbler/ks_mirror存储导入的发行版系统数据
/var/www/cobbler/repo_mirror 仓库存储目录
/var/log/cobbler cobbler日志文件
5.cobbler数据目录/var/lib/cobbler
/var/lib/cobbler/config/存放distros,repos,systems,和profile等信息配置文件,一般是json文件
/var/lib/cobbler/snippets存放ks文件可以导入的脚本小片段
/var/lib/cobbler/triggers存放用户定义的cobbler命令
/var/lib/cobbler/kickstarts/存放kictstart配置文件
6.配置cobbler
vim /etc/cobbler/setting
242 manage_dhcp: 1 ##启用cobbler管理DHCP功能
261 manage_rsync: 1 ##启用cobbler管理rsync功能
246 manage_dns: 0 ##启用cobbler管理dns,这里没有开启
272 next_server: 192.168.10.128 ##DHCP服务地址
292 pxe_just_once: 1 ##预防将机器中的安装循环配置为始终从网络引导
384 server: 192.168.10.128 ##cobbler服务器地址
7.配置tftp,rsync
vim /etc/xinetd.d/tftp
disable = no
vim /etc/xinetd.d/rsync
disable = no
8.启用wsgi模块:python应用程序或框架和web服务器之间的一种接口
cat /etc/httpd/conf.d/wsgi.conf
LoadModule wsgi_module modules/mod_wsgi.so
9.生成cobbler安装系统root的初始密码 # 这里生成密钥和配置默认密钥,后面ks文件引用
openssl passwd -1 -salt 'random-phrase-here' 'password'
$1$random-p$sFftrCTxKKsDZ.Sdr8mDG0
vim /etc/cobbler/settings +101
101 default_password_crypted: "$1$random-p$sFftrCTxKKsDZ.Sdr8mDG0"
10.配置DHCP
vim /etc/cobbler/dhcp.template
subnet 192.168.32.0 netmask 255.255.255.0 { # 分配所属网段
option routers 192.168.32.1; # 默认网关
option domain-name-servers 192.168.32.200; #dns ip
option subnet-mask 255.255.255.0; #掩码
range dynamic-bootp 192.168.32.200 192.168.32.254; # 分配地址段
filename "/pxelinux.0"; ##指定的网络引导程序
default-lease-time 21600; #租约时间,秒
max-lease-time 43200; #最大租约时间,秒
next-server 192.168.32.200; #指定的TFTP服务器的地址
11。编辑dhcp配置文件,不然可能无法启动dhcp
vim /etc/dhcp/dhcpd.conf
ddns-update-style interim;
allow booting;
allow bootp;
ignore client-updates;
set vendorclass = option vendor-class-identifier;
option pxe-system-type code 93 = unsigned integer 16;
subnet 192.168.32.0 netmask 255.255.255.0{
option routers 192.168.30.200;
option domain-name-servers 192.168.30.200;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.30.200 192.168.32.254;
filename "/pxelinux.0";
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.30.200;
}
启动服务:
/etc/init.d/xinetd start
/etc/init.d/dhcpd start
/etc/init.d/cobblerd start
/etc/init.d/httpd restart
12.管理cobbler
cobbler get-loaders
13.编辑debmiror
vim /etc/debmirror.conf
28 #@dists="sid";
30 #@arches="i386";
14.检查cobbler配置
cobbler check
15.运行cobbler sync命令使配置生效
16.挂载镜像
mount /dev/sr0 /media
17.导入安装文件
cobbler import --path/media/ --name=centos6.5x86_64 导出的文件在/var/www/下
18.列出导入后的配置
cobbler list 列出详细信息可以使用cobbler report
查看配置是否存在
cobbler profile find --distro=centos6.5X86_64-x86_64
19.定义ks文件
cd /var/lib/cobbler/kickstarts
cp sample.ks centos6.5X86_64-x86_64.cfg
cobbler profile edit --name=centos6.5X86_64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.5x86_64.cfg
查看系统列表
cobbler distro list
20.同步Cobbler配置 ##建议先执行cobbler check进行配置检查再执行cobbler sync,修改cobbler配置后都需要执行此步骤
21.现在就可以装机了
22.现在用web界面管理cobbler服务
在浏览器输入:https://192.168.32.200/cobber_web
23.此时,编辑/etc/cobbler/module.conf,其中有一行:
module = authn_denyall ,将这行改为module=authn_configfile,也可以改为authn_pam(这是基于系统用户进行认证)
我现在将其改为module=authn_pam
添加用户,并设置密码:useradd cobbleruser echo "redhat" | passwd --stdin cobbleruser
然后编辑/etc/cobbler/user.conf,找到admin="",改为:admin="cobbleruser" // 这是我刚刚添加的用户
重启cobbler服务,登录web界面
Cobbler自动部署主机系统的更多相关文章
- Cobbler自动部署装机 轻松解决装机烦恼
Cobbler自动部署装机一.实验准备二.搭建步骤1.导入epel源2.安装Cobbler以及其相关服务软件包3.修改Cobbler 主配置文件4.启动相关服务并关闭防火墙和selinux5.使用co ...
- centos7PXE和cobbler自动部署装机
安装程序启动过程MBR:isolinux/boot.catstage2: isolinux/isolinux.bin配置文件:isolinux/isolinux.cfg 每个对应的菜单选项: 加 ...
- cobbler上部署centos系统修改网卡地址成eth0
编辑cobbler的profile文件: cobbler profile edit --name=CentOS-7.2-x86_64 --kopts='net.ifnames=0 biosdevn ...
- 使用Cobbler批量部署Linux和Windows:Windows系统批量安装(三)
Tutorial: Installing Windows with cobbler (cobbler安装Windows) Windows系统的自动安装需要用到Win PE工具.流程如下: 定制Win ...
- Cobbler全自动批量安装部署Linux系统
说明: Cobbler服务器系统:CentOS 5.10 64位 IP地址:192.168.21.128 需要安装部署的Linux系统: eth0(第一块网卡,用于外网)IP地址段:192.168.2 ...
- 吻逗死(windows)系统下自动部署脚本(for java spring*)及linux命令行工具
转载请注明出处:https://www.cnblogs.com/funnyzpc/p/10051647.html (^^)(^^)自動部署腳本原本在上個公司就在使用,由於近期同事需要手動部署一個Spr ...
- hexo自动部署到git、ftp(虚拟主机等)、云服务器的方式
自动部署很有用,当你写完文章后,直接使用hexo d就可以自动更新你的网站了 部署到git 首先你需要在你的blog下安装git deployer插件:npm install hexo-deploye ...
- 企业实战|基于Cobbler实现多版本系统批量部署
前言 运维自动化在生产环境中占据着举足轻重的地位,尤其是面对几百台,几千台甚至几万台的服务器时,仅仅是安装操作系统,如果不通过自动化来完成,根本是不可想象的.记得前面我们探究了基于PXE实现系统全自动 ...
- window、linux系统与linux服务器之间使用svn同步及自动部署代码的方法
摘要: 在家用PC,在公司用办公电脑对一个项目的代码进行修改时,会遇到代码同步的问题.本文讲解了代码同步及自动部署的解决办法. 实现方法: 1.首先在linux服务器上和linux上安装svn(sud ...
随机推荐
- impala-shell常用命令
1.查看相关内网IP: cat /etc/hosts 2.进入impala: impala-shell; 3.显示数据库,数据表 show databases: show tables; 4.查看表结 ...
- PHPExcel-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护
首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.php和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把class ...
- Kaggle网站流量预测任务第一名解决方案:从模型到代码详解时序预测
Kaggle网站流量预测任务第一名解决方案:从模型到代码详解时序预测 2017年12月13日 17:39:11 机器之心V 阅读数:5931 近日,Artur Suilin 等人发布了 Kaggl ...
- IIS配置中出现HRESULT:0X80070020错误
Win7 IIS启动失败.手工启动它,提示:“另一个程序正在使用此文件,进程无法访问!” 此时是因为另一个程序占用了IIS的端口号,IIS一般用的是80端口,是谁占用了这个端口呢? 方法如下:开始菜单 ...
- Mac下brew/memcached/nginx/iterm/zsh的安装
brew https://www.cnblogs.com/fireworld/p/8609190.html memcached https://blog.csdn.net/whereismatrix ...
- [Algorithm] Count occurrences of a number in a sorted array with duplicates using Binary Search
Let's say we are going to find out number of occurrences of a number in a sorted array using binary ...
- JavaScript判断变量是否为数组的方法(Array)
废话不多说直接上一个代码: 1.这里是通用的检测方法 /* * 判断是否是数组 */ function isArray(obj){ return Object.prototype.toString.c ...
- 基于spring与mockito单元测试Mock对象注入
转载:http://www.blogjava.net/qileilove/archive/2014/03/07/410713.html 1.关键词 单元测试.spring.mockito 2.概述 单 ...
- cocos2d-x在IOS7下面文字显示异常的解决办法 CGBitmapContextCreate: unsupported parameter combination
首先定位到libs-->cocos2dx-->platform-->iOS-->CCImage.mm 找到这个文件. 打开CCImage.mm文件,定位到如下函数: [cp ...
- C++ 第十二课 其它标准C函数
abort() 停止程序执行 assert() 当表达式非真,停止程序执行 atexit() 当程序退出执行设定的程序 bsearch() 执行折半查找 exit() 停止程序执行 getenv() ...