OpenStack基础环境 [一]

OpenStack基础环境 [一]node

OpenStack基础环境 [一]

openstack
时间:2016年11月22日python

openstack介绍

 openstack是一个云平台管理的项目,它不是一个软件。也就是说咱们可使用openstack来管理咱们一个数据中心大量资源池。它里面包含了不少子项目mysql

p_w_picpath_1b25l8lci9tvktkei712s8un59.png-46.2kB

openstack包含三大项:计算 网络 存储
  openstack主要目标是来简化资源的管理和分配,把计算 网络 存储。三大项虚拟成三大资源池,例如须要计算资源我这里能够提供,须要网络资源这里也能够提供以及存储资源的需求,对外提供api,经过api进行交互
  openstack的设计基本上是按照亚马逊进行设置的,咱们能够将openstack理解为开源版本的aws。由于它不少地方都参考亚马逊进行操做的,并且openstack的不少api跟亚马逊是相通的。
  openstack火起来的缘由首先是apache旗下的开源软件,第二它是由python进行编写
(由于python比较简单,深受技术人员的喜欢)linux

openstack官方网站:http://www.openstack.orgweb

openstack版本介绍

p_w_picpath_1b25lemg8s41aji1c30vkivq2m.png-143.1kB
 openstack版本是每6个月发布一次,每次版本的顺序按照A-Z进行排序。
那么咱们应该如何选择版本呢?
  咱们选择版本的时候,除了新版本的那些功能不得不用,那咱们能够选择新的版本。其实咱们能够选择稍微落后的一个版本。上述图不够准确,如今已经达到N版。国内openstack是从E班开始火的。由于E版本当时是比较完善的,国内openstack最火的时候是在G版的时候。如今国内不管是传统行业仍是互联网行业都在使用openstacksql

openstack架构

p_w_picpath_1b25lh9fd4bs1cb6q8g1v0r67f13.png-40.3kB

服务名称 项目名称 描述
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 提供数据库应用服务

p_w_picpath_1b25lidia998o14cdh1mk0doo9.png-112.2kB

解释:这里面全部的服务都是围绕着VM进行提供服务的,虚拟机须要什么资源,咱们就提供什么资源docker

  咱们能够将服务分为两大类,一个是服务的提供者,一个是服务的消费者。提供者是我能够提供某个服务,消费者是我能够用到这个服务。
  openstack默认是没有建立虚拟机的功能,是经过调用KVM来建立虚拟机还能够调用esxi来建立虚拟机,总之openstack没有建立虚拟机的功能都是经过调用其余服务来进行操做。openstack就是一个框架,它能够调用其余的服务,因此openstack也就是一个管理平台数据库

Openstack服务介绍

MySQL:为各个服务提供数据存储
RabbitMq:为各个服务之间通讯提供认证和服务注册
Keystone:为各个服务器之间通信提供认证和服务注册
Glance:为虚拟机提供镜像管理
Nova:为虚拟机提供计算资源
Neutron:为虚拟机提供网络资源
apache

Openstack环境准备-MySQL、RabbirMQ

中文文档:http://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/
提示:这个中文文档是直接翻译过来的,因此会有不少不通顺的地方vim

特别提示:环境请和我保持一致!!!!!!!!保持一致!保持一致!保持一致!
本次咱们安装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基础软件包安装

基础软件包须要在全部的Openstack节点上进行安装,包括控制节点和计算节点
一、安装EPEL仓库

[root@linux-node1 ~]# rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm

二、安装Openstack仓库

[root@linux-node1 ~]# yum install -y centos-release-openstack-mitaka#安装完成后会在/etc/yum.repos.d/下生成CentOS-OpenStack-mitaka.repo

三、安装Openstack客户端

[root@linux-node1 ~]#  yum install -y python-openstackclient提示:会把openstack经常使用的客户端都进行安装

四、安装openstack SELinux管理包

yum install -y openstack-selinux

