Ubuntu部署Pinot集群(docker版)

1、安装docker(分步执行,有些命令需要确认)

      apt-get remove docker docker-engine docker.io containerd runcapt-get updateapt-get install     ca-certificates     curl     gnupg     lsb-releasemkdir -p /etc/apt/keyringscurl -fsSL  | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgecho   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg]  \\$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullapt-get updatechmod a+r /etc/apt/keyrings/docker.gpgapt-get updateapt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugindocker run hello-world

2、创建网桥(选择执行)(四台主机分别执行将子网的网段分开)

docker network create --driver=bridge --subnet=172.100.0.0/16 pinot-cluster
docker network create --driver=bridge --subnet=172.101.0.0/16 pinot-cluster
docker network create --driver=bridge --subnet=172.102.0.0/16 pinot-cluster
docker network create --driver=bridge --subnet=172.103.0.0/16 pinot-cluster

3、启动zookeeper

docker run \--network=pinot-cluster \--name pinot-zookeeper \--restart always \-p 2181:2181 \-p 2888:2888 \-p 3888:3888 \-v /data/zookeeper/data:/data \-v /data/zookeeper/conf:/conf \-v /data/zookeeper/logs:/datalog \-d zookeeper:3.5.6

4、拉取pinot镜像

docker pull apachepinot/pinot:0.11.0

5、启动Pinot Controller(跟zookeeper同一台宿主机时)

docker run -ti \-v /data/pinot/data:/opt/pinot/data \-v /data/pinot/logs:/opt/pinot/logs \--network=pinot-cluster \--name pinot-controller \--restart always \-p 8096:8096 \-p 8097:8097 \-p 8098:8098 \-p 8099:8099 \-p 9000:9000 \-e JAVA_OPTS="-Dplugins.dir=/opt/pinot/plugins -Xms8G -Xmx8G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-controller.log" \-d apachepinot/pinot:0.11.0 StartController \-dataDir /opt/pinot/data/PinotController \-controllerHost xxx.xxx.xxx.xxx \-zkAddress pinot-zookeeper:2181

 其中:xxx.xxx.xxx.xxx是当前主机与其他三台主机之间的内网地址

6、启动Pinot Broker(跟zookeeper不在同一台宿主机)

docker run -ti \-v /data/pinot/logs:/opt/pinot/logs \--network=pinot-cluster \--name pinot-broker \--restart always \-p 8096:8096 \-p 8097:8097 \-p 8098:8098 \-p 8099:8099 \-p 9000:9000 \-e JAVA_OPTS="-Dplugins.dir=/opt/pinot/plugins -Xms12G -Xmx12G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-broker.log" \-d apachepinot/pinot:0.11.0 StartBroker \-brokerHost xxx.xxx.xxx.xxx \-zkAddress yyy.yyy.yyy.yyy:2181

其中:xxx.xxx.xxx.xxx是当前主机与其他三台主机之间的内网地址 

           yyy.yyy.yyy.yyy 是zookeeper所在主机的内网地址

7、启动server(跟zookeeper不在同一台宿主机)

(1)server1

docker run  -ti \-v /data/pinot/data:/opt/pinot/data \-v /data/pinot/logs:/opt/pinot/logs \--network=pinot-cluster \--name pinot-server \--restart always \-p 8096:8096 \-p 8097:8097 \-p 8098:8098 \-p 8099:8099 \-p 9000:9000 \-e JAVA_OPTS="-Dplugins.dir=/opt/pinot/plugins -Xms28G -Xmx28G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-server.log" \-d apachepinot/pinot:0.11.0 StartServer \-serverHost xxx.xxx.xxx.xxx \-serverPort 8098 \-dataDir /opt/pinot/data/pinotServerData \-segmentDir /opt/pinot/data/pinotSegments \-zkAddress yyy.yyy.yyy.yyy:2181

其中:xxx.xxx.xxx.xxx是当前主机与其他三台主机之间的内网地址 

           yyy.yyy.yyy.yyy 是zookeeper所在主机的内网地址

 

(2)server2

docker run  -ti \-v /data/pinot/data:/opt/pinot/data \-v /data/pinot/logs:/opt/pinot/logs \--network=pinot-cluster \--name pinot-server \--restart always \-p 8096:8096 \-p 8097:8097 \-p 8098:8098 \-p 8099:8099 \-p 9000:9000 \-e JAVA_OPTS="-Dplugins.dir=/opt/pinot/plugins -Xms28G -Xmx28G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-server.log" \-d apachepinot/pinot:0.11.0 StartServer \-serverHost xxx.xxx.xxx.xxx \-serverPort 8098 \-dataDir /opt/pinot/data/pinotServerData \-segmentDir /opt/pinot/data/pinotSegments \-zkAddress yyy.yyy.yyy.yyy:2181

其中:xxx.xxx.xxx.xxx是当前主机与其他三台主机之间的内网地址 

           yyy.yyy.yyy.yyy 是zookeeper所在主机的内网地址

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部