热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:Cobbler自动部署装机

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Cobbler自动部署装机相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Cobbler自动部署装机相关的知识,希望对你有一定的参考价值。








目录


  • Cobbler自动部署装机
    • 实验准备
    • Cobbler自动装机服务搭建步骤
      • 1.导入epel源
      • 2.安装Cobbler以及其相关服务软件包
      • 3.修改cobbler主配置文件
      • 4.启动相关服务并关闭防火墙和selinux
      • 5.使用cobbler check 命令对Cobbler做检查设置,查询还需要更改配置的项目
      • 6.开启tftp服务和rsync服务
        • 6.1 修改tftp的配置文件
        • 6.2 开启服务

      • 7.下载引导操作系统文件
      • 8.设置Cobbler用户初始密码
        • 8.1 使用盐值加密方式生成密钥
        • 8.2 将生成的密钥加入Cobbler配置文件中

      • 9.配置dhcp服务
        • 9.1修改Cobbler管理dhcp服务的模板文件
        • 9.2 将配置好的模板文件同步到DHCP服务的配置文件中
        • 9.3 重启DHCP服务

      • 10.导入ISO镜像文件
        • 10.1 挂载镜像文件
        • 10.2 导入iso镜像中的Linux 内核、初始化镜像文件
        • 10.3 查看内核和初始化文件是否在在tftp-server 共享目录中

      • 11.重启所有服务,再用cobbler check 对Cobbler做检查设置
      • 12.所有配置完成后,重新开启空白主机即可自动安装系统
      • 如需图形化界面可自行手动安装





Cobbler自动部署装机

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


实验准备

一台Linux服务器(Centos7系统, IP:192.168.110.30)
一台空白虚拟机
需要连接上互联网,且虚拟机都使用NAT模式
相关软件包:链接:https://pan.baidu.com/s/1Cl2H_cufGmbHCWfs_mObCQ 密码:desg


Cobbler自动装机服务搭建步骤


1.导入epel源

将可以连外网的系统打开,执行wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo 将阿里云镜像下载到/etc/yum.repos.d/目录下
yum claen all && yum makecache #清理缓存并且生成新的缓存
rpm –ivh epel-release-latest-7.noarch.rpm #安装依赖包
yum list #自动加载在线更新源

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


2.安装Cobbler以及其相关服务软件包

yum install -y cobbler dhcp tftp-server pykickstart httpd rsync xinetd
#各软件作用如下
#cobbler 用来快速建立Linux网络安装环境
#dhcp 用来为空白主机自动分配IP地址
#tftp-server 提供引导镜像文件的下载
#pykickstart 实现无人值守安装
#httpd 作为控制台程序运行
#rsync 实现数据同步
#xinetd 提供访问控制、加强的日志和资源管理功能

在这里插入图片描述


3.修改cobbler主配置文件

vim /etc/cobbler/settings
#修改以下几项
next_server: 192.168.110.30 #指向tftp服务器的IP,即本机IP
server: 192.168.110.30 #指向cobbler服务器的IP,即本机IP
manage_dhcp: 1 #让cobbler管理dhcp服务
manage_rsync: 1 #让cobbler管理rsync服务
manage_tftpd: 1 #让cobbler管理tftp服务

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


4.启动相关服务并关闭防火墙和selinux

systemctl start httpd.service #开启http服务
systemctl start cobblerd.service #开启cobbler服务
systemctl stop firewalld
setenforce 0

5.使用cobbler check 命令对Cobbler做检查设置,查询还需要更改配置的项目

cobbler check

在这里插入图片描述

在这里插入图片描述


6.开启tftp服务和rsync服务


6.1 修改tftp的配置文件

vim /etc/xinetd.d/tftp
disable = no

在这里插入图片描述


6.2 开启服务

systemctl restart xinetd.service
systemctl start rsyncd.service

7.下载引导操作系统文件

cobbler get-loaders

在这里插入图片描述


8.设置Cobbler用户初始密码


8.1 使用盐值加密方式生成密钥

openssl passwd -1 -salt 'abc123' 'abc123' 任意字符可以随便写 安装完系统后root用户的密码

在这里插入图片描述


8.2 将生成的密钥加入Cobbler配置文件中

vim /etc/cobbler/settings

在这里插入图片描述


9.配置dhcp服务


9.1修改Cobbler管理dhcp服务的模板文件

