云原生-ZK集群及ZK云应用(ZK镜像制作、镜像上传、部署ZK应用、挂载持久化存储卷NAS)

本文涉及的产品
文件存储 NAS,50GB 3个月
注册配置 MSE Nacos/ZooKeeper,118元/月
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
简介: 云原生-ZK集群及ZK云应用(ZK镜像制作、镜像上传、部署ZK应用、挂载持久化存储卷NAS)

接下来就进入正题,可能描述性文字偏多,也有一些踩坑总结


搭建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命令,出现类似下面信息说明安装并启动成功



20210127231914853.png

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会导致对话没有回复,无法安装命令导致失败,失败如下图


20210127232326778.png

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 .


看到类似如下图,即为构建成功


20210127233016528.png

查看现有镜像

docker images

一般上面构建咩有问题,这里就会看到我们创建的镜像


镜像上传


开通容器镜像服务:https://cr.console.aliyun.com/cn-zhangjiakou/instances/repositories

初次开通会看到👇图:


20210127234030906.png


容器镜像服务设置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:[镜像版本号]


类似下图即为镜像上传成功:

20210127234830496.png


也可以在页面-镜像版本看到上传的版本镜像


20210127234929789.png


创建ZK集群


创建集群🔗

ECS节点登录密码:***

其中添加ECS节点选择默认系统镜像并且使用数据盘(这里需要确认一下,是否需要使用数据盘,看需要存储的数据量,或者可以把系统盘买大一些,就不用数据盘了)


接下来就是部署ZK应用,这里没什么好讲的


然后是为应用挂载持久化存储卷NAS


但是


先写到这里,0点了,下班!!!

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。   相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
1月前
|
存储 人工智能 Cloud Native
NAS深度解析:面向云原生应用的文件存储
本文深入解析了面向云原生应用的文件存储NAS,由阿里云专家分享。内容涵盖Cloud Native与AI浪潮下的技术创新,包括高性能、弹性伸缩、成本优化及数据安全等方面。针对云原生应用的特点,NAS在Serverless生态中不断演进,提供多种产品规格以满足不同需求,如极速型NAS、归档存储等,确保用户在高并发场景下获得稳定低延时的存储体验。同时,通过优化挂载参数和容器访问策略,提升整体性能与可用性。
51 11
|
4月前
|
Kubernetes Cloud Native 云计算
云原生之旅:Kubernetes 集群的搭建与实践
【8月更文挑战第67天】在云原生技术日益成为IT行业焦点的今天,掌握Kubernetes已成为每个软件工程师必备的技能。本文将通过浅显易懂的语言和实际代码示例,引导你从零开始搭建一个Kubernetes集群,并探索其核心概念。无论你是初学者还是希望巩固知识的开发者,这篇文章都将为你打开一扇通往云原生世界的大门。
171 17
|
4月前
|
Kubernetes Cloud Native 流计算
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
134 3
|
4月前
|
Kubernetes Cloud Native Ubuntu
云原生之旅:Kubernetes集群搭建与应用部署
【8月更文挑战第65天】本文将带你进入云原生的世界,通过一步步指导如何在本地环境中搭建Kubernetes集群,并部署一个简单的应用。我们将使用Minikube和Docker作为工具,探索云原生技术的魅力所在。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和实践技巧。
|
5月前
|
Kubernetes 监控 Cloud Native
Cluster Optimizer:一款云原生集群优化平台
**Cluster Optimizer** 是一款云原生集群优化平台,旨在通过自动化和智能化工具帮助企业降低云成本,解决云原生架构中的成本管理难题。面对资源闲置、配置不当和缺乏自动化优化机制等挑战,Cluster Optimizer能够深入分析云资源、应用和用户行为,精准识别优化机会,并给出具体建议,涵盖节点组、节点、GPU 节点、磁盘、持久卷和应用等多个维度。通过优化实例类型、自动扩缩容和资源分配,帮助企业降低成本、提升性能和效率。[点击此处](https://www.wiseinf.com.cn/docs/setup/) 免费安装和试用 **Cluster Optimizer 社区版**。
152 9
|
6月前
|
运维 Kubernetes Cloud Native
探索云原生:Kubernetes集群的部署与管理
【8月更文挑战第31天】 本文将带领读者深入了解云原生技术,特别是以Kubernetes为核心的集群部署和管理。文章不仅介绍了Kubernetes的基础概念和架构,还通过实际的代码示例展示了如何在云平台上搭建一个Kubernetes集群。我们将从基础的安装步骤到高级的服务部署,一步步揭示如何利用Kubernetes来简化容器化应用的管理与扩展。无论你是云原生新手还是希望提升现有技能的开发者,这篇文章都将成为你实践云原生技术的宝贵指南。
|
6月前
|
Kubernetes Cloud Native 应用服务中间件
云原生之旅:构建你的首个Kubernetes集群
【8月更文挑战第31天】在这个数字化迅速演进的时代,云原生技术如同星辰般璀璨。它不仅是企业数字化转型的引擎,更是开发者们探索创新的乐园。本文将带你开启一场云原生的奇妙旅程,从零开始,一步步构建属于你自己的Kubernetes集群。想象一下,当你的应用在云端自如地伸缩、滚动更新时,那份成就感和掌控感,是不是已经让你跃跃欲试了呢?那就让我们开始吧!
|
6月前
|
Kubernetes Cloud Native JavaScript
云原生之旅:Kubernetes 集群搭建与应用部署实践
【8月更文挑战第31天】云原生技术正在改变软件开发和运维的方式,而Kubernetes作为其核心组件之一,提供了一个强大的平台来编排容器化的应用。本文将引导你了解如何搭建一个基本的Kubernetes集群,并通过一个简单的Node.js应用示例,展示如何在集群中部署和管理应用。我们将从零开始,逐步构建起对Kubernetes的直观理解,并在实践中学习其核心概念。
|
4月前
|
机器学习/深度学习 监控 前端开发
聊聊最近在阿里云的云应用开发平台(CAP)上的体验
CAP 快速部署项目体验评测:选择了 RAG 模板,配置过程顺畅但遇到数据源兼容性问题;使用 PTS 测试性能良好,监控和弹性策略配置友好;用 Flask 进行二次开发顺利,用户体验提升;建议增加实时数据处理、机器学习模型服务等热门场景模板。
103 3
聊聊最近在阿里云的云应用开发平台(CAP)上的体验
|
4月前
|
分布式计算 监控 JavaScript
验阿里云的云应用开发平台CAP
验阿里云的云应用开发平台CAP

热门文章

最新文章