1 配置基础的源(国内源)
1)配置阿里云的base和epel源
yum -y install wget
mv -f /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
2)配置豆瓣源
mkdir ~/.pip
cd ~/.pip
vim pip.conf
[global]
trusted-host = pypi.douban.com
index-url = http://pypi.douban.com/simple
3)配置hosts文件
添加
10.0.11.211 controller
2 装依赖包
yum -y install git git-review
yum install python-virtualenv -y
yum install gcc libffi-devel python-devel openssl-devel -y
yum -y install python-pip
3.运行python自带的虚拟设备
virtualenv --no-site-packages horizon.venv
输出:
Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/work/horizon.venv/bin/python2
Also creating executable in /home/work/horizon.venv/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.
进入
source horizon.venv/bin/activate
退出当前的venv环境,使用deactivate命令:
(horizon.venv) [root@ui horizon]: deactivate
4.安装 Horizon
<release>:rocky(可以选择版本)
git clone https://git.openstack.org/openstack/horizon -b stable/<release> --depth=1
cd /root
source horizon.venv/bin/activate
cd horizon
安装 Horizon 用于开发依赖:在horizon目录下执行
pip install -e .
cp openstack_dashboard/local/local_settings.py.example openstack_dashboard/local/local_settings.py
vim openstack_dashboard/local/local_settings.py
ALLOWED_HOSTS = '*'
# ...
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = 'default' # 如果 Domain 的 ID 不是 default,则为对应的 ID
# ...
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
# ...
OPENSTACK_HOST = "controller" # 控制节点IP地址
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user" #根据你的环境自己配置这个参数,这里我是‘user’
# ...
OPENSTACK_API_VERSIONS = {
"identity": 3,
"image": 2,
"volume": 2,
}
# ...
执行
python manage.py collectstatic -l
python manage.py compress --force
启动 Horizon 项目:
python manage.py runserver 0.0.0.0:8000
翻译
cd horizon/openstack_dashboard
django-admin compilemessages