如何使用ubuntu官方提供的cloud image
展开全部
很多官方提供的linux cloud image都可以用下面这种做法!我们这里仅以Ubuntu Server 14.04 LTS (Trusty Tahr)为例来说明如何在openstack和KVM里面怎么使用这个cloud image.
如何在KVM启动cloud image
因为默认的cloud image的用户ubuntu和root密码都是随机的,也就是你不可能知道他们的密码,是不能可能访问/SSH方式进入虚机的。所以我们有以下方法进入该虚机。
修改ubuntu用户的密码
第一、安装一些必要的tools在host OS
sudo apt-get install qemu-kvm cloud-utils genisoimage
第二、编译一个临时的文件,内容如下,文件名随意(my-user-data)
#cloud-config **-->关键行,不能遗漏**password: 123456 **-->ubuntu的新密码**chpasswd: { expire: False }ssh_pwauth: True
第三、根据第二步中的文件生成相应的image
cloud-localds my-seed.img my-user-dataNote: 这里生成的my-seed.img是raw类型的,可以通过qemu-img info my-seed.img查看。
第四、把这个新生成的my-seed.img加载到KVM虚机里,启动虚机ubuntu用户的密码自动修改为123456
<disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/home/apple/images/trusty-server-cloudimg-amd64-disk1.img'/> <target dev='hda' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/></disk><disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/home/apple/images/my-seed.img'/> <target dev='hdb' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/></disk>Note: 为啥自动修改呢?这是cloud-init的功能,它被安装在了ubuntu cloud image里面,它可以自动识别my-seed.img,并运行my-seed.img里面的内容。请关注后续关于cloud-init的笔者的笔记。
如何注入SSH的public key,在第二部增加SSH public key, 如下
#cloud-config **-->关键行,不能遗漏**password: 123456 **-->ubuntu的新密码**chpasswd: { expire: False }ssh_pwauth: True ssh_authorized_keys: - "ssh-rsa AAAAB4NzaC1ycEAAAADAQABAAABAQCtN8wMoKzZKaAVfh1bxLn2fHrxoDKVHbhwnQnj08fB0FS5V0JbpvuZcspa0gzpu1eaW4GaQ5icOVioBvtDg5JS/gjf6z2MqG4J5aVvAg7kGGhGSFTZYJ9voY85tQsZBghpKhlNoVIoEtmvZdO0i/qN9E/yPJdT4bjTaggXFjYZ04b/EOgC4EJvQhErN5HYiu3fq0RbQZpy4sDjSoYLY3yP+OMBWVLN8iK6kbVr2EzJscfBY6MsBgb5JHimZPBk2dr/asf499TiVBOQuNbKVpKgnv9wXFfTBq9HN9FIWvDGAw7RcGG1FIDkWiFURy+/xhVfihPQdVDUPkFhUBEyeP/ ubuntu@host-HP-Z600.localdomain"
如何在openstack里面运行cloud image
在openstack里面相对非常简单,只需要拷贝上面第2步的内容到nova的user-data里面,并启动虚机即可。
如何在KVM启动cloud image
因为默认的cloud image的用户ubuntu和root密码都是随机的,也就是你不可能知道他们的密码,是不能可能访问/SSH方式进入虚机的。所以我们有以下方法进入该虚机。
修改ubuntu用户的密码
第一、安装一些必要的tools在host OS
sudo apt-get install qemu-kvm cloud-utils genisoimage
第二、编译一个临时的文件,内容如下,文件名随意(my-user-data)
#cloud-config **-->关键行,不能遗漏**password: 123456 **-->ubuntu的新密码**chpasswd: { expire: False }ssh_pwauth: True
第三、根据第二步中的文件生成相应的image
cloud-localds my-seed.img my-user-dataNote: 这里生成的my-seed.img是raw类型的,可以通过qemu-img info my-seed.img查看。
第四、把这个新生成的my-seed.img加载到KVM虚机里,启动虚机ubuntu用户的密码自动修改为123456
<disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/home/apple/images/trusty-server-cloudimg-amd64-disk1.img'/> <target dev='hda' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/></disk><disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/home/apple/images/my-seed.img'/> <target dev='hdb' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/></disk>Note: 为啥自动修改呢?这是cloud-init的功能,它被安装在了ubuntu cloud image里面,它可以自动识别my-seed.img,并运行my-seed.img里面的内容。请关注后续关于cloud-init的笔者的笔记。
如何注入SSH的public key,在第二部增加SSH public key, 如下
#cloud-config **-->关键行,不能遗漏**password: 123456 **-->ubuntu的新密码**chpasswd: { expire: False }ssh_pwauth: True ssh_authorized_keys: - "ssh-rsa AAAAB4NzaC1ycEAAAADAQABAAABAQCtN8wMoKzZKaAVfh1bxLn2fHrxoDKVHbhwnQnj08fB0FS5V0JbpvuZcspa0gzpu1eaW4GaQ5icOVioBvtDg5JS/gjf6z2MqG4J5aVvAg7kGGhGSFTZYJ9voY85tQsZBghpKhlNoVIoEtmvZdO0i/qN9E/yPJdT4bjTaggXFjYZ04b/EOgC4EJvQhErN5HYiu3fq0RbQZpy4sDjSoYLY3yP+OMBWVLN8iK6kbVr2EzJscfBY6MsBgb5JHimZPBk2dr/asf499TiVBOQuNbKVpKgnv9wXFfTBq9HN9FIWvDGAw7RcGG1FIDkWiFURy+/xhVfihPQdVDUPkFhUBEyeP/ ubuntu@host-HP-Z600.localdomain"
如何在openstack里面运行cloud image
在openstack里面相对非常简单,只需要拷贝上面第2步的内容到nova的user-data里面,并启动虚机即可。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询