X86单网卡Desktop源码安装Openstack 组件之Keystone、Glance、Nova

来源:互联网 发布:淘宝类似的购物网站 编辑:程序博客网 时间:2024/04/30 16:47
由于我的试验环境有限, 所以在本地的x86的电脑上单节点安装Openstack的基础组件, 而没有使用多Compute节点的方式来部署, 据说那也是挺挑战的, 等有闲置的机器我会去尝试一下。

电脑配置如下:
OS: Fedora 17
CPU: Intel(R) Core(TM) i3 CPU M 370 @ 2.40GHz
Memory: 4G

安装步骤如下:

1、到Github中下载各个组件的源码

Keystone >> https://github.com/openstack/keystone.git
keystoneClient >> https://github.com/openstack/python-keystoneclient.git
Nova >> https://github.com/openstack/nova.git
NovaClient >> https://github.com/openstack/python-novaclient.git
Glance >> https://github.com/openstack/glance.git
GlanceClient >> https://github.com/openstack/python-glanceclient.git

下载想要的版本,解压
  以下假定都解压到/opt/openstack/ 下

2、安装Mysql、RabbitMq-Server(可选)或Qpid ,用于组件内的通信
mysql、rabbiqmq 均是通过yum安装的,也可以源码安装。

配置Rabbitmq
将以下两行添加至/etc/rabbitmq/rabbitmq.conf 以及/etc/rabbitmq/rabbitmq-env.conf
DENAME=rabbit@localhost
NODE_IP_ADDRESS=127.0.0.1

为rabbitmq设置guest的密码 
    rabbitmqctl change_password guest flopsymopsy
mysql设置root密码
    mysqladmin -u root password 'nomoresecret' 
    mysql -u root -pnomoresecret
        create database keystone;
        create database glance;
        create database nova;


添加网卡br100

vim /etc/networks
添加以下至/etc/networks中
auto br100
iface br100 inet static
address 10.0.0.0
netmask 255.255.255.0
gateway 10.0.0.1
bridge_ports wlan0
bridge_stp off
bridge_fd 0
增加一个桥接设备, 我们将它命名为br100
brctl addbr br100
/etc/init.d/networking restart

3、编译安装个组件
cd ~/nova
 pip install -r tools/pip-requires
 python setup.py install
cd ~keystone 
 pip install -r tools/pip-requires
 python setup.py install
cd ~/glance
 pip install -r tools/pip-requires
 python setup.py install

