点击上方“中兴开发者社区”,关注我们
每天读一篇一线开发者原创好文
参与OpenStack开源社区工作,免不了需要安装devstack。最稳妥的方式就是在兴云环境中进行安装,可以免去配置网络的烦恼。但是,有时候没有相应的条件,需要使用代理的方式安装。
通过http代理安装devstack有好几个困难。本文做一些总结。可以帮助读者顺利通过代理安装好devstack环境。
首先说明一下前提条件。因为devstack会使用到一些镜像源,例如yum、apt和pipy,所以需要提供网络代理的服务器能够连接到这些镜像源。此外,代理服务器也必须能顺利访问github或者openstack的git站点。
根据devstack的官方步骤(请先看一遍,不要着急做):
1、创建stack用户
$ sudo useradd -s /bin/bash -d /opt/stack -m stack
2、增加stack用户的权限
$ echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
$ sudo su - stack
3、下载devstack
$ git clone https://git.openstack.org/openstack-dev/devstack
$ cd devstack
4、创建配置文件
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
5、安装devstack
./stack.sh
如果不适用代理,可以按照上述方式安装。如果需要使用代理,请在第5步之前增加代理服务器的配置:
1、root用户,修改 /root/.bashrc 在文件最后追加:
export GIT_SSL_NO_VERIFY=1
export http_proxy=【代理服务器配置】
export https_proxy=【代理服务器配置】
export GIT_BASE=https://git.openstack.org
export no_proxy="127.0.0.1,localhost,【本地IP】"
2、使用ubuntu 16.04 系统,所以需要修改 apt 的配置,使用代理服务器。修改 /etc/apt/apt.conf,增加:
Acquire::http::Proxy "【代理服务器配置】";
Acquire::httpsy::Proxy "【代理服务器配置】";
关于GIT_BASE和no_proxy的配置的解释。由于git协议只能通过socks5协议代理,所以使用GIT_BASE环境变量,告诉devstack从http地址访问,规避了git协议的问题。no_proxy是放止在devstack安装的后半部分(即配置部分),访问本地地址的时候也从代理服务器转发。
在网络比较好的情况下,30分钟可以安装完成。
总结一下。通过http代理安装devstack,主要是解决http代理对安装过程的影响。本文能够解决硬件服务器安装devstack的困难。使用vm安装devstack的情况,仍然推荐使用兴云虚拟机实施。