接下来就进入正题,可能描述性文字偏多,也有一些踩坑总结
搭建ZK集群
一、购买机器(ZK)
k8s不可以选择跨Region(地区)的机器,但是支持跨可用区,为了稳定可靠,每个可用区都要有机器
先上购买ECS链接
ECS基础配置:
付费模式- 包年包月
地域- 华北3张家口-可用区ABC
实例规格- 自行决定
镜像- 自行决定
存储- 系统盘- 自行决定
数据盘-(数据量不是很大的可以不买数据盘,买大一点的系统盘)
快照服务- 没有选择
没有选择共享nas(这里没有买,但要实现云原生持久化存储还是需要的)
网络和安全组:
- 网络- 选择当前可用区的专有网络和交换机
- 公网Ip- 无选择
- 安全组- 这里都可以看介绍自行选择
- 弹性网卡- 没有选择
系统配置
登录凭证- 选择自定义密码
登录名:***
登录密码:******
实例名称自定义- 类似可参考- aaa-zk-A[0,3]ecs、bbb-zk-B[0,3]ecs、ccc-zk-C[0,3]ecs 对应ABC区的机器
主机名自定义- 类似可参考- aaa-zk-A[0,3]ecs、bbb-zk-B[0,3]ecs、ccc-zk-C[0,3]ecs 对应ABC区的机器
其他没有设置选择
分组设置
由于是选填,所以没有进行选择
二、创建ZK镜像
Docker商店地址:https://store.docker.com/editions/community/docker-ce-desktop-mac
下载安装
打开终端输入docker info命令,出现类似下面信息说明安装并启动成功
1.创建Dockerfile文件
这里把需要的一些命令也安装进去
FROM hyperledger/fabric-zookeeper:latest COPY zookeeper-entrypoint.sh / #给zookeeper-entrypoint.sh加上执行权限 RUN chmod +x /zookeeper-entrypoint.sh RUN apt update RUN apt-get -y install netcat RUN apt install net-tools RUN apt install wget RUN apt-get install procps #安装下面三个命令需要对话判断y/n,不加-y会导致对话没有回复,无法安装命令导致失败 RUN apt install yum -y RUN apt install iputils-ping -y RUN apt-get install vim -y ENTRYPOINT ["/zookeeper-entrypoint.sh"]
命令需要对话判断y/n的,不加-y会导致对话没有回复,无法安装命令导致失败,失败如下图
2.创建zookeeper-entrypoint.sh文件
⚠️:zookeeper-entrypoint.sh和Dockerfile需要处于同一路径
#!/bin/bash INIT_FILE="/external/bin/init.sh" if [[ -f "$INIT_FILE" ]]; then sh ${INIT_FILE} fi /docker-entrypoint.sh "zkServer.sh" "start-foreground"
3.构建镜像
在终端执行命令
docker build -t 镜像仓库地址/-zookeeper:1.0.0 .
看到类似如下图,即为构建成功
查看现有镜像
docker images
一般上面构建咩有问题,这里就会看到我们创建的镜像
镜像上传
开通容器镜像服务:https://cr.console.aliyun.com/cn-zhangjiakou/instances/repositories
初次开通会看到👇图:
容器镜像服务设置Registry登录密码:******
地域选择华北3(张家口)
创建命名空间-创建镜像仓库-创建的镜像仓库右侧点击管理
登录阿里云Docker Registry
这里具体看操作指南中username的值
docker login --username=具体看操作指南中username的值 registry.cn-zhangjiakou.aliyuncs.com
输入密码为容器镜像服务设置Registry登录密码:******
首次不需要拉取镜像,只要push即可
查看[ImageId]和[镜像版本号]
是否需要sudo看个人情况
sudo docker images
将镜像推送到Registry
$ sudo docker tag [ImageId] 仓库地址/zk:[镜像版本号] $ sudo docker push 仓库地址/zk:[镜像版本号]
类似下图即为镜像上传成功:
也可以在页面-镜像版本看到上传的版本镜像
创建ZK集群
ECS节点登录密码:***
其中添加ECS节点选择默认系统镜像并且使用数据盘(这里需要确认一下,是否需要使用数据盘,看需要存储的数据量,或者可以把系统盘买大一些,就不用数据盘了)
接下来就是部署ZK应用,这里没什么好讲的
然后是为应用挂载持久化存储卷NAS
但是
。
。
。
。
。
。
。
。
。
先写到这里,0点了,下班!!!