OpenStack添加镜像

前言

本文实验最终失败,失败,失败!重要的事情说三遍。

想要用openstack创建两台ubuntu16的虚拟机,于是上传了ubuntu-16.04.4-server-amd64.iso镜像,然后用它创建了实例,分配了浮动IP。理论上,应该可以访问了。但是,ping该IP会提示Destination Host Unreachable。

找到了制作 OpenStack Linux 镜像 - 每天5分钟玩转 OpenStack(151)一文,发现作者使用的是cloud镜像。十有八九是镜像的原因了,那就尝试一下。

下载cloud镜像

最简单的方法是使用标准镜像。主流的Linux发行版都提供可以在OpenStack中直接使用的cloud镜像,下面有几个下载地址:

这里我们访问 http://cloud-images.ubuntu.com/xenial/current/ ,然后下载xenial-server-cloudimg-amd64-disk1.img。

导入镜像

1、在horizon控制台,项目,计算,镜像,创建镜像。
![p://upload-images.jianshu.io/upload_images/1529081-a25a738dfa6ea577?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

2、镜像上传完成,即可看到新添加的镜像。


image

3、使用ubuntu16的镜像创建实例u16-n0。
[站外图片上传中...(image-6a9b7b-1545009544684)]

4、测试登录。
给实例分配浮动IP为172.24.4.10,在ccrfox105上可以ping通。然后,查看日志,想要找到用户名和密码。但是,不同于cirros,在ubuntu16日志中并没有找到。


image

参考openstack入门二十六:创建实例,发现大多数 cloud images支持公钥授权而不是传统的用户名密码授权。

使用密钥

dashboard方法

1、项目,计算,密钥对,创建密钥对。


image

2、输入密钥名ccrfox105-key,创建密钥对,然后公钥就会上传到openstack,显示在控制台。同时会自动下载私钥到本地,名为ccrfox105-key.pem。


image

3、重新创建实例u16-n0(这次不要忘记选择密钥对),然后分配浮动IP为172.24.4.10。


image

4、通过scp把ccrfox105-key.pem上传到ccrfox105
scp ccrfox105-key.pem test@ccrfox105:~

5、等待实例启动完全(5分钟左右),在ccrfox105测试登录
ssh ubuntu@172.24.4.10 -i ccrfox105-key.pem

报错:


image

修改了密钥权限为600,依然无法登录。

换成root用户,ssh root@172.24.4.10 -i ccrfox105-key.pem,依然无法登录。

尴尬,这是什么鬼?

命令行方法

1、切换到stack用户
sudo su - stack

2、生成密钥对
ssh-keygen,三次回车。

3、添加公钥到openstack环境
nova keypair-add --pub-key ~/.ssh/id_rsa.pub ccrfox105-stack-key

报错:

ERROR (CommandError): You must provide a username or user ID via --os-username, --os-user-id, env[OS_USERNAME] or env[OS_USER_ID]

参考[完整部署CentOS7.2+OpenStack+kvm 云平台环境(5)--问题解决],需要source admin-openrc.sh,然而我的系统中并没有admin-openrc.sh这个文件。

(1)新建admin-openrc.sh,内容如下:

export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=secret
export OS_AUTH_URL=http://172.16.0.105:35357/v2.

(2)执行source admin-openrc.sh

(3)再次执行nova keypair-add --pub-key ~/.ssh/id_rsa.pub ccrfox105-stack-key进行测试,错误变了

No handlers could be found for logger "keystoneauth.identity.generic.base"
ERROR (DiscoveryFailure): Could not determine a suitable URL for the plugin

(4)sudo netstat -antupo | egrep '(5000|35357)',发现35357端口服务没有启动。

(5)ps -ef | grep keystone,查看keystone服务,已经启动。

(6)vim /etc/keystone/keystone.conf,打开几处注释:

admin_bind_host = 0.0.0.0
admin_port = 35357
public_bind_host = 0.0.0.0
public_port = 5000

(6)重启keystone,sudo /etc/init.d/apache2 restart

然后,没有用。

dashboard与命令行结合

1、切换到stack用户
sudo su - stack

2、生成密钥对
ssh-keygen,三次回车。

3、拷贝公钥到本地

4、在openstack的dashboard导入公钥。

5、创建实例,选择新导入的公钥。

6、再次测试登录。
ssh ubuntu@172.24.4.10 -i ~./ssh/id_rsa
ssh root@172.24.4.10 -i ~./ssh/id_rsa

和dashboad方法报同样的错误:Permission denied (publickey).

至此,三种方法全部失败,猜测openstack的keystone服务没有安装好,留个坑吧。

不使用密钥

参考如何在OpenStack上安装Ubuntu系统Openstack使用官方ubuntu和Centos镜像openstack中镜像的密码修改,配置过程如下:

创建实例,创建过程中不添加密钥对,而是配置脚本:

#!/bin/sh  
sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/g' /etc/ssh/sshd_config  
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config  
cp -f /home/ubuntu/.ssh/authorized_keys /root/.ssh/  
service ssh restart  
passwd ubuntu<<EOF  
123456
123456
EOF 

如下图:


image

然后,ssh ubuntu@172.24.4.10,Permission denied (publickey).

如果是CentOS,那么输入:

#!/bin/sh  
sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/g' /etc/ssh/sshd_config  
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config  
cp -f /home/centos/.ssh/authorized_keys /root/.ssh/  
service sshd restart  
passwd centos<<EOF  
123456
123456
EOF

后记

本次实验过程中,各种报错不断,大部分都没有找到解决方案。

最坑的是,除了cirros,其他镜像在实例创建成功后都无法登录,尝试了各种办法也没有解决,只能无奈放弃。

控制台也无法访问,参考OpenStack 控制台不能访问的问题进行配置,依然无法访问。

怀疑是因为openstack没有安装完整,毕竟安装完是有报错的,看来有必要重新安装一下openstack了。然后再写一篇《OpenStack添加镜像2.0》版本。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,001评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,210评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,874评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,001评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,022评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,005评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,929评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,742评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,193评论 1 309
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,427评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,583评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,305评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,911评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,564评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,731评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,581评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,478评论 2 352

推荐阅读更多精彩内容