重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
OpenStack基础环境 [一]
成都创新互联是一家专注于成都网站设计、成都网站制作与策划设计,三台网站建设哪家好?成都创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:三台等地区。三台做网站价格咨询:18980820575openstack
时间:2016年11月22日
openstack是一个云平台管理的项目,它不是一个软件。也就是说我们可以使用openstack
来管理我们一个数据中心大量资源池。它里面包含了很多子项目
openstack包含三大项:计算
网络
存储
openstack主要目标是来简化资源
的管理和分配,把计算
网络
存储
。三大项虚拟成三大资源池
,例如需要计算资源我这里可以提供,需要网络资源这里也可以提供以及存储资源的需求,对外提供api
,通过api
进行交互
openstack的设计基本上是按照亚马逊
进行设置的,我们可以将openstack
理解为开源版本的aws
。因为它很多地方都参考亚马逊
进行操作的,而且openstack
的很多api
跟亚马逊是相通的。
openstack火起来的原因首先是apache
旗下的开源软件,第二它是由python
进行编写
(因为python比较简单,深受技术人员的喜欢)
openstack官方网站:http://www.openstack.org
openstack版本是每6
个月发布一次,每次版本的顺序按照A-Z
进行排序。
那么我们应该如何选择版本呢?
我们选择版本的时候,除了新版本的那些功能不得不用,那我们可以选择新的版本。其实我们可以选择稍微落后的一个版本。上述图不够准确,现在已经达到N版。国内openstack是从E班开始火的。因为E版本当时是比较完善的,国内openstack最火的时候是在G版的时候。现在国内不论是传统行业还是互联网行业都在使用openstack
服务名称 | 项目名称 | 描述 |
---|---|---|
Dasgviard | Horizon | 基于Openstack API接口使用diango开发的Web管理 |
Compute | Nova | 通过虚拟化技术提供计算资源池 |
Networking | Neutron | 实现了虚拟机的网络资源管理。 |
Storage (存储) | ||
Object Storage | Swift | 对象存储,适用于“一次写入、多次读取” |
Block Storage | Cinder | 块存储,提供存储资源池 |
Share | Services (共享服务) | |
Identify Service | Keystone | 认证管理 |
Image Service | Glance | 提供虚拟镜像的注册和存储管理 |
Telemetry | Ceilometer | 提供监控和数据采集、计量服务 |
Higher-level Services (高层服务) | ||
Orchestration | Heat | 自动化部署的组件 |
Database Service | Trove | 提供数据库应用服务 |
解释:这里面所有的服务都是围绕着VM
进行提供服务的,虚拟机需要什么资源,我们就提供什么资源
我们可以将服务分为两大类
,一个是服务的提供者
,一个是服务的消费者
。提供者是我可以提供某个服务,消费者是我可以用到这个服务。
openstack默认是没有创建
虚拟机的功能,是通过调用KVM
来创建虚拟机还可以调用esxi
来创建虚拟机,总之openstack没有创建虚拟机的功能都是通过调用其他服务来进行操作。openstack就是一个框架,它可以调用其他的服务,所以openstack也就是一个管理平台
MySQL
:为各个服务提供数据存储RabbitMq
:为各个服务之间通信提供认证和服务注册Keystone
:为各个服务器之间通讯提供认证和服务注册Glance
:为虚拟机提供镜像管理Nova
:为虚拟机提供计算资源Neutron
:为虚拟机提供网络资源
中文文档:http://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/
提示:这个中文文档是直接翻译过来的,所以会有很多不通顺的地方
特别提示:环境请和我保持一致!!!!!!!!保持一致!保持一致!保持一致!
本次我们安装Openstack M版,M版是在2016-4月发布的
环境
[root@linux-node1 ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [root@linux-node1 ~]# uname -r3.10.0-327.36.2.el7.x86_64[root@linux-node1 ~]# cat /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.56.11 linux-node1.abcdocker.com192.168.56.12 linux-node2.abcdocker.com安装时间同步
[root@linux-node1 ~]# yum install ntpdate -y[root@linux-node1 ~]# ntpdate time1.aliyun.com[root@linux-node1 ~]# timedatectl set-timezone Asia/Shanghai #设置时区另一种设置时区方法[root@linux-node1 ~]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime提示: 生产环境中必须保证openstack节点时间同步,如果时间不同步是无法创建虚拟机的
基础软件包需要在所有的Openstack
节点上进行安装,包括控制
节点和计算
节点
1、安装EPEL仓库
2、安装Openstack仓库
[root@linux-node1 ~]# yum install -y centos-release-openstack-mitaka#安装完成后会在/etc/yum.repos.d/下生成CentOS-OpenStack-mitaka.repo3、安装Openstack客户端
[root@linux-node1 ~]# yum install -y python-openstackclient提示:会把openstack常用的客户端都进行安装4、安装openstack SELinux管理包
yum install -y openstack-selinux如果我们没有进行关闭selinux
openstack-selinux
就会自动帮我们设置
RabbitMq在openstack几大用处
1.做服务之间相互通讯的工具
2.信息同步(异步执行)
如果没有RabbitMq
服务之间将无法进行通讯
提示:如果是生产环境,数据库是需要做备份的,否则数据库一挂数据将会丢失,openstack也将无法进行提供服务
启动后我们需要进行检查
为了保证数据库服务的安全性,运行mysql_secure_installation
脚本。特别需要说明的是,为数据库的root用户设置一个适当的密码。
数据库安装完成后我们需要给我们后面所要用到的服务创建用户并进行授权
创建认证服务的数据库并进行授权
[root@linux-node1 ~]# mysql -uroot -p123456创建keystone数据库create database keystone;grant all on keystone.* to 'keystone'@'localhost' identified by 'keystone';grant all on keystone.* to 'keystone'@'%' identified by 'keystone';创建镜像数据库并进行授权
创建glance数据库create database glance;grant all on glance.* to 'glance'@'%' identified by 'glance';grant all on glance.* to 'glance'@'localhost' identified by 'glance';创建虚拟化数据库并进行授权
创建nova数据库create database nova;grant all on nova.* to 'nova'@'localhost' identified by 'nova';grant all on nova.* to 'nova'@'%' identified by 'nova';因为Nova有2个项目,所以我们要创建2个数据库
创建nova-api数据库
提示:nova_api是新版本才有
创建网络资源管理数据库
create database neutron;grant all on neutron.* to 'neutron'@'%' identified by 'neutron';grant all on neutron.* to 'neutron'@'localhost' identified by 'neutron';刷新
flush privileges;安装消息队列rabbitmq
启动消息队列服务并将其配置为随系统启动:
[root@linux-node1 ~]# systemctl enable rabbitmq-server.service[root@linux-node1 ~]# systemctl start rabbitmq-server.service因为我们一会要使用openstack
,所以我们在rabbitmq
上创建一个openstack
用户
给openstack
用户读写权限
提示:如果rabbitmq没有启动说明主机名没有解析
开启rabbitmq监控插件rabbitmq
有很多插件,我们可以使用rabbitmq-plugins list
查看可用插件rabbitmq_management
插件提供一个web界面,所以我们要将它开启
访问路径:http://ip:15672
默认Username:guest
默认Password:guest
示例图
提示:这里不能使用openstack
用户进行登陆,因为我们如果想使用openstack用户进行登陆还需要在web
页面进行授权
现在我们就进行rabbitmq
的管理界面了
rabbitmq默认有一个http
的api
,我们如果想监控 可以使用http的api进行监控。里面基本上想监控的东西都有,可以通过脚本来获取通过url
来判断等。
zabbix相关文章:http://www.abcdocker.com/zabbix
基础介绍完!
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。