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

云服务器cloud-init初始化工具的使用与配置,第1张

[TOC]

在云平台中,创建云主机的时候希望能够对主机进行一些初始化操作,如配置ip,主机名,密码,ssh登录等。openstack上可以使用cloud-init进行初始化。

OpenStack虚拟机镜像指南

cloud-init 原理(执行的整个过程)

Cloud-init的认识和应用

cloud-init 是 linux 的一个工具,当系统启动时,cloud-init 可从 nova metadata 服务或者 config drive 中获取 metadata,完成包括但不限于下面的定制化工作:

cloud-init官方文档

官方配置参数参考

阿里云官方文档 安装cloud-init

前提条件

• 准备一台KVM机器,用于制作初始的centos7镜像

• 已为Linux云服务器绑定弹性IP。

• 已登录Linux云服务器。

• Linux云服务器的网卡属性为DHCP方式。

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

配置ssh文件

在需要免密码登录的机器上执行下面命令,产生密钥对(controller节点上)

编辑配置文件 /etc/cloud/cloud.cfg

用微秒生成随机密码的命令

如果希望能够修改 instance 的 hostname(默认 instance 每次重启后 cloud-init 都会重新将 hostname 恢复成初始值),将 cloud_init_modules 列表中下面两项删除或注释掉:

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

在cloud.cfg文件增加该配置之后,cloud-init不会管理/etc/sysconfig/network-scripts/下网络配置,需要自行管理。

建议提前配置好网卡配置文件为dhcp获取,否则在私有云上创建的实例可能会导致获取不到IP地址;原因是cloud-init中的自动配置网卡文件可能会导致mac地址不一致。

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

修改以下配置使得镜像创建的云服务器主机名不带.novalocal后缀且主机名称中可以带点号。

a. 执行如下命令,修改 __init__.py 文件

执行如下命令进入cloudinit/sources文件夹。

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

检查Cloud-Init工具相关配置是否成功

执行以下命令,无错误发生,说明Cloud-Init配置成功

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

如果对接ceph存储。可以把qcow2格式转换为raw格式的镜像再上传

Ceph缺点是不支持从qcow2格式的镜像引导,所以需要转换raw格式的镜像

将镜像上传到openstack的glance节点上(在controller节点上)

在ceph上查看镜像和glance池的数据

创建实例并查看cloud-init配置是否成功

虚拟机镜像需要确保安装了 cloud-init

OpenStack 提供了命令行参数--config-drive 用于配置是否在创建虚拟机时使用 config drive 机制

在/etc/nova/nova.conf中配置,直接使OpenStack计算服务在创建虚拟机时默认使用config drive 机制

注意

因为一开始做测试,安装了一些自己也不知道的什么东西,造成运行环境混乱。现在想要重新安装一个WordPress,所以需要重置云服务器。

1.登陆 阿里云 ,进入控制台,选择云服务器ECS,然后选择实例。

2.在实例页面中,选择需要重置的实例,点击停止(停止了才能进行下一步),然后选择重新初始化磁盘

可以重置磁盘的。步骤如下:

1、进入

阿里云

主机控制台,确保服务器处于已停止状态,选择重置磁盘。

2、根据需要选择重置

系统盘

,数据盘,全部磁盘,选择后点击确定,重置您所需要的盘

3、进行

身份验证

,点击确定后即可重置所需磁盘

4、等待重置完成


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/234799.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-10
下一篇2023-04-10

发表评论

登录后才能评论

评论列表(0条)

    保存