技术

Centos7.5下部署私有Rainbond(Docker容器管理工具)

July 26, 2018

Rainbond是什么
Rainbond(云帮)是由 北京好雨科技有限公司 自主研发的一款以应用为中心的开源PaaS。
Rainbond深度整合了基于Kubernetes的容器管理、Service Mesh微服务架构最佳实践、多类型CI/CD应用构建与交付、多数据中心资源管理等技术,为用户提供云原生应用全生命周期解决方案,构建应用与基础设施、应用与应用、基础设施与基础设施之间互联互通的生态体系,满足支撑业务高速发展所需的敏捷开发、高效运维和精益管理需求。

官方文档:http://www.rainbond.com/docs/stable/getting-started/before-installation.html

目前Rainbond版本已经更新到5.1.5版本,安装请参考官方文档:https://www.rainbond.com/docs/quick-start/rainbond_install/

本文将部署一个master和一个node服务器,服务器网络配置请务必使用静态!
Rainbond版本:v3.6.1
我这边是demo环境用的是centos7.5(官方推荐centos7.3)
demo-master1配置:16核,8G内存,60G硬盘(因为母鸡没空间了)

1.安装前的准备

yum update
yum makecache
#htop安装
yum install epel-release -y
yum install htop -y
yum install git -y
#centos7.5最小版自带curl,所有不用安装

2.开始安装

# git clone
git clone --depth 1 -b v3.6 https://github.com/goodrain/rainbond-install.git
# 或者下载压缩包
yum install wget -y
wget https://github.com/goodrain/rainbond-install/archive/v3.6.zip
unzip v3.6.zip
# 克隆或解压后,切换到云帮安装目录
cd rainbond-install*
# 执行安装命令
./setup.sh install
# 完成安装后可通过访问管理控制台,默认第一个注册用户为平台管理员
http://<your ip>:7070





- 阅读剩余部分 -

技术

mysql5.6安装与主从配置

July 19, 2018

安装mysql5.6
yum -y update
yum install wget -y
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server -y
chgrp -R mysql /var/lib/mysql
chmod -R 770 /var/lib/mysql
service mysql restart

主服务器配置
关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
编辑vi /etc/my.cnf,添加下面
[mysqld]
server-id = 1
log_bin = master-bin
log_bin_index = master-bin.index
binlog_do_db = my_data #需要做同步的数据库名称
binlog_ignore_db = mysql

mysql -u root
mysql>grant replication slave on . to '用户名' @'10.140.10.%' identified by '密码';
service mysql restart
mysql> show master status;

从服务器配置
关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
编辑vi /etc/my.cnf,添加下面
[mysqld]
server-id = 2
relay-log = slave-relay-bin
relay-log-index = slave-relay-bin.index

service mysql restart
mysql -u root
mysql>change master to master_host='10.140.10.101',master_port=3306,master_user='用户名',master_password='密码',master_log_file='master-bin.000001',master_log_pos=120;
mysql>start slave;
mysql>show slave statusG
mysql.png

技术

Docker部署MongoDB并配置副本集(复制集)

July 12, 2018

拉取镜像

docker pull mongo:3.6.6

创建网络

docker network create mongo-cluster
docker network ls 

t1.png

创建3个容器

docker run -d -p 30001:27017 --name mongo1 --net 网络ID  mongo:3.6.6 mongod --replSet mongo-repliset
docker run -d -p 30002:27017 --name mongo2 --net 网络ID  mongo:3.6.6 mongod --replSet mongo-repliset
docker run -d -p 30003:27017 --name mongo3 --net 网络ID  mongo:3.6.6 mongod --replSet mongo-repliset

说明:
docker run 从镜像启动一个容器
-p 30001:27017 端口映射,容器内的端口 27017 映射到本机的端口 30001
--name mongo1 给这个容器起个名字 “mongo1”
--net mongo-cluster 把这个容器添加到网络 “mongo-cluster” mongo 要使用的镜像名 mongod
--replSet mongo-repliset 容器启动后要运行的命令,执行 mongod 命令,并通过参数指定这个示例加入名为 “mongo-repliset” 的复制集
t2.png
初始化配置
随意进入一个容器:

docker exec -it mongo1 mongo
>db = (new Mongo('localhost:27017')).getDB('test') 
test
> config = { "_id" : "mongo-repliset", "members" : [ { "_id" : 0, "host" : "外部IP:30001" }, { "_id" : 1, "host" : "外部IP:30002" }, { "_id" : 2, "host" : "外部IP:30003" } ] }
>rs.initiate(config)

tt3.png

代表主:
zhu.png
代表次:
ci.png

注意:默认情况下次节点是没有选举权的,所以如果挂了超过1台那么就不会再有主节点!需要根据下面命令到主节点进行优先级配置

Config=rs.conf()
Config.members[1].priority=10
Rs.reconfig(config)

常用命令:

添加副本集

PRIMARY>rs.add( { host: "ip:port", priority: 10 } )

删除节点

rs.remove(“ip:port”);

修改优先级

PRIMARY> config=rs.conf()
PRIMARY>config.members[2].priority = 10
PRIMARY> rs.reconfig(config)