安装openstack基础服务

1.控制节点安装时间同步服务(chrony)

(1)时间同步大体来说有两种方式:

一种是自己搭建时间同步服务器,各个需要同步时间的节点,与其同步时间

另一种则是使用ntpdate命令直接同步网络中已存在的时间服务器(如阿里云的服务器,地址为ntp.aliyun.com)

这里我是用后者进行时间同步,这样比较方便.如果在企业中主机可以联网的情况下,可以选择与网络时间同步.

[root@controller ~]# ntpdate ntp.aliyun.com

(2)date命令查看同步后的系统时间

 同步前的系统时间
[root@controller ~]# date
Sun Dec 22 11:00:07 CST 2019
[root@controller ~]#
与阿里云时间服务器进行同步
[root@controller ~]# ntpdate ntp.aliyun.com
查看同步后的系统时间
[root@controller ~]# date
Sun Dec 22 19:09:22 CST 2019
写入到系统硬件中
[root@controller ~]# hwclock -w

2.控制节点安装数据库服务(mariadb)

(1)安装基础软件包

自从mysql被oracle后,centos7中默认使用的为mariadb,语法及操作与mysql类似.

[root@controller ~]# yum install mariadb mariadb-server MySQL-python python2-PyMySQL -y

(2)创建openstack数据库配置文件

 [root@controller ~]# vim /etc/my.cnf.d/openstack.cnf
[root@controller ~]# cat /etc/my.cnf.d/openstack.cnf #添加内容如下:
[mysqld]
bind-address = 0.0.0.0
default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
init-connect = 'SET NAMES utf8'
[root@controller ~]#

注释:
#默认存储引擎使用的是innodb
default-storage-engine = innodb
#使用独享表空间模式
innodb_file_per_table = on

(3)启动数据库且设置开机自启动

 [root@controller ~]#systemctl restart mariadb
[root@controller ~]#systemctl status mariadb
[root@controller ~]#systemctl enable mariadb
[root@controller ~]#systemctl list-unit-files |grep -i mariadb

(4)初始化数据库,且重新启动数据库服务

设置mysql中默认root用户的密码. 注意,root用户与lnux中root无任何关系,只是用户名一样.

我这里推荐两种方式设置mysql的密码,具体如下:

设置数据库密码。默认密码为空。此处设置密码为123456。

方法1:

直接使用mysqladmin命令

[root@controller ~]# mysqladmin  -uroot -p password 123456
Enter password: 直接回车即可.123456为需要设置的密码

方法2:

mysql_secure_installation交互式方式设置.

[root@controller ~]#mysql_secure_installation #交互过程中分别为 y y n y y

#重启数据库服务

[root@controller ~]# systemctl restart mariadb

(5)测试密码是否设置成功

 [root@controller ~]# mysql -uroot -p
Enter password: #此处为刚设置的数据库新密码123456
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.01 sec) MariaDB [(none)]> quit
[root@controller ~]#

3.安装消息队列服务(rabbitmq)

概念理解(参考百度百科):
        消息队列( MQ)全称为 Message Queue, 是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。RabbitMQ 是一个在 AMQP 基础上完整的,可复用的企业消息系统。

(1)安装相关服务rabbitmq-server

[root@controller ~]# yum install rabbitmq-server -y

(2)启动rabbitmq服务,且设置开机自启动

[root@controller ~]# systemctl start rabbitmq-server
[root@controller ~]# systemctl enable rabbitmq-server

(3)创建消息队列中openstack账号及密码

 # 添加openstack用户和密码,配置用户权限,配置读,写权限
