当前位置:首页 > 虚拟机 > 正文

开虚拟机云服务器配置


一、云服务器cloud-init初始化工具的使用与配置

[TOC]

在云平台中,当你创建云主机时,你希望能够对主机进行一些初始化操作,比如IP配置、主机名、密码、SSH登录等。openstack中可以使用cloud-init进行初始化。

OpenStack虚拟机镜像指南
cloud-init原理(整个执行流程)
cloud-init理解与应用

cloud-init是针对linux的一个工具,当系统启动时,cloud-init可以从novametadata服务获取元数据或配置并完成以下定制工作,包括但不限于:

云官方文档
官方配置参数参考
阿里云官方文档安装cloud-init

前提条件
•准备一台KVM机器,做centos7初始镜像
•已经配置好服务器所连接的Linux云弹性IP。
•登录Linux云服务器。
•Linux云服务器网卡属性为DHCP。

获取动态IP的网卡配置文件

配置ssh文件

在需要无密码登录的机器上运行以下命令创建密钥对(控制器节点(上图)

编辑配置文件/etc/cloud/

以微秒为单位生成随机密码的命令

如果您希望能够修改实例主机名(默认情况下,cloud-init会在每次重启实例后将主机名重置为初始值)删除或注释掉cloud_init_modules列表中的以下两项:

)。

(可选配置)在/etc/cloud/cloud中自定义.cfg文件中的网络配置

将此配置添加到文件后,cloud-init将不会管理/etc/sysconfig/下的网络配置
建议提前配置接收dhcp的网卡配置文件,否则私有云中创建的实例可能无法获取IP地址,原因是re-init中自动配置的网卡文件可能会导致mac地址不一致。

(可选配置)设置root用户密码

修改以下配置,使镜像创建的云服务器主机名不带后缀.novalocal,主机名可以为有道理。
a执行以下命令,编辑__init__.py文件

执行以下命令,访问cloudinit/sources文件夹。

执行以下命令,编辑Cloud-Init日志输出路径配置文件,设置日志处理方法handler

检查对应的Cloud工具配置-Init是否成功

运行以下命令,没有出现错误,说明Cloud-Init设置成功

设置完成后,关闭虚拟机,准备下一阶段生成镜像

如果连接到ceph存储。可以将qcow2格式转换为raw格式镜像然后加载
Ceph的缺点是不支持从qcow2格式镜像启动,所以必须转换raw格式镜像

将镜像上传到openstack视图节点(在controller节点上)

查看镜像并在ceph中查看批量数据

创建实例并检查cloud-init配置是否正确成功

虚拟机镜像必须确保安装了cloud-init
OpenStack提供了命令行参数--config-drive来配置创建虚拟机时是否使用配置

在/etc/nova/nova中,让OpenStack计算服务在创建虚拟机时使用默认配置机制

注意