Devstack自动化部署OpenStack需要依赖三个源,如果依赖外部的源服务器,那么将严重依赖网络的状况和GFW,运气好的话搭建过程非常顺利,运气不好会碰到各种问题,这三个源是:
(1)ubuntu源
(2)Openstack github源
(3)PYPI源(pip源)
其中,ubuntu源可以很简单的做成本地源,github也可以通过gitlab本地源来代替,但是pip源搭建的比较少,这里详细介绍下载centos上如何单间本地pip源。
- 安装python-2.7.7
centos自带python-2.6,这里需要python 2.7,所以下载最新版本的python,目前是2.7.7,下载完成后解压安装。
tar zxvf Python-2.7.5.tgz
cd Python-2.7.5
./configure
--prefix=/usr/local
make && make altinstall
2. 安装distribute(目前最新版本是distribute-0.7.3)
unzip distribute-0.7.3.zip
cd distribute-0.7.3
python2.7
setup.py install
3. 安装virtualenv
easy_install-2.7 virtualenv
4. 安装bandsnatch
virtualenv-2.7
bandersnatch
cd bandersnatch
bin/pip install -r
注:该步操作由于网络环境不同,可能出现timeout的错误,可重新执行多次。
5. 设置bandsnatch
cd /opt/bandersnatch
bin/bandersnatch mirror
注:执行此命令后,会有如下输出:
2014-06-14 16:25:28,645 WARNING: Config file '/etc/bandersnatch.conf'
missing, creating default config.
2014-06-14 16:25:28,645 WARNING: Please
review the config file, then run 'bandersnatch' again.
需要重新编辑/etc/bandersnatch.conf文件,修改pypi源的存储路径,即将#directory = /srv/pypi 修改为你自己的路径,比如directory = /pypi
修改完成后,重新执行bin/bandersnatch mirror,就开始同步pip官方源到本地,此过程可能比较长,而且可能会由于网络原因超时报错,需要多次重复执行该命令
6. 配置Apache,即将pip做成本地web源
ln -s /pypi/web /var/www/html/pypi
7. 设置pip客户端,指定从刚搭建好的本地源安装pypi软件包
mkdir ~/.pip
vim ~/.pip/pip.conf
--------------- pip.conf-----------------------------------------------
[global]
index-url =
至此,pip本地源服务器搭建完毕。
---------------------------------------------------
微博:@Marshal-Liu
Email: ustcdylan@gmail.com
欢迎交流!
---------------------------------------------------