Cobbler自动化装机

一个可以实现批量安装系统的Linxu应用程序,他可以实现同个服务器安装不同操作系统版本。

准备环境

开启两个网卡。一个仅主机模式,一个桥接模式,仅主机模式对内提供cobbler服务。

配置完网卡后ping网络会ping不同。

打开

vim /etc/resolv.conf 

编写

nameserver 114.114...

nameserver 8.8.8.8

不需重启网络,即可设置好网络。

首先下载cobbler所需的服务程序

yum install cobbler dhcp tftp-server xinetd syslinux httpd pykickstart -y

dhcp:新装的机子要给他一个ip,所以要下载一个dhcp

tftp:简单传输协议

xinetd:超级守护进程,负责维护了一些小的服务

syslinux:引导程序,引导我们的虚根,引导我们的内核

yum安装cobbler需要使用下面两个源,把下面的代码添加到yum仓库

[epel]

name=epel

enabled=

gpgcheck=

baseurl=https://mirrors.aliyun.com/epel/7/x86_64/ [centos]

name=centos base

enabled=

gpgcheck=

baseurl=http://mirrors.163.com/centos/7/os/x86_64/

下载完成后配置dhcp

Vim /etc/dhcp/dhcpd.conf

IP配我们仅主机模式的IP

接下来配置守护进程

vim /etc/xinetd.d/tftp

把里面的 disable = yes 改成 no 即可。

systemctl restart xinetd

systemctl enable xinetd

systemctl eanble dhcp

检查并修改

执行这条命令

cobbler check 

报错执行

systemctl restart httpd.service
vim /etc/cobbler/settings

将server处都修改成仅主机IP(272行和384行)

接下来

systemctl restart rsyncd 

systemctl enable rsyncd

openssl passwd - -salt "" "" 

$$$7mft0jKnzzvAdU4t0unTG1

并把新生成的加密数据填写进

/etc/cobbler/settings

 default_password_crypted: "$1$123$7mft0jKnzzvAdU4t0unTG1"

以上问题解决之后,需要同步和重启

systemctl restart cobblerd

cobbler sync

接下来创建自己的版本

cobbler import --path=/挂载点 --name=“centos7.”名字千万不能有空格

查看distro

cobbler distro list

centos7.-x86_64

查看profile

cobbler profile list

centos7.-x86_64

distro : 发行版, 就是我们安装什么版本的linux操作系统的名称 一会我们会导入一个 distro.

profile : 类似于一个 配置文件,类似于你的 bash_profile, 里面包含你可以添加 kernel 参数,对应的kickstart 文件 以及 此profile 对应的 distro 等等.

准备kickstart文件,也就是配置文件

我们虽然创建的有,但他不包含kickstart,所以,我们要复制root目录下的anaconda-ks.cfg 到 /var/lib/cobbler/kickstarts,改名为ks.cfg。

cp -a anaconda-ks.cfg /var/lib/cobbler/kickstarts/ks.cfg

而后打开dhcpd配置文件,添加一行东西

filename “pxelinux.”;

意思为告诉我客户端要找我这个东西。

然后重启dhcpd

systemctl restart dhcp

现在打开ks.cfg文件进行修改,

find / -name centos7.

#找出来,复制他的绝对路径

之前是cdrom,将cdrom删除,改成url  --url=http://

url --url=http://仅主机模式的ip/cobbler/ks_mirror/centos7.5/

保存退出即可。

进行封装

cobbler profile add  --distro=centos7.-x86_64 --name=centos7.5_ken --kickstart=/var/lib/cobbler/kickstarts/ks.cfg

然后查看一下

cobbler profile list

会有两个

删除带架构的即可。

cobbler profile remove --name= 指定名字

而后同步

cobbler sync

而后重启这些服务

service httpd restart                                              

service cobblerd restart

service dhcpd restart

service xinetd restart

而后开始创建新的虚拟机,内存要加到3个G,不然会带不起来,模式要改成仅主机模式,而后选择安装即可。

网络yum源制作

cd /var/www/html

在此目录里创建一个目录,而后将cd挂载到刚创建的目录。

而后用浏览器访问IP加目录就可以了。

