OpenStack学习:通过devstack安装openstacke mitaka

1 篇文章 0 订阅
1 篇文章 0 订阅

一、操作系统

Devstack目前是支持 Ubuntu 14.04 (Trusty),Fedora 22 (或 Fedora 23) 和 CentOS/RHEL 7,不过全球的OpenStack开发者,大部分都在用Ubuntu 14.04。相关的资料也是基于Ubuntu14.04的比较多,所以还是建议你使用Ubuntu 14.04。

为了正确解决安装时的依赖问题,建议使用最小化安装的受支持的操作系统。

详细的介绍 http://docs.openstack.org/developer/devstack/

注意:这是几个月之前写的了,目前最新的版本已经是ocata,不过devstack安装步骤都是一样的。

二、设置源

对于ubuntu的系统,默认安全会从国外的源安装,导致速度比较慢,可以修改/etc/apt/source.list文件,相关源列表可从http://wiki.ubuntu.org.cn/获取。

deb http://cn.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb-src http://cn.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse
# Canonical 合作伙伴和附加
deb http://archive.canonical.com/ubuntu/ trusty partner
deb http://extras.ubuntu.com/ubuntu/ trusty main

允许更新

sudo apt-get update

三、更新时间

http://www.pool.ntp.org是NTP的官方网站,在这上面我们可以找到我们国家的NTP服务器

ntpdate  2.cn.pool.ntp.org

四、下载devstack

下载devstack,并指定稳定版本。默认无论是Devstack和OpenStack,都是采用Master的代码进行安装,这样经常会出现,今天安装成功,明天失败,代码时刻在变化。所以我们不仅仅要指定OpenStack的版本,还需要指定Devstack的版本,才能提供安装成功的概率。
apt-get install git
git clone http://git.trystack.cn/openstack-dev/devstack.git -b stable/mitaka
或者
$git clone https://github.com/openstack-dev/devstack.git  #克隆devstack的Git代码仓库
cd devstack/;git branch -a   #显示本地分支
git checkout -b mitaka  origin/stable/mitaka  #切换到指定mitaka分支或标签

五、分配权限

目前Devstack脚本已经不支持直接使用root身份运行,你需要创建stack用户运行
cd /home/devstack/tools/
./create-stack-user.sh
使用这个脚本创建用户stack,依然需要手工给用户添加权限。
chown -R stack:stack /home/devstack

此外我们可以手动创建用户分配权限。

创建 stack 用户,添加 stack 用户权限。

sudo groupadd stack
sudo useradd -g stack -s /bin/bash -d /opt/stack -m stack
保证该用户下sudo可以免密码运行,否则脚本执行过程中会出现权限问题。
可以修改/etc/sudoers, 在行 root    ALL=(ALL:ALL) ALL 后添加 stack      ALL=(ALL) ALL  然后保存文件,如下
sudo echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
切换到 stack 用户
sudo su - stack

六、配置localrc

devstack目录下的一些文件描述
stack.sh #自动化部署的入口;判断是否存在localrc文件; 否,进入交互模式; 是,进入配置模式(如果需要输入输入stack.sh需要的参数,如:数据库的密码、Rabbit MQ的密码、Service TOKEN 等)

localrc  #配置文件;传入stack.sh的参数;nova部署在哪个节点,用户名密码是什么

openrc   #环境变量脚本;在执行openstack命令时要导入一些环境变量 如:export OS_USERNAME = admin

unstack.sh #卸载脚本

lib          #每个服务的自动化安装脚本;通常存放nova,swift等自动化安装脚本,手动安装时执行的所有命令;每一个openstack服务对应一个文件(以下对相关文件作了简要说明)

  

  apache (Web 服务)

  Swift  (对象存储的组件)

  Glance  (镜像管理)

  Horizon (提供了一个模块化的webbased用户界面)

  heat(应用的自动化部署AWS cloudformation)

  ceilometer(监控和计费)

  sahara(BigData-as-a-Service #BDaaS,将hadoop部署在openstack的虚拟机上)

  ironic(PXE+IPMI,物理节点的自动化部署)

  trove(Database-as-a-service,将数据库部署在openstack的虚拟机上)

  tempest(openstack单元测试框架)

  opendaylight(开源的sdn控制器)

  ldap(轻量型目录访问协议,与keystone整合,实现多级用户的鉴权)

  database、databases(postgresql/mysql,默认将选择mysql)

  nova、nova_plugins  (可以说是一套虚拟化管理程序,还可以管理网络和存储;下面是支持的一些虚拟化管理程序)

  functions-libvirt  hypervisor-baremetal  hypervisor-fake  hypervisor-ironic  hypervisor-libvirt  hypervisor-openvz  hypervisor-vsphere  hypervisor-xenserver

  neutron、neutron_plugins、neutron_thirdparty(网络管理的组件,neutron未来将取代Nova相关网络相关内容)

  cinder、cinder_plugins (存储管理的组件。Cinder存储管理主要是指虚拟机的存储管理)
建议创建最小化配置文件localrc,即使用非交互模式安装,内容如下:
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
#FIXED_RANGE=172.31.1.0/24
#FLOATING_RANGE=192.168.20.0/25
#HOST_IP=10.3.4.5
或者直接使用devstack/sample/local.conf,

cp /home/devstack/samples/local.conf    /home/devstack/local.conf

记得手动修改HOST_IP

七、安装devstack

安装devstack痛苦的其中一个原因,是OpenStack代码,都需要从github下载,这样由于网络的原因,经常导致各种错误,简直让人崩溃,各种错误,也根本无法通过google来解决。
目前国内已经提供了完整的OpenStack的github的mirror。
http://git.trystack.cn
这样Devstack成功概率会大大提高。
另外devstack还会下载image,下载的过程也是非常缓慢。trystack也提供大家常用的image下载。
http://images.trystack.cn
要使用trystack源,只需要往上一步的localrc文件中添加如下内容
# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git

#OFFLINE=True
RECLONE=True

# Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://images.trystack.cn/cirros/cirros-0.3.4-x86_64-disk.img"
此外,修改pip源可以加快安装速度,国内可以使用豆瓣源
在/root主目录下创建.pip文件夹
mkdir ~/.pip
然后在该目录下创建pip.conf文件编写如下内容:
[global]
trusted-host =  pypi.douban.com
index-url = http://pypi.douban.com/simple

然后运行
./stack.sh    
等待安装部署即可。

参考文章:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值