技术

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)
技术

Proxmox Ceph Install & Nginx proxy store

June 1, 2018

最新版本的proxmox5.2.1还不支持GUI界面安装ceph,不过已经支持集群的添加了。
安装ceph前需要创建集群和添加集群

然后到终端输入
pveceph install 然后2个tab键(
注:每个节点都需要安装ceph
然后配置ceph的网络
pveceph init –network x.x.x.x
然后创建监控
pveceph createmon
然后接着我建议去GUI界面去创建OSD和pool方便些!

如果有大量服务器需要安装ceph,因为源在国外嘛...
所以这里我建议做一个nginx store缓存下,具体配置如下。
配置完毕后去设置server的hosts文件对download.proxmox.com 进行重定向

Nginx配置

location / { 
root /home/proxmox/; 
proxy_store on; 
proxy_store_access user:rw group:rw all:rw; 
proxy_temp_path /home/proxmox/; 
if ( !-e $request_filename) { 
proxy_pass http://download.proxmox.com; 
} 
}
闲话

改善橘子的速度(非hosts)

February 2, 2018

1.关闭橘子
2.在橘子安装目录找到EAcore.ini文件,进行编辑放入以下代码:
[connection]
EnvironmentName=production
[Feature]
CdnOverride=akamai

3.然后保存开启橘子就有很快的速度了