在kvm服务器上安装一个虚拟机,然后进行如下配置:
# 模板默认配置
制作模版要配置yum源,安装常用软件,yum源可以配置为阿里的源,163的源最好有自己的源
需要安装的常用软件:
```
yum install net-tools wget vim ntpdate bash-completion -y
```
# 配置网卡
删除网卡配置文件中的UUID,网卡设为DHCP(如果内网有DHCP服务器)
(1)网卡配置文件一般如下
```
TYPE=Ethernet
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
NM_CONTROLLED=no
```
(2)centos6需要执行`rm -rf /etc/udev/rules.d/70-persistent-net.rules`(centos7不用)
(3)`vim /etc/sysconfig/network`
添加如下内容:
```
NOZERCONF=yes
```
NOZERCONF=yes的意思是禁用ZERCONF路由,ZERCONF又被叫做IPv4 Link-Local和Automatic Private IP Addressing。它是一个动态配置协议,系统可以通过它来连接到网络。很多linux发行版本都默认安装该服务,当系统无法连接DHCP server的时候,就会尝试通过ZERCONF来获取IP,一般这个IP地址段为169.254.0.0,我们在做openstack镜像的时候,这个需要禁用,因为VM如果DHCP获取不到IP就让它获取不到,别让它获取其他IP段的地址,所以这里我们禁用。
# 安装cloud服务
```
yum -y install cloud-utils cloud-init parted
```
编辑cloud的配置文件
```
vim /etc/cloud/cloud.cfg
```
修改如下内容:
```
ssh_pwauth: 1
#在cloud_init_modules:下面添加一个参数
- resolv-conf
```
# 配置脚本文件
```
vim /etc/rc.d/rc.local
```
覆盖配置这个脚本(Netron配置文件)
```
chmod +x /etc/rc.d/rc.local
systemctl enable cloud-config.service cloud-final.service cloud-init-local.service cloud-init.service
```
最后重启系统
```
reboot
```
尝试运行命令检查服务
```
systemctl list-dependencies
```
出现四个(cloud-)开头的服务且是绿色的就说明cloud-init安装成功
# 关机和压缩
找到刚才创建的镜像压缩一下
这里我们进入cd /opt目录压缩(ps:不能在镜像目录下压缩)
```
virt-sparsify --compress /var/lib/libvirt/images/CentOS7.1 CentOS7.1.qcow2
```
原大小是2.5g压缩后是500mb左右(特别费时间)
du -sh CentOS7.1.qcow2 #查看镜像大小
# 安装windows模版
安装windows的步骤就不再赘述
需要注意的两点是:
网卡选择 virtio模式
usb模式选择Hypervisor default
然后配置一下远程桌面
安装cloud-init(版本为0.99.dev26),安装步骤较为简单不再赘述
要设置用户下一次登陆要修改密码,这是为了安全着想。
最后对`cloud Initialization service Properties`服务属性设置为 `local system account`
- 献给我的朋友们
- 一、个人对学习的看法
- 二、运维技能图谱
- 三、运维常用技能
- 3.1 Vim(最好用的编辑器)
- 3.2 Nginx & Tengine(Web服务)
- 1. Nginx介绍和部署
- 2. Nginx配置解析
- 3. Nginx常用模块
- 4. Nginx 的session 一致性问题
- 3.3 Tomcat(Web中间件)
- 3.4 Keepalived(负载均衡高可用)
- 3.5 Memcache(分布式缓存)
- 3.6 Zookeeper(分布式协调系统)
- 3.7 KVM(开源虚拟化)
- 1. 虚拟化介绍
- 2. KVM基础
- 3. 设置VNC和时间同步
- 4. kvm虚拟机快照备份
- 5. kvm虚拟机在线扩展磁盘
- 6. kvm虚拟机静态迁移
- 7. kvm虚拟机动态迁移
- 8. kvm虚拟机存储池配置
- 9. cpu添加虚拟化功能
- 3.8 GitLab(版本控制)
- 3.8.1 GitLab安装与汉化
- 3.9 Jenkins(运维自动化)
- 3.10 WAF(Web防火墙)
- 3.10.1初探WAF
- 四、常用数据库
- 4.1 MySQL(关系型数据库)
- 1. MySQL源码安装
- 4.2 Mongodb(适用与大数据分析的数据库)
- 4.3 Redis(非关系数据库)
- 五、自动化运维工具
- 5.1 Cobbler(系统自动化部署)
- 5.2 Ansible(自动化部署)
- 5.3 Puppet(自动化部署)
- 5.4 SaltStack(自动化运维)
- 六、存储
- 6.1 GFS(文件型存储)
- 6.2 Ceph(后端存储)
- 七、运维监控工具
- 7.1 对监控的理解
- 7.2 Zabbix(运维监控)
- 7.2.1 Zabbix简介
- 7.2.2 Zabbix服务部署
- 1. Zabbix服务端部署
- 2. Zabbix客服端部署
- 3. 配置前端展示
- 4. zabbix告警配置
- 7.2.3 Zabbix监控服务
- 1. 监控网络设备
- 2. 自定义Nginx监控
- 7.3 云镜(安全监控)
- 7.4 ELK(日志收集展示)
- 八、运维云平台
- 8.1 OpenStack(开源云操作系统)
- 8.1.1 OpenStack简介
- 8.1.2 实验架构设计
- 8.1.3 集群环境准备
- 8.1.4 controller节点部署
- 1. 安装Mariadb Galera Cluster集群
- 2. 安装RabbitMQ Cluster集群
- 3. 安装Pacemaker
- 4. 安装HAProxy
- 5. 安装配置Keystone
- 6. 安装配置glance
- 1. 制作镜像模板
- 7. 安装配置nova
- 8. 安装配置neutron
- 1. 配置虚拟机网络
- 9. 安装Dashboard
- 10. 安装配置cinder
- 8.1.5 compute节点部署
- 1. 安装相关软件包
- 2. 安装Neutron
- 3. 配置cinder
- 4. 创建第一个虚拟机
- 8.1.6 OpenStack报错处理
- 1. cinder僵尸卷删除
- 8.1.7 快速孵化虚拟机方案
- 8.1.8 Kolla容器化部署OpenStack
- 1. 单点部署
- 2. 多节点部署
- 8.2 Tstack(腾讯云平台)
- 8.3 K8s(微服务容器化)
- 九、运维编程技能
- 9.1 Shell(运维必会语言)
- 9.2 Python(万能的胶水语言)
- 十、Devops运维
- 10.1 理念
- 10.2 Devops实战