陈沙克

Nov 222013
 

估计刚开始使用Openstack用户,一定会比较困惑Openstack的镜像的初始化密码是多少? 不同的镜像初始化密码是不一样,这里做一个总结。

虚拟机登陆方式

对Openstack来说:访问虚拟机提供了两种方式,

  • ssh方式
  • Dashboard的console。

Console方式,相当于你服务器前面直接登陆。有些虚拟机镜像处于安全考虑,不允许root的账号直接远程ssh登陆。

Ubuntu镜像

下载地址

http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img

这个是非常有名的镜像,大家用来测试也比较多。这个镜像默认是无法使用密码登陆,只能使用密钥登陆。所以你在console,也是无法登陆到虚拟机。

默认的用户名是:ubuntu,你需要使用密钥才能登陆。

如果你希望console可以登陆,那么你就需要想点办法

Snap6

这个时候,创建完的虚拟机,在console,就可以用 user:ubuntu,pass:ubuntu 登陆,不需要密钥。

不过这个时候,你还是无法通过ssh访问虚拟机,因为ssh默认设置是禁用密码认证,所以你需要多做点工作。

#!/bin/sh
passwd ubuntu<<EOF
ubuntu
ubuntu
EOF
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
service ssh restart

这样你就可以使用ssh登陆到虚拟机,不需要通过console。

用root登陆

如果你希望直接使用root登陆,那么你就需要给root设置一个密码。

Snap7

这里设置的密码,就是镜像管理员的密码,也就是root的密码。

默认Redhat的RDO配置是不支持这个功能,你需要修改所有节点的nova.conf 文件

# Inject the admin password at boot time, without an agent.
# (boolean value)
#libvirt_inject_password=false
libvirt_inject_password=true

记住,是所有的节点,都是需要修改的。重启compute服务

/etc/init.d/openstack-nova-compute restart

当然你这样肯定还是无法ssh,使用root登陆,你就需要结合一下上面的一个例子,你就可以。

Snap8

就是输入下面的代码

#!/bin/sh
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
service ssh restart

这个时候,你就可以ssh,用root的身份登陆进去。

Cirros

Openstack的开发,基本都使用这个image来测试,因为他比较小,只有10M。

镜像介绍 

镜像的地址:

https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img

Cirros,是可以使用用户名和密码登陆,也可以使用密钥登陆

user:cirros
password:cubswin:)

这个密码比较特别,所以你可以使用上面的方法来设置这个镜像的root的密码,实现ssh登陆。

CentOS Gold Image

国内用CentOS比较多,不过在Openstack上的CentOS image,以前都只能自己去制作。这个需要一个大家信任的第三方来完成。最近有了一个选择

http://catn.com/labs/centos-images/

http://catn.com/2013/04/18/building-a-virtual-machine-image-for-centos/

教你如何制作CentOS的image,并且提供现成的image下载

镜像下载地址:

http://mirror.catn.com/pub/catn/images/qcow2/centos6.4-x86_64-gold-master.img

镜像账号

  • user:root
  • pass:changeme1122

你是可以在创建虚拟机的时候,直接把这个root的密码修改。默认是运行root登陆。

不过这个image,没有集成cloud-init。导致你看到的虚拟机名字,不是你设置的计算机名。

 

其他image资源

http://docs.openstack.org/image-guide/content/ch_obtaining_images.html

http://openstack.redhat.com/Image_resources

附录

你需要设置安全组,打开22端口才能ssh登陆。

Snap9

Nov 202013
 

采用豆瓣的pypi进行安装。

目前Devstack脚本已经支持Centos 6.5,那么你可以选择是在Ubuntu 12.04或者CentOS 6.5下来安装,步骤基本都是一样。就是一个git命令安装的区别.

最小化安装CentOS 6.5,我是关闭了selinux,不关闭应该也是可以的。,用root账号登陆。

对于CentOS6.5来说,devstack脚本会添加EPEL和RDO源。