vim /etc/cobbler/dhcp.template
subnet 192.168.110.0 netmask 255.255.255.0 {
option routers 192.168.110.1; #修改网关
option domain-name-servers 192.168.110.2; #修改DNS,如果网卡使用的是dhcp模式,可通过nslookup 127.0.0.1 | grep server 查询DNS地址
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.110.100 192.168.110.200; #修改地址池

在这里插入图片描述


9.2 将配置好的模板文件同步到DHCP服务的配置文件中

cobbler sync

在这里插入图片描述


9.3 重启DHCP服务

systemctl restart dhcpd.service

10.导入ISO镜像文件


10.1 挂载镜像文件

mount /dev/sr0 /mnt

10.2 导入iso镜像中的Linux 内核、初始化镜像文件

cobbler import --path=/mnt/ --name=CentOS-7-x86_64 --arch=x86_64
#参数说明
#--path 表示镜像所挂载的目录
#--name 表示为安装源定义的名字
#--atch 表示指定安装源的系统位数
#默认导入存放路径为/var/www/cobbler/ks_mirror/CentOS-7-x86_64

在这里插入图片描述


10.3 查看内核和初始化文件是否在在tftp-server 共享目录中

yum install -y tree #系统默认没有安装,需手动安装tree
tree /var/lib/tftpboot/images #查看文件是否存在

11.重启所有服务,再用cobbler check 对Cobbler做检查设置

systemctl restart cobblerd.service
systemctl restart dhcpd.service
systemctl restart xinetd.service
systemctl restart httpd.service

12.所有配置完成后,重新开启空白主机即可自动安装系统


此安装方式为最小化安装,安装的系统只有字符界面
登录账户:root 密码:abc123

在这里插入图片描述


如需图形化界面可自行手动安装

yum list
yum groupinstall "X Window System"
yum update grub2-common
yum install -y grub2-efi
yum install -y fwupdate
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum groupinstall "GNOME Desktop"
ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
reboot





推荐阅读
  • 在使用 Nginx 作为服务器时,发现 Chrome 能正确从缓存中读取 CSS 和 JS 文件,而 Firefox 却无法有效利用缓存,导致加载速度显著变慢。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • MVC模式下的电子取证技术初探
    本文探讨了在MVC(模型-视图-控制器)架构下进行电子取证的技术方法,通过实际案例分析,提供了详细的取证步骤和技术要点。 ... [详细]
  • 本文详细介绍了如何搭建一个高可用的MongoDB集群,包括环境准备、用户配置、目录创建、MongoDB安装、配置文件设置、集群组件部署等步骤。特别关注分片、读写分离及负载均衡的实现。 ... [详细]
  • Canopy环境安装与使用指南
    《利用Python进行数据分析》一书推荐使用EPDFree版本的环境,然而随着技术的发展,目前更多人倾向于使用Canopy。本文将详细介绍Canopy的安装及使用方法。 ... [详细]
  • 本文探讨了使用Python实现监控信息收集的方法,涵盖从基础的日志记录到复杂的系统运维解决方案,旨在帮助开发者和运维人员提升工作效率。 ... [详细]
  • 本文探讨了互联网服务提供商(ISP)如何可能篡改或插入用户请求的数据流,并提供了有效的技术手段来防止此类劫持行为,确保网络环境的安全与纯净。 ... [详细]
  • WebBenchmark:强大的Web API性能测试工具
    本文介绍了一款名为WebBenchmark的Web API性能测试工具,该工具不仅支持HTTP和HTTPS服务的测试,还提供了丰富的功能来帮助开发者进行高效的性能评估。 ... [详细]
  • 本文基于Java官方文档进行了适当修改,旨在介绍如何实现一个能够同时处理多个客户端请求的服务端程序。在前文中,我们探讨了单客户端访问的服务端实现,而本篇将深入讲解多客户端环境下的服务端设计与实现。 ... [详细]
  • 本文详细介绍了如何使用C#实现不同类型的系统服务账户(如Windows服务、计划任务和IIS应用池)的密码重置方法。 ... [详细]
  • binlog2sql,你该知道的数据恢复工具
    binlog2sql,你该知道的数据恢复工具 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 本文介绍了实时流协议(RTSP)的基本概念、组成部分及其与RTCP的交互过程,详细解析了客户端请求格式、服务器响应格式、常用方法分类及协议流程,并提供了SDP格式的深入解析。 ... [详细]
  • 如何在U8系统中连接服务器并获取数据
    本文介绍了如何在U8系统中通过不同的方法连接服务器并获取数据,包括使用MySQL客户端连接实例的方法,如非SSL连接和SSL连接,并提供了详细的步骤和注意事项。 ... [详细]
author-avatar
M7y4C8r2a6z4y
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有