windows-本地虚拟机使用init-windows

window 安装Cloudbase-Init

window 下的初始化由Cloudbase-Init 提供, 其官方地址为 https://cloudbase.it/ 。在虚拟机中安装该软件,过程十分简单。

官方文档: https://cloudbase-init.readthedocs.io/en/latest/plugins.html

配置

软件的配置文件为

 C:\Program Files (x86)\Cloudbase Solutions\Cloudbase-Ini\cloudbase-init.conf

metadata_services 选项设置元数据获取服务,ConfigDriveService 表示openstack 本地模式

metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService,

plugins 选项设置需要执行的插件
SetHostNamePlugin 更改主机名
etUserPasswordPlugin 更改主机密码
ExtendVolumesPlugin 自动扩展磁盘空间(每次重启均执行)

# What plugins to execute.
plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin,
        cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin
        cloudbaseinit.plugins.windows.setuserpassword.SetUserPasswordPlugin
        cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin

此外还需要设置允许重启,允许使用cdrom

allow_reboot = true

元数据制作

ConfigDriveService 会识别lable 为 config-2 的光盘
并读取其中 openstack/latest/meta_data.json 文件的数据

穿件seed 文件夹 ,并写入数据

$ vim seed/openstack/latest/meta_data.json

{
    "hostname": "test5",
    "meta": {
        "admin_pass": "6"
    },
    "uuid": "local-2"
}


  • hostname: 设置的主机名称
  • admin_pass: 设置的用户密码
  • uuid :即在uuid 不同时,才会执行初始化工作,故每次需要更改

使用genisoimage 指令封装seed目录下的数据为seed.iso

genisoimage -output seed.iso -volid config-2 -joliet -rock seed/

启动虚拟机

挂载制作好的磁盘为


    
    
    

参考window
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Using+ConfigDrive+for+Metadata,+Userdata+and+Password#UsingConfigDriveforMetadata,UserdataandPassword-Contentofmeta_data.json(jsonencoded):
openstack 中使用metadata 的方式
https://docs.openstack.org/nova/latest/user/config-drive.html
http://www.voidcn.com/article/p-pqsebuws-pk.html

你可能感兴趣的:(windows-本地虚拟机使用init-windows)