2. 自动化运维系列之Cobbler给Openstack节点安装操作系统。
preface
我们在一篇博文知道了如何搭建Cobbler,那么下面就通过Cobbler来安抓Openstack所有节点吧。
服务器配置信息如下:
| 主机名 | IP | 角色 |
|---|---|---|
| Cobbler.node.com | 192.168.56.10 | cobbler |
| linux-node1.example.com | 192.168.56.11 | keystone+glance等控制节点 |
| linux-node2.example.com | 192.168.56.12 | horizon+nova-computer等计算节点 |
- 内核为3.10.0-514.2.2.el7.x86_64
- 网卡名字设置为了eth0。
- 关闭了selinux,iptables。
- 时间同步ntp.chinacache.com
部署cobbler
部署的话参考上一篇博文:Cobbler的安装
1.Cobbler安装部署完成后,我们需要添加 一个 Openstack仓库:
[root@cobbler kickstarts]# cobbler repo add --name=Openstack-Newton --mirror=https://mirrors.aliyun.com/centos/7/cloud/x86_64/openstack-newton/ --arch=x86_64 --breed=yum
[root@cobbler kickstarts]# cobbler reposync # 同步得有一会,取决于下载速度。
同步完成后,我们在Cobbler-web界面来把Openstack的源添加到profile里面去,这样新安装的操作系统自动Openstack-newton版本的yum源了。如下图所示:

2.kickstart配置文件里面添加一行命令:
[root@cobbler kickstarts]# vim CentOS-7.1-x86_64_cobbler.cfg
%post
rpm -ihv https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm # 添加一个epel源
wget -SO /etc/yum.repos.d/Centos-7.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum -y install koan # 安装koan
%end
3.定制系统:
首先针对linux-node2节点:
[root@cobbler kickstarts]#cobbler system add --name=linux-node2 --mac=00:50:56:3E:61:CF \
--profile=CentOS-7.0-x86_64 \
--ip-address=192.168.56.12 --subnet=255.255.255.0 \
--gateway=192.168.56.2 --interface=eth0 \
--static=1 --hostname=linux-node2.example.com \
--name-servers="192.168.56.2" \
--kickstart=/var/lib/cobbler/kickstarts/CentOS-7.1-x86_64_cobbler.cfg
再次针对linux-node1节点
cobbler system add --name=linux-node1 --mac=00:50:56:25:62:A4 \
--profile=CentOS-7.0-x86_64 \
--ip-address=192.168.56.11 --subnet=255.255.255.0 \
--gateway=192.168.56.2 --interface=eth0 \
--static=1 --hostname=linux-node1.example.com \
--name-servers="192.168.56.2" \
--kickstart=/var/lib/cobbler/kickstarts/CentOS-7.1-x86_64_cobbler.cfg
如果是使用的vm虚拟机,请先关闭vmware虚拟机的DHCP功能,如果是在生产环境下,那么请临时关闭路由器或者三层交换机的dhcp功能,由Cobbler来提供dhcp功能。
启动Openstack节点服务器
我们启动Openstack节点服务器,一开机就进入到自动安装系统的界面。待系统安装完后,我们就可以看到主机名、ip、网关、防火墙之类的都是按照我们的配置文件走的。
我们看下yum源:
[root@linux-node2 ~]# cat /etc/yum.repos.d/cobbler-config.repo
# error: could not read repo source: /var/www/cobbler/ks_mirror/config/CentOS-7.0-x86_64-0.repo
[Openstack-Newton]
name=Openstack-Newton
baseurl=http://192.168.56.10/cobbler/repo_mirror/Openstack-Newton
enabled=1
priority=99
gpgcheck=0
已经安装上了Newton版本的Openstack的yum源了,所以我们在部署Openstack的节点的时候不需要执行yum -y install centos-release-openstack-newton。
直接执行yum install Openstack组件就可以了。
由于是使用Cobbler的yum源,所以安装Openstack的组件的时候,内网传输相当快了。
2. 自动化运维系列之Cobbler给Openstack节点安装操作系统。的更多相关文章
- 【转载】自动化运维系列之Cobbler给Openstack节点安装操作系统
preface 我们在一篇博文知道了如何搭建Cobbler,那么下面就通过Cobbler来安抓Openstack所有节点吧. 服务器配置信息如下: 主机名 IP 角色 Cobbler.node.com ...
- 1. 自动化运维系列之Cobbler自动装机
preface 我们之前批量安装操作系统的时候都是采用pxe来安装,pxe也是通过网络安装操作系统的,但是PXE依赖于DHCP,HTTP/TFTP,kicstart等支持.安装流程如下所示: 对于上面 ...
- saltstack自动化运维系列11基于etcd的saltstack的自动化扩容
saltstack自动化运维系列11基于etcd的saltstack的自动化扩容 自动化运维-基于etcd加saltstack的自动化扩容# tar -xf etcd-v2.2.1-linux-amd ...
- saltstack自动化运维系列⑩SaltStack二次开发初探
saltstack自动化运维系列⑩SaltStack二次开发初探 1.当salt运行在公网或者网络环境较差的条件下,需要配置timeout时间vim /etc/salt/master timeout: ...
- saltstack自动化运维系列⑧SaltStack实践配置管理安装nginx-1.10.3
saltstack自动化运维系列⑧SaltStack实践配置管理安装nginx-1.10.3 安装nginx-1.10.3.tar.gz # mkdir -p /srv/salt/prod/pkg / ...
- saltstack自动化运维系列⑦SaltStack实践配置管理安装zabbix
saltstack自动化运维系列⑥SaltStack实践配置管理安装zabbix 1.添加管理zabbix的sls文件# vim /srv/salt/base/init/zabbix_agent.sl ...
- saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy的Keepalived
saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy的Keepalived 安装配置Keepalived 1.编写功能模块 #创建keepalived目录# mkdir -p ...
- saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy
saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy 下载haproxy1.6.2.tar.gz下载地址:http://www.haproxy.org/download/1. ...
- SQL SERVER自动化运维系列
SQL SERVER自动化运维系列 转自:https://www.cnblogs.com/zhijianliutang/p/5001142.html 本系列为SQL SERVER自动化运维的一些操作技 ...
随机推荐
- 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题
动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...
- 1:(0or1)
public class User { public int ID { get; set; } public string UserName { get; set; } ...
- [script]判定dd是否成功
判定方式 #!/bin/bash > result.dd retval=`grep "copied" result.dd | awk '{print $1}'` filesi ...
- Redis列表
Redis列表是简单的字符串列表,排序插入顺序.您可以在头部或列表的尾部Redis的列表添加元素. 列表的最大长度为232 – 1 (每个列表超过4十亿元素4294967295)元素. 例子 redi ...
- SparkR初体验2.0
突然有个想法,R只能处理百万级别的数据,如果R能运行在Spark上多好!搜了下发现13年SparkR这个项目就启动了,感谢美帝! 1.你肯定得先装个spark吧.看这:Spark本地模式与Spark ...
- python——读取MATLAB数据文件 *.mat
鉴于以后的目标主要是利用现有的Matlab数据(.mat或者.txt),主要考虑python导入Matlab数据的问题.以下代码可以解决python读取.mat文件的问题.主要使用sicpy.io即可 ...
- Linux 文件编码格式转换
如果需要在Linux 中操作windows下的文件,那么经常遇到文件编码转换的问题. Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-. 查看文件编码 在vim 中 ...
- 【3】JVM-OutOfMemory异常重现
JVM中常见的OOM,那么如何通过自己编写代码产生这些OOM异常呢?通过写代码重现异常,是为了避免在工作中写出有OOM BUG的代码.之前虽然看过相关文章,但是没自己写过这些代码,这次在编写的实际过程 ...
- Java如何在正则表达式中匹配重复单词?
在Java编程中,如何在正则表达式中匹配重复单词? 以下示例显示了如何使用regex.Matcher类的p.matcher()方法和m.group()方法在正则表达式中搜索重复的单词. package ...
- Java如何以(MMM)格式显示一个月份的名称?
JAVA中,如何以(MMM)格式显示一个月份的名称? 此示例显示如何使用Calender类的Calender.getInstance()方法和Formatter类的fmt.format()方法来显示( ...