OpenStack 是一系列开源工具(或开源项目)的组合,主要使用池化虚拟资源来构建和管理私有云及公共云。其中的 6 个项目主要负责处理核心云计算服务,包括计算、网络、存储、身份和镜像服务。同时还有另外十多个可选项目,用户可通过将其捆绑一起来创建独特、可部署的云架构。
一、操作系统:centos7 1406 最小化安装
openstack版本选取juno-eol
初学者openstack版本选择问题:不要太老的版本,因为pip安装依赖时模块大都写的>=哪个版本,选择太老的openstack版本会导致pip安装时模块太新各种冲突,最新版本也不行,坑还没被人踩过,错误查不到,最好两年左右的成熟版本,去github上找release查看以前的版本,如果能够安装成功,最好pip list命令保存一下各个模块版本,否则以后相同命令可能会安装不上
1、时间同步
yum install ntp -y
service ntpd start
chkconfig ntpd on
2、内核参数调整
vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0
3、关闭(iptables或firewalld)和selinux
systemctl stop firewalld.service
systemctl disable firewalld.service
或//看centos版本
/etc/init.d/iptables stop
chkconfig iptables off
vim /etc/selinux/config
SELINUX=disable
setenforce 0
4、安装epel
yum install -y epel-release
5、安装
yum install -y python-pip gcc gcc-c++ make libtool patch automake python-devel libxslt-devel MySQL-python openssl-devel libudev-devel git wget libvirt-python libvirt qemu-kvm gedit python-numdisplay device-mapper bridge-utils libffi-devel libffi lrzsz mariadb mariadb-server python2-PyMySQL rabbitmq-server httpd mod_wsgi memcached python-memcached
6、下载安装包并解压
7、启动mysql和memcached和rabbitmq
//mysql
vi /etc/my.cnf(在mysqld下添加)
default-storage-engine = innodb
collation-server = utf8_general_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8
systemctl enable mariadb.service
systemctl start mariadb.service
mysqladmin -u root password openstack//添加密码openstack
进入mysql
create database keystone;
grant all on keystone.* to keystone@'localhost' identified by 'keystone';//用户名密码都叫keystone
create database glance;
grant all on glance.* to glance@'localhost' identified by 'glance';//用户名密码都叫glance
create database nova;
grant all on nova.* to nova@'localhost' identified by 'nova';//用户名密码都叫nova
create database neutron;
grant all on neutron.* to neutron@'localhost' identified by 'neutron';//用户名密码都叫neutron
create database cinder;
grant all on cinder.* to cinder@'localhost' identified by 'cinder';//用户名密码都叫cinder
create database horizon//没有这个,界面不需要数据库
grant all on horizon.* to horizon@'192.168.0.0/255.255.0.0' identified by 'horizon';
执行后测试一下相关账户是否能登陆
例如keystone用户keystone密码
//rabitmq相关/
chkconfig rabbitmq-server on
/usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server start
//memcached相关///
systemctl enable memcached.service
systemctl start memcached.service
8、安装python模块依赖
pip install --upgrade pip
可能需要:
pip install --upgrade setuptools (没有相关报错就不用执行)
//以下是统一安装模式,也可以每个模块独立安装相关依赖
cat */requirements.txt|sort -n|uniq>>openstack.txt
pip install -r openstack.txt
/可选源
-i http://pypi.v2ex.com/simple/ --trusted-host pypi.v2ex.com
-i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
在这个阶段需要调整模块版本才能成功,如果冲突可以尝试安装相关模块允许的最小版本
9、安装每个软件
进入解压的软件目录
git init(重要:一定要执行)
python setup.py install
后续还会继续了解学习关于openStack的内容,敬请关注