logo资料库

openstack_虚拟机下安装详细过程.docx

第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
资料共16页,剩余部分请下载后查看
下面就是主要的搭建过程: 第一步:准备系统 1.首先先把你的系统升级到最新版,所有的软件包包括内核都升级一下,免得后面安装软件包的时候出现 什么不依赖的情况 sudo apt-get update sudo apt-get upgrade 还有就是下面所有的操作最好都切换到 root 用户, sudo passwd sudo - 2.设置网络 我的虚拟机的 ip 是 222.24.24.174,大家最好按照我的设置做,等搭建成功之后在做修改 sudo vim /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 222.24.24.174 netmask 255.255.255.0 broadcast 222.24.24.255 gateway 222.24.24.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 202.117.128.2 auto eth1
iface eth1 inet static address 192.168.22.1 network 192.168.22.0 netmask 255.255.255.0 broadcast 192.168.22.255 3.重启下网络,让修改生效 /etc/init.d/networking restart 4.安装 bridge apt-get install bridge-utils 重启网络或者重启一下机器都可以 /etc/init.d/networking restart 5.设置 NTP apt-get install ntp 编辑 /etc/ntp.conf 在末尾添加下面 3 行 server ntp.ubuntu.com iburst server 127.127.1.0 fudge 127.127.1.0 stratum 10 重启服务 sudo /etc/init.d/ntp restart 6.设置 Iscsi 用作网络存储的 apt-get install tgt 重启服务 service tgt start 安装 iscsi 客户端
apt-get install open-iscsi open-iscsi-utils 8:安装 rabbitmq 消息队列 apt-get install rabbitmq-server memcached python-memcache apt-get install kvm libvirt-bin 第二步:安装 mysql,创建相关数据库 Openstack 的组件:nova,keystone,glance,都需要数据库。不过目前官方建议 keystone,采用 sqlite 存储,而不用 mysql 存放。所以我们只需要创建 nova 和 glance 两个数据库就可以 1:安装 mysql 过程中,会提示你输入 root 密码。 apt-get install -y mysql-server python-mysqldb 让 mysql 支持外部访问 sed -i 's/127.0.0.1/0.0.0.0/g' /etc/mysql/my.cnf 重启服务 service mysql restart 2:安装 phpmyadmin (可选) 为了方便,可以把 phpmyadmin 装上,可以比较方便管理数据库 apt-get install phpmyadmin 安装的时候,第一个提示是让你输入 root 的密码。 3:创建数据库 nova 数据库, 管理员:novadbadmin,密码是:dieD9Mie glance 数据库,管理员:glancedbadmin,密码是:ohC3teiv 如果你修改密码,后面很多配置都需要相应更改。 mysql -uroot -p CREATE DATABASE nova; GRANT ALL PRIVILEGES ON nova.* TO 'novadbadmin'@'%' IDENTIFIED BY 'dieD9Mie'; CREATE DATABASE glance;
GRANT ALL PRIVILEGES ON glance.* TO 'glancedbadmin'@'%' IDENTIFIED BY 'ohC3teiv'; quit 三:安装和配置 keystone Openstack 的各个组件,keystone 是最难配置。搞定 keystone,后面应该就没啥麻烦。 1:安装 keystone apt-get install keystone python-keystone python-keystoneclient 2:配置 keystone 需要修改 /etc/keystone/keystone.conf 两个地方 默认定义的 token 就是 ADMIN,我使用 hastexo 作为 token [DEFAULT] bind_host = 0.0.0.0 public_port = 5000 admin_port = 35357 #admin_token = ADMIN admin_token =hastexo 另外一个地方是 [catalog] #driver = keystone.catalog.backends.sql.Catalog driver = keystone.catalog.backends.templated.TemplatedCatalog template_file = /etc/keystone/default_catalog.templates 重启服务 service keystone restart 3: 导入数据
这个是通过修改 devstack 的 keystone_data.sh 脚本。实现导入数据。如果你上面的设置都和我一样, 那直接运行这个脚本就可以。 http://www.hastexo.com/system/files/user/4/keystone_data.sh_.txt 下载脚本 wget http://www.hastexo.com/system/files/user/4/keystone_data.sh_.txt mv keystone_data.sh_.txt keystone_data.sh 让脚本可运行 chmod +x keystone_data.sh 运行脚本, 如果你修改的默认的用户名和密码,你需要修改脚本。修改两个地方 第一个是登录 dashboard 的 admin 的密码 第二个就是 keystone 的 token #ADMIN_PASSWORD=${ADMIN_PASSWORD:-hastexo} ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin} SERVICE_PASSWORD=${SERVICE_PASSWORD:-$ADMIN_PASSWORD} #export SERVICE_TOKEN="hastexo" export SERVICE_TOKEN="Centrin" export SERVICE_ENDPOINT="http://localhost:35357/v2.0" SERVICE_TENANT_NAME=${SERVICE_TENANT_NAME:-service} 然后运行这个脚本 ./keystone_data.sh 顺利运行,会什么都没有输出 root@openstack:~# echo $? 0
root@openstack:~# keystone --tenant=admin --username=admin --password=hastexo --auth_url=http://127.0.0.1:5000/v2.0 user-list +----------------------------------+---------+--------------------+--------+ | id | enabled | email | name | +----------------------------------+---------+--------------------+--------+ | a8fa3a4e842946f18f40f1132754e262 | True | admin@hastexo.com | admin | | b86ba4884b7c405e98529f94dc6f44f4 | True | demo@hastexo.com | demo | | e36322db7bdb46c0877cf6753bd23ebf | True | nova@hastexo.com | nova | | fcddaebccdfa47e2aa0cfed3ab516de8 | True | glance@hastexo.com | glance | +----------------------------------+---------+--------------------+--------+ 看到这些,就说明 keystone 安装正常。 接下来就是添加环境变量 export OS_TENANT_NAME=admin export OS_USERNAME=admin export OS_PASSWORD=hastexo export OS_AUTH_URL="http://localhost:5000/v2.0/" 然后运行 root@openstack:~# keystone user-list +----------------------------------+---------+--------------------+--------+ | id | enabled | email | name | +----------------------------------+---------+--------------------+--------+ | a8fa3a4e842946f18f40f1132754e262 | True | admin@hastexo.com | admin | | b86ba4884b7c405e98529f94dc6f44f4 | True | demo@hastexo.com | demo | | e36322db7bdb46c0877cf6753bd23ebf | True | nova@hastexo.com | nova | | fcddaebccdfa47e2aa0cfed3ab516de8 | True | glance@hastexo.com | glance | +----------------------------------+---------+--------------------+--------+ 四:安装和配置 glance 1:安装软件 apt-get install glance glance-api glance-client glance-common glance-registry python-glance
2:配置/etc/glance/glance-api-paste.ini 修改文件最后 3 行,这些设置都是 keystone 导入数据的时候设置的。 admin_tenant_name = %SERVICE_TENANT_NAME% admin_user = %SERVICE_USER% admin_password = %SERVICE_PASSWORD% 改成 admin_tenant_name =admin admin_user =admin admin_password =hastexo 3:设置 /etc/glance/glance-registry-paste.ini 也是修改文件最后 3 行,和上面是一样的。 admin_tenant_name = %SERVICE_TENANT_NAME% admin_user = %SERVICE_USER% admin_password = %SERVICE_PASSWORD% 改成 admin_tenant_name =admin admin_user =admin admin_password =hastexo 4:配置/etc/glance/glance-registry.conf 修改 #sql_connection = sqlite:////var/lib/glance/glance.sqlite sql_connection = mysql://glancedbadmin:ohC3teiv@222.24.24.174/glance 在末尾添加两行
[paste_deploy] flavor = keystone 5:配置/etc/glance/glance-api.conf 在末尾添加两行 [paste_deploy] flavor = keystone 6:同步数据库 目前 glance 需要手工同步数据库。你装一个 phpmyadmin,先确认 glance 数据库没任何内容。 glance-manage version_control 0 glance-manage db_sync 成功之后会输出: /usr/lib/python2.7/dist-packages/glance/registry/db/migrate_repo/versions/00 3_add_disk_format.py:47: SADeprecationWarning: useexisting is deprecated. Use extend_existing. useexisting=True) 重启服务 service glance-api restart && service glance-registry restart 7:验证 glance 服务是否正常 下面的步骤照做就可以,具体原理可以看英文 export OS_TENANT_NAME=admin export OS_USERNAME=admin export OS_PASSWORD=hastexo export OS_AUTH_URL="http://localhost:5000/v2.0/" 运行 glance index 没有任何的输出。表示正常。
分享到:
收藏