[root@controller ~]# rabbitmqctl add_user openstack openstack
[root@controller ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
[root@controller ~]# rabbitmqctl set_permissions -p "/" openstack ".*" ".*" ".*"
#为openstack用户设置administrator管理员权限
5.[root@controller ~]#rabbitmqctl set_user_tags openstack administrator

(4)启用rabbitmq_management插件,用来实现 web 管理,重启rabbitmq服务

 查看rabbitmq支持的插件
[root@controller ~]# rabbitmq-plugins list
启动rabbitmq_managemen web管理插件
[root@controller ~]# rabbitmq-plugins enable rabbitmq_management
#重启rabbitmq服务
[root@controller ~]#systemctl restart rabbitmq-server
[root@controller ~]#rabbitmq-plugins list
#查看相关端口是否开启
方法1:
[root@controller ~]# lsof -i:15672
方法2:
[root@controller ~]# netstat -lntpv|grep -i beam
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 6711/beam.smp
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 6711/beam.smp
tcp6 0 0 :::5672 :::* LISTEN 6711/beam.smp
[root@controller ~]#
方法3:
[root@controller ~]# ss -lan|grep -i 567
tcp LISTEN 0 128 *:25672 *:*
tcp LISTEN 0 128 *:15672 *:*
tcp LISTEN 0 128 :::5672 :::*
[root@controller ~]#

(5)浏览器访问rabbitmq web管理平台

使用浏览器访问rabbitmq web管理平台进行测试用户名/密码:guest/guest

4.控制节点安装缓存服务(memcached)

概念理解:

认证服务认证缓存使用Memcached缓存令牌。缓存服务memecached运行在控制节点。

(1)安装memcached软件包

[root@controller ~]# yum install memcached python-memcached -y

(2)修改memcached配置文件

建议在后续任何修改的操作前,每次修改配置文件前先备份再修改
注意:如果没有启用IPv6地址需要删掉::1的地址绑定
[root@controller ~]# vim /etc/sysconfig/memcached
PORT=""
USER="memcached"
MAXCONN=""
CACHESIZE=""
OPTIONS="-l 127.0.0.1,controller"

(3)启动memcached服务且设置开机自启动

[root@controller ~]# systemctl start memcached

[root@controller ~]# systemctl enable memcached

(4)查看服务是否启动

 [root@controller ~]# netstat -lntpv|grep -i memcache
[root@controller ~]# systemctl list-unit-files |grep memcached
memcached.service enabled
[root@controller ~]#

5.控制节点上安装etcd服务(etcd)

概念理解

Etcd服务是新版本中新加入的,用于自动化配置,用于配置共享和服务发现

(1)安装相关软件包etcd

[root@controller ~]# yum install etcd -y

(2)修改etcd配置文件

 该配置文件中,只能写IP地址,不能使用主机名controller来代替IP.
vim /etc/etcd/etcd.conf
-----------------------------------
#[Member]
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_PEER_URLS="http://192.168.20.10:2380"
ETCD_LISTEN_CLIENT_URLS="http://192.168.20.10:2379"
ETCD_NAME="controller" #[Clustering]
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.20.10:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.20.10:2379"
ETCD_INITIAL_CLUSTER="controller=http://192.168.20.10:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"
ETCD_INITIAL_CLUSTER_STATE="new"

(3)启动服务,设置开机启动

 [root@controller ~]# systemctl start etcd
[root@controller ~]#systemctl enable etcd
[root@controller ~]#netstat -lntpv|grep etcd

至此,openstack控制节点所有基础环境及服务准备完毕。开始安装openstack各个组件。

欢迎大家多评论,多提好的建议.正在更新中.还会有docker,python等相关文档出来.

002-官网安装openstack之-安装基础服务的更多相关文章

  1. 001-官网安装openstack之-安装前基础环境准备

    0.安装常用软件包(根据个人习惯安装需要的软件包) [root@localhost ~]# yum -y install wget vim ntp net-tools tree openssh 1.配 ...

  2. redhat7.4安装git(按照官网从源码安装)

    按照官方文档建议使用源码安装 1.为什么不用yum安装 yum安装确实简单,只用一行命令就可以了,但是yum安装的版本太低. //安装前使用info查看git版本信息等 yum info git yu ...

  3. openstack搭建之-基础服务配置(7)

    基础环境准备,所需服务器及说明 172.16.2.51     base.test.com 基础服务节点 172.16.2.52     ctrl.test.com 控制节点 172.16.2.53  ...

  4. 【生活】已经从官网购买iPad,单独购买AppleCare+服务

    1 什么是AppleCare+服务 从苹果官网购买的硬件产品如ipad.iphone和MacBook等,官网承诺的保修期限是一年.AppleCare+是水果公司推出的一种保修服务,最大的特点就是将保修 ...

  5. [官网]mono的官方安装方法

    mono 官方的安装方法 https://www.mono-project.com/download/stable/#download-lin-centos Download Release chan ...

  6. 01慕课网《进击Node.js基础(一)》Node.js安装,创建例子

    版本:偶数位为稳定版本,基数为非稳定版本 - 0.6.x - 0.7.x    - 0.8.x -0.9.x    -0.10.x  -0.11.x 概念:Node.js采用谷歌浏览器的V8引擎,用C ...

  7. metasploit安装,按官网说明

    mkdir -p $HOME/git cd $HOME/git git clone git@github.com:YOUR_USERNAME_FOR_GITHUB/metasploit-framewo ...

  8. Kudu安装(官网推荐的步骤)(installing build Kudu from source)

    不多说,直接上干货! Kudu安装前的建议说明(博主推荐) 这是安装Kudu的另一种方法 Kudu安装(官网推荐的步骤)(installing Kudu using parcels or packag ...

  9. linux下安装redis,按照redis官网安装不成功需要提前安装c++环境(安装成功并可以测试)

    这个安装是一种便捷的安装,没有几句,但是完全按照官网上的来没有安装成功,有前提条件的 打开linux root登录 然后在usr下面建文件夹redis,进入 在该文件加下,直接按照官网的指导进行安装即 ...

随机推荐

  1. LeetCode 921. 使括号有效的最少添加(Minimum Add to Make Parentheses Valid) 48

    921. 使括号有效的最少添加 921. Minimum Add to Make Parentheses Valid 题目描述 给定一个由 '(' 和 ')' 括号组成的字符串 S,我们需要添加最少的 ...

  2. [Linux] - Manjaro ARM 系统配置(更新镜像源,安装 Docker 和 Dotnet Core)

    硬件:Raspberry Pi 4B系统:Manjaro-ARM-xfce-rpi4-19.08网址:https://manjaro.org/ Issue系统启动后,中文字符显示为小方格乱码 解决:安 ...

  3. Java多线程编程(4)--线程同步机制

    一.锁 1.锁的概念   线程安全问题的产生是因为多个线程并发访问共享数据造成的,如果能将多个线程对共享数据的并发访问改为串行访问,即一个共享数据同一时刻只能被一个线程访问,就可以避免线程安全问题.锁 ...

  4. Go基础编程实践(一)—— 操作字符串

    修剪空格 strings包中的TrimSpace函数用于去掉字符串首尾的空格. package main import ( "fmt" "strings" ) ...

  5. Linux下使用strip如何对库和可执行文件进行裁减

    如果生成的可执行文件或库比较大,这时候就可以使用strip命令进行裁减,在嵌入式开发中,如果使用的交叉编译工具是arm-linux,则命令 是arm-linux-strip,如果是arm-uclibc ...

  6. Netty源码分析之NioEventLoop(三)—NioEventLoop的执行

    前面两篇文章Netty源码分析之NioEventLoop(一)—NioEventLoop的创建与Netty源码分析之NioEventLoop(二)—NioEventLoop的启动中我们对NioEven ...

  7. Visual Studio 使用 Parallel Builds Monitor 插件迅速找出编译速度慢的瓶颈,优化编译速度

    原文:Visual Studio 使用 Parallel Builds Monitor 插件迅速找出编译速度慢的瓶颈,优化编译速度 嫌项目编译太慢?不一定是 Visual Studio 的问题,有可能 ...

  8. Ambari深入学习(III)-开源使用及其改进思考

    Ambari采用的不是一个新的思想和架构,也不是完成了软件的新的革命,而是充分利用了一些已有的优秀开源软件,巧妙地把它们结合起来,使其在分布式环境中做到了集群式服务管理能力.监控能力.展示能力.这些优 ...

  9. .Net MVC如何渲染带有网页标签的字符串

    有时候我们在解析一段文字时,可能文字中会包含网页上的标签,如div.p等等.那么如果将这种文字渲染成对应的标签效果呢?如图,最近博主就拿到了这么一段字符串(如图) 由于中间带有很多特殊字符,用Html ...

  10. Angular—入门环境,项目创建,导入项目

    1.安装 nodejs,npm nodejs 下载地址: https://nodejs.org/en/download/