红联Linux门户
Linux帮助

如何使用ubuntu官方提供的cloud image?

发布时间:2016-11-03 15:24:51来源:linux网站作者:flyxiaoflyxiao
很多官方提供的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-data
Note: 这里生成的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里面的内容。
 
如何注入SSH的public key,在第二部增加SSH public key, 如下:
#cloud-config             **-->关键行,不能遗漏**
password: 123456          **-->ubuntu的新密码**
chpasswd: { expire: False }
ssh_pwauth: True    
ssh_authorized_keys:
如何使用ubuntu官方提供的cloud image?
 
如何在openstack里面运行cloud image
在openstack里面相对非常简单,只需要拷贝上面第2步的内容到nova的user-data里面,并启动虚机即可。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/25698.html