如何安装正常的情况下,在每个组件下面有etc目录
将每个组件etc目录下的文件拷贝至/etc目录下
 cd keystone/
 cp -R etc/* /etc/
 cd glance/
 cp -R etc/* /etc/
 cd nova/
 cp -R etc/* /etc/

4、配置keystone
vim /etc/keystone/keystone.conf
设置admin的Token
[DEFAULT]
admin_token = 721457575107e4d57fe3
也可代码修改token的值 方法如下
    export ADMIN_TOKEN=$(openssl rand -hex 10)
    openstack-config --set /etc/keystone/keystone.conf DEFAULT \ 
    admin_token $ADMIN_TOKEN
修改mysql链接,修改为之前设置的用户名密码
[sql]
connection = mysql://root:nomoresecret@localhost/keystone?charset=utf8

启动keystone服务
    keystone-all --config-dir=/etc/keystone &

数据库中创建相应的数据表
    keystone-manage db_sync

5、配置glance

vim /etc/glance-api.conf
sql_connection = mysql://root:nomoresecret@localhost/glance?charset=utf8

vim /etc/glance/glance-api-paste.ini
[filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
delay_auth_decision = true
admin_tenant_name = service
admin_user = glance
admin_password = supersecret

vim /etc/glance-registry.conf
[keystone_authtoken]
signing_dir = /var/cache/glance/registry
auth_uri = http://127.0.0.1:5000/
auth_host = 127.0.0.1
auth_port = 35357
auth_protocol = http
admin_tenant_name = service
admin_user = glance
admin_password = supersecret

[paste_deploy]
flavor = keystone

创建glance数据表
    glance-manage db_sync

6、配置nova

vim /etc/nova/nova.conf

[DEFAULT]
verbose=True
auth_strategy=keystone
allow_resize_to_same_host=True
api_paste_config=/etc/nova/api-paste.ini
rootwrap_config=/etc/nova/rootwrap.conf
compute_scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler
dhcpbridge_flagfile=/etc/nova/nova.conf
force_dhcp_release=True
fixed_range=10.0.0.0/24
default_floating_pool=nova
s3_host=192.168.1.110
s3_port=3333
osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions
my_ip=192.168.1.110
sql_connection=mysql://root:nomoresecret@localhost/nova?charset=utf8
libvirt_type=kvm
libvirt_cpu_mode=none
instance_name_template=instance-%08x
enabled_apis=ec2,osapi_compute,metadata
volume_api_class=nova.volume.cinder.API
logdir = /var/log/nova
state_path=/opt/data/nova
lock_path=/opt/data/nova
instances_path=/opt/data/nova/instances
logging_context_format_string=%(asctime)s %(color)s%(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s%(color)s] %(instance)s%(color)s%(message)s
logging_default_format_string=%(asctime)s %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s
logging_debug_format_suffix=from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d
logging_exception_prefix=%(color)s%(asctime)s TRACE %(name)s %(instance)s
network_manager=nova.network.manager.FlatDHCPManager
public_interface=br100
vlan_interface=eth0
flat_network_bridge=br100
flat_interface=eth0
novncproxy_base_url=http://127.0.0.1:6080/vnc_auto.html
xvpvncproxy_base_url=http://127.0.0.1:6081/console
vncserver_listen=127.0.0.1
vncserver_proxyclient_address=127.0.0.1
ec2_dmz_host=192.168.1.110
rabbit_host=localhost
rabbit_password=flopsymopsy
glance_api_servers=127.0.0.1:9292
compute_driver=libvirt.LibvirtDriver
firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver

vim /etc/nova/api-paste.ini

[filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
auth_host = 127.0.0.1
auth_port = 35357
auth_protocol = http
admin_tenant_name = service
admin_user = nova
admin_password = supersecret
signing_dir = /tmp/keystone-signing-nova

至此,openstack的三个基础单节点搭建成功,启动服务流程见这
然后剩下的就是启动各个服务,创建初始化数据,进行相关的操作了

安装中主要参考了以下文章
http://docs.openstack.org/folsom/openstack-compute/install/yum/content/compute-verifying-install.html

http://blog.csdn.net/ugyn109/article/details/7480057
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 腾讯手游助手模拟器内存不够怎么办 微信视频对方听不到我的声音怎么办 学生考试传纸条作弊老师应怎么办 苹果手机微信小游戏没有声音怎么办 红米手机游戏下好了安装不了怎么办 小米手机sd卡存储已满怎么办 英雄联盟峡谷之巅资格被收回怎么办 人进监狱之前信用卡没还怎么办 荒野行动资源文件下载卡住了怎么办 荒野行动绑定的手机号停机了怎么办 不小心误点了爱奇艺扣款了怎么办 和别人吵架别人先骂你怎么办 自己人被带到了缅甸黑社会了怎么办 绝地求生忘记复制钥匙激活码怎么办 绝地求生买的钥匙激活码丢了怎么办 蓝河奶粉宝宝吃了不长肉怎么办 苹果ios版本太低激活不了怎么办 脸上被油烫伤了 起了水泡怎么办 皮肤被油烫伤起来个水泡怎么办 去泰国旅游没来得及兑换泰铢怎么办 游戏和安卓 不和 出现黑屏怎么办 邻居把垃圾放在楼梯口不丢怎么办 58热敏小票打印机口松了怎么办 王鹏的眼睛今天起疙瘩了怎么办 背包带子老从肩膀滑下来怎么办 绝地求生用手机流量更新不成怎么办 手机拍的视频在电脑上放不了怎么办 炉石传说手机点登陆游戏闪退怎么办 车到信号屏蔽区一键启动不了怎么办 王者荣耀战队活跃度满了怎么办 win10你的账户已被停用怎么办 电脑一键还原后一直黑屏怎么办? 被打了狂犬疫苗的狗咬伤怎么办 美版苹果7系统坏了怎么办 韩服的球球大作战网络不稳定怎么办 球球大作战号删了找不回来怎么办 队友传足球球的时候接不到怎么办 魅族手机中病毒锁机了怎么办? vbs打开是和文本文档一样怎么办 把电脑注册表删了电脑动不了怎么办 注册表删一项后电脑启动不了怎么办