上一章: 运维部署自动化实践(一)利用PXE远程自动化安装Ubuntu16.04 server
在上文中,尝试利用Kickstart工具实现PXE远程安装的自动化,但是安装斗灶过程中出现了一个分区报错需要人工确认,导致自动化过程中断。查阅了一些技术博客和官方文档,发现Kickstart主要用于Redhat系的linux系统安装,而对于Debian系的支持可能不太好。Debian系Linux采用了特有的debian-installer作为系统安装工具,而运维人员可以通过一个 preseed.cfg 配置文件,写入安装各个阶段需要的参数或指令,这样就可以避免安装过程中的人机交互,实现无人值守的自动化安装。
事实上上一文的过程也利用了preseed配置文件(在上文中ubuntu-server.seed文件),只不过大部分安装指令都写在了kickstart配置里。本文在没有kickstart工具的情况下,完全采用preseed配置实现ubuntu系统安装。
这一步可以直接复制上一章的 *** 作,本文尝试用dnsmasq来代替isc-dhcp-server和tftpd-hpa,提供集成的dhcp和tftp服务
安装dnsmasq
sudo apt-get install dnsmasq
编辑/etc/dnsmasq.conf,将以下的配置配置激活(去掉注释)
创建tftp目录
sudo mkdir /var/ftpd
启动dnsmasq
sudo service dnsmasq start
注意该步骤配置文件中没有让运再指定ks.cfg,后面的安装过程完全通过preseed.cfg控制
Dell服务器进入PXE模式,安装过程无需再人工介入。
下一步继续坦销梁实践在Preseed里添加后处理,执行自动安装软件和配置系统环境。
因为项目需要(实际是没有人手。。。),需要搞开发的我自己来搭建服务器集群环境,并完成软件服务的自动化部署。本文及后续文章,记录运维部署自动化实践中的每一步工作,便于以后追踪参考。
本文先完成第一步工作:远程自动化安装Linux系统
技术方案选择:PXE+dhcp+tftp+kickstart 安装ubuntu16.04 server
宿主机:ubuntu16.04 desktop
目标服务器:(1)Dell Poweredge R540
(2)VMware虚拟机
安装镜像: ubuntu-16.04.5-server-amd64.iso
安装isc-dhcp-server
sudo apt-get install isc-dhcp-server
修改/etc/default/isc-dhcp-server
修改/etc/dhcp/dhcpd.conf,添加如下配置:
运行dhcp服务
sudo service isc-dhcp-server start
安装tftpd-hpa
sudo apt-get install tftpd-hpa
修改/etc/default/tftpd-hpa
创建tftp目录
sudo mkdir /var/lib/tftpboot
sudo chmod 777 /var/lib/tftpboot
运行tftp
sudo service tftp-hpa start
安装apache2
sudo apt-get install apache2
apache 默认的根目录是/var/www/html ,使用默认配置启动apache
sudo service apache2 start
通过浏览器访问http://192.168.1.110 测试http服务已开启茄局
从修改内容孙唤看出,主要是为了添加pxe服务器的地址,以便目标机能够找到对应的ks.cfg以及seed文件。
将ks.cfg文件拷贝至http根目录
sudo cp ks.cfg /var/www/html/
Dell服务器与虚拟机均可自动开启安装过程,虚拟机全程无干扰安装完毕。
Dell服务器安装过程中报错:
the partition table format in use on your disks normally requires you to create a separate partition for boot loader code. this partition should de marked for use as a "reserved bios boot area" and should de at least 1 mb in size. note that this is not same as a partition mounted in /boot.
if you do not go back to the partitioning menu and correct,boot loader installation may fail later,although it may still be possible to install the loader to a partition.
在这一步卡住后安装程序无法自动执行,我手工点击忽略后系统也能够继续安装完毕。
网上各种搜,看到一些评论说debian系的linux不建议用kickstart安装,建议直接使用preseed配置来安装,接下来研究下看看能不则纳凯能解决问题。
问题链接: https://serverfault.com/questions/658070/kickstarting-ubuntu-14-04-how-do-i-create-an-efi-boot-partition-from-my-ks-cf
下一章: 运维部署自动化实践(二)PXE+Preseed自动安装Ubuntu16.04 server
最近在用的一个比较好用的自动化运维平台 -- spug
安装步骤比较简单,直接docker环境安装就ok了。
官网docker的安装文档: https://spug.dev/docs/install-docker
按照官网的文档安装是直接启桥漏用的80端口,如果80端口占用的话就可以修改一下端口映射,我的80端口用了,改成敏枯烂3333
有docker镜像败逗,就是一键安装~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)