若是咱们没有进行关闭selinux openstack-selinux就会自动帮咱们设置

p_w_picpath_1b25m5tpi1pm1h6bk5l1191k32m.png-94.4kB

RabbitMq在openstack几大用处
1.作服务之间相互通信的工具
2.信息同步(异步执行)
若是没有RabbitMq服务之间将没法进行通信

提示:若是是生产环境,数据库是须要作备份的,不然数据库一挂数据将会丢失,openstack也将没法进行提供服务

安装数据库

[root@linux-node1 ~]# yum install -y mariadb mariadb-server python2-PyMySQLcentos7 默认安装mysql 会在/etc/my.cnf里面includedir /etc/my.cnf.d/ 因此咱们须要将配置文件放在这个目录下就能够生效[root@linux-node1 ~]# cd /etc/my.cnf.d/[root@linux-node1 my.cnf.d]# vim openstack.cnf[mysqld]bind-address = 192.168.56.11   #监听的IP地址(也能够写0.0.0.0)default-storage-engine = innodb  #默认存储引擎[innodb]innodb_file_per_table       # 使用独享表空间max_connections = 4096          #最大链接数是4096 (默认是1024)collation-server = utf8_general_ci  #数据库默认校对规则character-set-server = utf8 #默认字符集

启动数据库

[root@linux-node1 ~]# systemctl start mariadb[root@linux-node1 ~]# systemctl enable mariadbCreated symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

启动后咱们须要进行检查

为了保证数据库服务的安全性,运行mysql_secure_installation脚本。特别须要说明的是,为数据库的root用户设置一个适当的密码。

[root@linux-node1 ~]# mysql_secure_installation#它会帮咱们删除测试数据库等

数据库安装完成后咱们须要给咱们后面所要用到的服务建立用户并进行受权

建立认证服务的数据库并进行受权

[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数据库

create database nova_api;rant all on nova_api.* to 'nova_api'@'localhost' identified by 'nova_api';grant all on nova_api.* to 'nova_api'@'%' identified by '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 ~]# yum install rabbitmq-server -y消息队列的端口是5672

启动消息队列服务并将其配置为随系统启动:

[root@linux-node1 ~]# systemctl enable rabbitmq-server.service[root@linux-node1 ~]# systemctl start rabbitmq-server.service

由于咱们一会要使用openstack,因此咱们在rabbitmq上建立一个openstack用户

[root@linux-node1 ~]# rabbitmqctl add_user openstack openstack[root@linux-node1 ~]# rabbitmqctl add_user用户 密码

openstack用户读写权限

[root@linux-node1 ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*".*分别表明配置、写入、读取

提示:若是rabbitmq没有启动说明主机名没有解析

开启rabbitmq监控插件
rabbitmq有不少插件,咱们可使用rabbitmq-plugins list查看可用插件
rabbitmq_management插件提供一个web界面,因此咱们要将它开启

[root@linux-node1 ~]# rabbitmq-plugins enable rabbitmq_managementrabbitmq启动以后会监听15672

p_w_picpath_1b25mknrh17121mn3147c2d02kv13.png-65.3kB

访问路径:http://ip:15672
默认Username:guest
默认Password:guest

示例图
p_w_picpath_1b25mlkl0bc1mae1g094jfuk61g.png-20kB
提示:这里不能使用openstack用户进行登录,由于咱们若是想使用openstack用户进行登录还须要在web页面进行受权

如今咱们就进行rabbitmq的管理界面了
p_w_picpath_1b25mmtt24ma11bh1216jrn6o51t.png-32.9kB
rabbitmq默认有一个httpapi,咱们若是想监控 可使用http的api进行监控。里面基本上想监控的东西都有,能够经过脚原本获取经过url来判断等。
p_w_picpath_1b25mnkri15572drua0171d12lh2a.png-24.7kB

zabbix相关文章:http://www.abcdocker.com/zabbix

基础介绍完!

相关文章
相关标签/搜索