2014年6月6日:文档更新,已经可以支持siwft和trove。不过安装过程,你可能会遇到cliff的bughttps://review.openstack.org/#/c/95916/,如果你遇到horizon无法启动,那么你就去 /etc/httpd/conf.d/ 里把那个配置文件后缀disable去掉就ok。还有就是安装过程,由于启用了heat,会下载一个heat的镜像,会导致安装过程很慢,可以考虑修改stackrc文件,不让下载。另外csdn的git源,也应该没法使用,因为项目太多没有同步了。

修复cilff的bug,估计上游很快就会merge

cd /opt/stack/cliff/
git fetch https://review.openstack.org/openstack/cliff refs/changes/16/95916/4 && git checkout FETCH_HEAD

Continue reading »

Nov 122013
 

Openstack的网络一共有5种,其实对于租户网络来说,应该就是4种。所谓Flat模式,并不是租户的网络,而是把虚拟机直接放在 provider networks,就是管理员创建一个网络,让所有的租户直接连接到外网,获得的是公网的IP,不需要经过NAT。

  1. local模式:这主要是给测试使用,只能是all in one,不能再添加节点
  2. GRE模式:隧道数量没有限制,性能有点问题。
  3. Vlan模式:vlan数量有4096的限制
  4. VXlan模式:vlan数量没有限制,性能比GRE好。

每一种模式,网络的配置都会有所不同,打算每种网络模式,写一篇文章介绍。这里主要是介绍GRE模式的配置。

我的RDO的网络设置和应答文件 GRE模式:http://t.cn/8DDql5W Vlan模式:http://t.cn/8DDql5O 完成后,自己手工创建ifcfg-br-ex http://t.cn/8DDql50

2013年11月22日:目前RDO在多节点部署有bug,在计算节点创建的虚拟机都会失败。http://openstack.redhat.com/forum/discussion/910/havanna-issues-with-multi-node#Item_14  解决办法就是装完后在控制节点,添加一条iptables的规则:

iptables -I INPUT -s 172.28.1.12/32 -p tcp --dport 9696 -j ACCEPT

并保存规则:service iptables save ,172,28,1,12是我计算节点的IP地址。 (bug已经修复)

2013年11月27日:如果你发现虚拟机访问外网速度很慢,在控制节点,准确说,在网络节点,我的例子里是br-ex绑定在eth0上,运行下面命令,就会让虚拟机访问外网获得正常速度。

ethtool --offload eth0 gro off

2013年12月12日:今天按照文档,设置MTU 为1400,好像把所有的问题都解决,虚拟机间的访问和虚拟机访问外网,不需要对网卡做任何的设置。我也顺便把文档更正一下。上面的网卡设置ethtool,不需要操作。目前基本的功能都已经正常,文档也基本完成。

 

Continue reading »

Nov 012013
 

以前整理的cobbler的安装文档,今天看来,其实问题不少,这次我就重新整理一遍,这次文档和以前主要区别是

  1. iptables打开端口,而不是关闭iptables,显得更加正规
  2. dns和dhcp的管理采用dnsmasq,这样更加简化
  3. 不考虑ubuntu,这样让文档更加简单。一篇文档就可以完成全部设置

参考文档:http://terrarum.net/administration/centos-6-cobbler-server.html

2014年1月17日:把文档更新了一下,在centos6.5进行重新安装,基本可以确保文档没有任何的错误,尤其在iptables的地方,已经反复测试。发现文档有一个地方遗漏,导致无法管理dhcp,比较惭愧。

2014年2月28日:更新了ks文件,把密钥注入的功能补上。这基本就是我目前使用的全部功能。关于对cobbler web的定制,我也让同事把所有的修改放到github上。https://github.com/niuzhenguo/cobbler_enhance

Continue reading »

Nov 012013
 

默认装完CentOS,Selinux是打开的,这个你基本都是需要关闭,否则你基本没法玩。查看当前selinux的状态。

刚好手工装完一台CentOS6.4,就顺便记录一下。

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

你可以运行下面命令,马上禁用selinux

setenforce 0

这个时候你查看selinux的状态

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   permissive
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

对比一下,你就可以看出变化。

重启后,设置就失效。

如果你希望重启生效,那么你就需要修改配置文件

/etc/selinux/config

#SELINUX=enforcing
SELINUX=disabled

或者你可以运行下面命令

sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config

这个时候,你重启机器,再查看selinux的状态

# sestatus
SELinux status:                 disabled