Linux运维--14.Kolla部署OpenStack使用external MariaDB Galera Cluster
使用haproxy+keepalived实现Mariadb负载均衡

controller2: 10.100.2.52 haproxy+keepalived
controller3: 10.100.2.53 haporxy+keepalived
vip:10.100.2.99
network1: 10.100.2.61 mariadb-galera-1
network2: 10.100.2.62 mariadb-galera-2
compute1: 10.100.2.71 mariadb-galera-3
controller2:
yum install -y haproxy keepalived
vim /etc/keepalived/keepalived.conf
global_defs {
router_id controller2
}
vrrp_script chk_haproxy {
script "/etc/keepalived/chk_haproxy.sh"
interval 1
weight 2
}
vrrp_instance VI_1 {
state SLAVE
interface ens161
virtual_router_id 201
priority 99
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_haproxy
}
virtual_ipaddress {
10.100.2.99/24
}
track_interface {
ens161
}
}
controller3:
router_id controller3
state MASTER
priority 99
vim /etc/keepalived/chk_haproxy.sh
#!/bin/bah
chkha=`ps -C haproxy --no-header |wc -l`
if [ $chkha -eq 0 ];then
systemctl stop keepalived
fi
chmod +x /etc/keepalived/chk_haproxy.sh
vim /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
spread-checks 3
tune.bufsize 32768
tune.maxrewrite 1024
tune.ssl.default-dh-param 2048
defaults
log global
log 127.0.0.1 local3
mode http
option httplog
option dontlognull
retries 10
option redispatch
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
listen mariadb
bind *:3306
mode tcp
balance roundrobin
server network1 10.100.2.61:3306 weight 5
server network2 10.100.2.62:3306 weight 5
server compute1 10.100.2.71:3306 weight 5
listen stats
bind *:1080
mode http
option httplog
maxconn 10
stats enable
stats refresh 30s
stats uri /stats
stats realm MaCluster\ Haproxy
stats auth admin:admin
stats hide-version
stats admin if TRUE
systemct start haproxy keepalived.service
systemctl enable haproxy keepalived.service
kolla对接exteral Maraidb Galera Cluster
参考搭建galera Cluster 文档
```bash
1. Enabling External MariaDB support
vim /etc/kolla/globals.yml
enable_mariadb: "no"
vim multinode
[mariadb]
10.100.2.99
vim e/tc/kolla/globals.yml
database_address: "10.100.2.99"
2.使用预设数据库/用户 #
vim /etc/kolla/globals.yml
use_preconfigured_databases: "yes"
keystone_database_user: "keystone" keystone
glance_database_user: "glance" glance
nova_database_user: "nova" nova nova_cell0
nova_api_database_user: "nova" nova_api
neutron_database_user: "neutron" #neutron
cinder_database_user: "cinder" #cinder
manila_database_user: "manila" #manila
panko_database_user: "panko" # panko
trove_database_user: "trove" # trove
aodh_database_user: "aodh" # aodh
gnocchi_database_user: "gnocchi" # gnocchi
octavia_database_user: "octavia" # octavia
rally_database_user: "rally" #rally
palcement_database_user: "placement" # placement
barbican_database_user: "barbican" # barbican
ironic_database_user: "ironic" # ironic-api
ironic_inspector_database_user: "ironic" # ironic-inspector
heate_database_user: "heat" # heat
grafana_database_user: "grafana"
mysql -uroot -popenstack
# keystone
MariaDB [(none)]> CREATE DATABASE keystone;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
IDENTIFIED BY 'openstack';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
IDENTIFIED BY 'openstack';
sed -i -r -e 's/([a-z_]{0,}database_password:+)(.*)$/\1 openstack/gi' /etc/kolla/passwords.yml
参考文档:
https://docs.openstack.org/kolla-ansible/stein/reference/databases/external-mariadb-guide.html
https://www.cloudandheat.com/blog/tutorial-part-2-highly-available-mariadb-galera-cluster-with-floating-ip/
https://www.cnblogs.com/fawaikuangtu123/p/10915229.html
Linux运维--14.Kolla部署OpenStack使用external MariaDB Galera Cluster的更多相关文章
- Linux运维---16. Kolla部署OpenStack外接rabbit集群
# 前提时rabbit集群已经搭建完成 vim /etc/kolla/globals.yml enable_rabbitmq: "no" rpc_transport_url: &q ...
- Linux运维--12.手动部署Rabbit集群
1.安装rabbit组件 10.100.2.51 controller1 10.100.2.52 controller2 10.100.2.53 controller3 #每个节点 yum insta ...
- Linux运维--11.手动部署Galera Cluster
1.搭建galera集群 yum install epel-release yum install centos-release-openstack-stein #1.1 安装mariadb yum ...
- 从零起步做到Linux运维经理, 你必须管好的23个细节
“不想成为将军的士兵,不是好士兵”-拿破仑 如何成为运维经理? 一般来说,运维经理大概有两种出身:一种是从底层最基础的维护做起,通过出色的维护工作,让公司领导对这个人非常认可,同时对Linux运维工作 ...
- 从零起步做到Linux运维经理,你必须管好的23个细节
不想成为将军的士兵,不是好士兵-拿破仑 如何成为运维经理?成为运维经理需要什么样的能力?我想很多运维工程师都会有这样的思考和问题. 如何成为运维经理.一般来说,运维经理大概有两种出身,一种是从底层最基 ...
- Linux 运维入门到跑路书单推荐
一.基础入门 <鸟哥的Linux私房菜基础学习篇>:最具知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>,全面而详细地介绍了Linux操作系统. https://b ...
- Linux运维入门到高级全套常用要点
Linux运维入门到高级全套常用要点 目 录 1. Linux 入门篇................................................................. ...
- Linux运维工程师面试
一.Linux操作系统知识 1.常见的Linux发行版本都有什么?你最擅长哪一个?它的官网网站是什么?说明你擅长哪一块? 2.Linux开机启动流程详细步骤是什么?系统安装完,忘记密码如何破解? ...
- Linux运维企业架构实战系列
Linux运维企业架构项目实战系列 项目实战1-LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2-LVS.nginx实现负载均衡系列 2.1 项目实战2.1-实现基于LVS负载均衡集 ...
随机推荐
- nginx 正向代理与反向代理
一.介绍 反向代理:让Internet上的用户可以访问局域网内的资源,中间设置一个代理服务器,如下所示,红色圈是指局域网内的站点(myweb站点是我们的站点,例如iis).箭头不能反过来 正向代理:客 ...
- Electron – 基础学习(3): 项目打包成exe桌面应用 之electron-builder
前次用 electron-packager 打包成功,这次改用 electron-builder 打包,然后根据项目中实际需要进行选择使用. 第一步:全局安装 electron-builder,便于系 ...
- leaflet结合turf.js实现多边形分割(附源码下载)
前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet ...
- Android布局管理器-使用TableLayout表格布局管理器实现简单的用户登录页面
场景 Android布局管理器-使用FrameLayout帧布局管理器显示层叠的正方形以及前景照片: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article ...
- 检测APK是否存在Janus漏洞步骤
Janus说明 Android APP仅使用V1签名,可能存在Janus漏洞(CVE-2017-13156),Janus漏洞(CVE-2017-13156)允许攻击者在不改变原签名的情况下任意修改 ...
- 正则表达式中的exec()方法
推荐该博主的内容链接: https://blog.csdn.net/ddwddw4/article/details/84658398?ops_request_misc=%7B%22request%5F ...
- 【redisson】分布式锁与数据库事务
场景: 用户消耗积分兑换商品. user_point(用户积分): id point 1 2000 point_item(积分商品): id point num 101 200 10 传统的contr ...
- WebStorm 2019.3.1 永久破解
PS:动手能力强的来,手残的去淘宝买吧,大概15块钱1年.建议看完后在动手,有一个全局观,浪费不了多少时间 一. 下载破解补丁文件 链接:https://pan.baidu.com/s/16-rPPH ...
- Python 编程入门(4):变量与赋值
以下所有例子都基于最新版本的 Python,为了便于消化,每一篇都尽量短小精悍,希望你能尽力去掌握 Python 编程的「概念」,可以的话去动手试一下这些例子(就算目前还没完全搞懂),加深理解. 经过 ...
- Java-利用位数猜年龄
题目: 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学.他曾在1935~1936年应邀来中国清华大学讲学.一次,他参加某个重要会议,年轻的脸孔引人注目.于是有人询问他的年龄,他回答说:“ ...