002-官网安装openstack之-安装基础服务
安装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之-安装基础服务的更多相关文章
- 001-官网安装openstack之-安装前基础环境准备
0.安装常用软件包(根据个人习惯安装需要的软件包) [root@localhost ~]# yum -y install wget vim ntp net-tools tree openssh 1.配 ...
- redhat7.4安装git(按照官网从源码安装)
按照官方文档建议使用源码安装 1.为什么不用yum安装 yum安装确实简单,只用一行命令就可以了,但是yum安装的版本太低. //安装前使用info查看git版本信息等 yum info git yu ...
- openstack搭建之-基础服务配置(7)
基础环境准备,所需服务器及说明 172.16.2.51 base.test.com 基础服务节点 172.16.2.52 ctrl.test.com 控制节点 172.16.2.53 ...
- 【生活】已经从官网购买iPad,单独购买AppleCare+服务
1 什么是AppleCare+服务 从苹果官网购买的硬件产品如ipad.iphone和MacBook等,官网承诺的保修期限是一年.AppleCare+是水果公司推出的一种保修服务,最大的特点就是将保修 ...
- [官网]mono的官方安装方法
mono 官方的安装方法 https://www.mono-project.com/download/stable/#download-lin-centos Download Release chan ...
- 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 ...
- metasploit安装,按官网说明
mkdir -p $HOME/git cd $HOME/git git clone git@github.com:YOUR_USERNAME_FOR_GITHUB/metasploit-framewo ...
- Kudu安装(官网推荐的步骤)(installing build Kudu from source)
不多说,直接上干货! Kudu安装前的建议说明(博主推荐) 这是安装Kudu的另一种方法 Kudu安装(官网推荐的步骤)(installing Kudu using parcels or packag ...
- linux下安装redis,按照redis官网安装不成功需要提前安装c++环境(安装成功并可以测试)
这个安装是一种便捷的安装,没有几句,但是完全按照官网上的来没有安装成功,有前提条件的 打开linux root登录 然后在usr下面建文件夹redis,进入 在该文件加下,直接按照官网的指导进行安装即 ...
随机推荐
- LeetCode 921. 使括号有效的最少添加(Minimum Add to Make Parentheses Valid) 48
921. 使括号有效的最少添加 921. Minimum Add to Make Parentheses Valid 题目描述 给定一个由 '(' 和 ')' 括号组成的字符串 S,我们需要添加最少的 ...
- [Linux] - Manjaro ARM 系统配置(更新镜像源,安装 Docker 和 Dotnet Core)
硬件:Raspberry Pi 4B系统:Manjaro-ARM-xfce-rpi4-19.08网址:https://manjaro.org/ Issue系统启动后,中文字符显示为小方格乱码 解决:安 ...
- Java多线程编程(4)--线程同步机制
一.锁 1.锁的概念 线程安全问题的产生是因为多个线程并发访问共享数据造成的,如果能将多个线程对共享数据的并发访问改为串行访问,即一个共享数据同一时刻只能被一个线程访问,就可以避免线程安全问题.锁 ...
- Go基础编程实践(一)—— 操作字符串
修剪空格 strings包中的TrimSpace函数用于去掉字符串首尾的空格. package main import ( "fmt" "strings" ) ...
- Linux下使用strip如何对库和可执行文件进行裁减
如果生成的可执行文件或库比较大,这时候就可以使用strip命令进行裁减,在嵌入式开发中,如果使用的交叉编译工具是arm-linux,则命令 是arm-linux-strip,如果是arm-uclibc ...
- Netty源码分析之NioEventLoop(三)—NioEventLoop的执行
前面两篇文章Netty源码分析之NioEventLoop(一)—NioEventLoop的创建与Netty源码分析之NioEventLoop(二)—NioEventLoop的启动中我们对NioEven ...
- Visual Studio 使用 Parallel Builds Monitor 插件迅速找出编译速度慢的瓶颈,优化编译速度
原文:Visual Studio 使用 Parallel Builds Monitor 插件迅速找出编译速度慢的瓶颈,优化编译速度 嫌项目编译太慢?不一定是 Visual Studio 的问题,有可能 ...
- Ambari深入学习(III)-开源使用及其改进思考
Ambari采用的不是一个新的思想和架构,也不是完成了软件的新的革命,而是充分利用了一些已有的优秀开源软件,巧妙地把它们结合起来,使其在分布式环境中做到了集群式服务管理能力.监控能力.展示能力.这些优 ...
- .Net MVC如何渲染带有网页标签的字符串
有时候我们在解析一段文字时,可能文字中会包含网页上的标签,如div.p等等.那么如果将这种文字渲染成对应的标签效果呢?如图,最近博主就拿到了这么一段字符串(如图) 由于中间带有很多特殊字符,用Html ...
- Angular—入门环境,项目创建,导入项目
1.安装 nodejs,npm nodejs 下载地址: https://nodejs.org/en/download/