Cobbler自动化装机的更多相关文章

  1. Cobbler自动化装机脚本

    #!/bin/bash ens33_ip=192.168.1.3 ens33_gateway=192.168.1.1 ens37_ip=192.168.207.2 dhcp_wd=192.168.20 ...

  2. 【Linux】【Services】【Project】Cobbler自动化装机

    1. 概念 1.1. Cobbler 1.2. PXE 1.3. 2. 版本信息 2.1. OS:Red Hat Enterprise Linux Server release 7.3 (Maipo) ...

  3. pxe+kickstart cobbler无人值守装机

    环境准备: 一台服务器 [root@admin tftpboot]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [roo ...

  4. Cobbler自动化部署最佳实践

    第1章 Cobbler自动化部署最佳实践 运维自动化在生产环境中占据着举足轻重的地位,尤其是面对几百台,几千台甚至几万台的服务器时,仅仅是安装操作系统,如果不通过自动化来完成,根本是不可想象的. 面对 ...

  5. Cobbler自动化批量安装Linux操作系统 - 运维总结

    一.Cobbler简述 Cobbler是一个自动化和简化系统安装的工具,通过使用网络引导来控制和启动安装.Cobbler的特性包括存储库镜像.Kickstart模板和连接电源管理系统.Cobbler通 ...

  6. cobbler网络装机

    cobbler网络装机 原理分析 cobbler简介 Cobbler通过将设置和管理一个安装服务器所涉及的任务集中在一起,从而简化了系统配置.相当于Cobbler封装了DHCP.TFTP.XINTED ...

  7. CentOS7中搭建cobbler自动装机服务

    一.实验环境 一台centos7 epel源网址 https://fedoraproject.org/wiki/EPEL?rd=Epel 使用nat模式 二.实验步骤 1.下载epel源后进行文件夹挂 ...

  8. Cobbler自动化安装

    # Cobbler自动化安装 [Cobbler官网](http://cobbler.github.io) ![](/Users/wanyongzhen/Library/Containers/com.t ...

  9. Cobbler自动装机试验

    Cobbler自动装机简介:Cobbler是一个使用Python开发的开源项目,通过将部署系统所涉及的所有服务集中在一起,来提供一个全自动的批量快速建立Linux系统的网络安装环境.Cobbler提供 ...

随机推荐

  1. 【Python】学习笔记十四:循环进阶

    range() 在Python中,for循环后的in跟随一个序列的话,循环每次使用的序列元素,而不是序列的下标. 我们继续开发range的功能,以实现下标对循环的控制: s = 'abcdefghj' ...

  2. 函数式接口和Lambda表达式

    函数式接口(一般标有@FunctionalInterface)就是只定义一个抽象方法的接口. 一个接口,如果满足函数式接口的定义,那么即使不标注为 @FunctionalInterface, 编译器依 ...

  3. code first System.Data.Entity.Infrastructure.CommitFailedException: An error was reported while committing a database transaction but it could not be determined whether the transaction succeeded

    System.Data.Entity.Infrastructure.CommitFailedException: An error was reported while committing a da ...

  4. class 用法 函数变量的作用域

    函数变量的作用域 1. 函数体内声明的变量 2. 参数中的变量 没有赋值的 function fn(a){} 赋值的,值不是变量 function fn(a=45){} 赋的值为变量 function ...

  5. 各种sort排序总结

    冒泡排序 选择排序 插入排序

  6. Python基本语法_基本数据类型_数值型详解

    目录 目录 软件环境 Python变量调用的过程 数值型 删除一个数值类型对象 布尔型 Bool 标准整型 Int 长整型 双精度浮点型 Float 复数 数值类型对象的内建功能函数 absNumbe ...

  7. hibernate中get和load区别

    在日常开发中,获取数据时必不可少的,这样就要用到get和load方法来实现了.下面简单说一下get和load的区别. 1.返回值不同 使用get方法检索数据时,没有该数据返回值为null. 而使用lo ...

  8. 【命令汇总】Windows 应急响应

    日期:2019-06-07 16:11:49 作者:Bay0net 介绍:Windows 应急响应.取证及溯源相关内容学习记录 0x00.前言 常见的应急分类: web入侵:网页挂马.主页篡改.Web ...

  9. Python学习之==>函数

    一.函数是什么: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用函数名就行. 二.函数的作用: 1.简化代码 2.提高代码的复用性 3.代码可扩展 三.定义函数: ...

  10. docker运行haproxy 自动生成配置

    #根据参数,shell自动生成haproxy配置 #为方便部署,特意做了个haproxy镜像 #Haproxy run as docker #运行实例 run #!/bin/bash #docker ...