[PolarDB实操课] 03.使用PXD部署PolarDB企业版和标准版

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 本课程详细介绍了如何使用PXD工具部署PolarDB-X企业版和标准版。主要内容包括:1. **PolarDB-X企业版与标准版的区别**:讲解了两者的架构特点、性能差异及适用场景。2. **集群机器上安装Docker环境**:指导用户在阿里云ECS实例上安装Docker,确保后续部署顺利进行。3. **部署机上安装PXD**:介绍如何配置密钥连接、安装Python3并激活虚拟环境,最后安装PXD工具。4. **创建并部署PolarDB-X**:通过编写拓扑文件(YAML格式),一键拉起PolarDB-X集群,并验证部署状态。

[PolarDB实操课] 03.使用PXD部署PolarDB企业版和标准版


内容简介:

一、PolarDB-X企业版和标准版的区别

二、在集群机器上安装docker环境

三、在部署机上安装PXD

四、创建并部署PolarDB-X

五、总结

 

本次分享的内容是如何使用PXD部署PolarDB-X企业版和标准版。

image.png

课程内容将围绕四个方面展开:

首先,介绍PolarDB-X企业版和标准版的区别;其次,讲解如何在集群机器上安装docker环境;然后,如何在部署机上安装PXD;最后,创建并部署PolarDB-X。

image.png

 

一、PolarDB-X企业版和标准版的区别

该部分主要介绍了PolarDB-X企业版和标准版的区别。

image.png

1. PolarDB-X企业版与标准版的性能特点

PolarDB-X标准版主打集中式架构,支持单机MySQL形态,采用“一主一备一日志”的三节点架构,PolarDB-X标准版没有CN、GMS与CDC节点,将PolarDB-X分布式中的DN节点提供单独服务,它支持Paxos协议的多副本模式,Lizard分布式事务引擎,可以100%兼容MySQL;PolarDB-X企业版主打分布式架构,高度兼容MySQL生态,支持分布式水平扩展,可以从集中式(最小1个节点)扩展到分布式(1024个节点)。它的架构方式就是PolarDB-X分布式架构。

image.png

因架构形态的不同,PolarDB-X标准版与企业版有着不同的性能特点。PolarDB-X标准版主打集中式架构,100%兼容MySQL。在小规格下(例如CPU<=32核),相比于分布式更具有性能优势。如遇大规模需求也可平滑升级为分布式版。当然,PolarDB-X标准版也有一些缺点:因为单机MySQL下的B+Tree存在大表并发问题。因此,单表行记录建议控制在500万~5000万之间。同时,单机的scale up也存在上限。PolarDB-X企业版主打分布式线性扩展,最大可支持1024节点,PB级别的数据规模。有着金融级容灾水准,支持同城3机房,两地三中心等容灾形态。另外,它支持HTAP行列混存,内置列存副本可加速在线分析能力。

2. PolarDB-X的推荐使用场景

针对上述不同的性能特点,给出相关选型建议。

1 对于PolarDB-X标准版,推荐以下两个场景:

a.需要100%兼容MySQL,支持跨机房容灾且满足RPO=0的场景下;

b.需要低成本MySQL,且满足开源,业务可上可下的情况下。

2对于PolarDB-X企业版,推荐以下四个场景:

a.需要分布式并发扩展,解决订单交易类高并发的场景下;

b.需要替代开源分库分表,解决运维问题的情况下;

c.需要解决MySQL大表问题,基于分布式进行数据切片的场景下;

d.需要分布式架构升级且满足开源的情况下。

 

二、在集群机器上安装docker环境

介绍完PolarDB-X企业版与标准版的区别后,下面进一步学习如何使用PXD工具来部署PolarDB-X企业版和标准版。本节课所涉及到的所有指令代码以文档的形式分享给大家,大家可以实践操作,熟悉安装流程

1. 阿里云云服务器ECS的注册创建

主要的流程分为准备服务器,准备操作系统,安装docker密钥链接,配置环境安装PXD,准备拓扑文件,最后创建PolarDB-X实例。用户除了在自己的电脑本地环境上进行部署体验同时也推荐在阿里云的云服务器ECS上进行部署操作,确保本地环境健康稳定可靠。

image.png

下面讲解如何创建ECS实例,操作流程如下:

首先,打开云服务器ECS址。在购买前需要登录阿里云账号,由于是学习课程,推荐使用按量付费的方式使用完成后就可以随时释放资源更加优惠网络可用区自行选择;实例规格要选择稍大的内存,否则后续部署安装会出现内存不足的情况,这里推荐使用8vCPU和16GiB; 

image.png

镜像选择主要用于后续安装docker,这里选择Ubuntu 20.04版本;勾选分配公网IPv4地址;登录凭证使用自定义密码的形式。最后,进行下单。为完成集群部署,需要购买三台ECS,将上述购买操作重复两次。

image.png

在全部完成后,选择其中一个实例点击远程连接,输入用户名及密码,即可进入shell页面进行后续操作。

2. 在服务器中安装docker环境

在安装PXD之前,需要先进行系统配置,也就是安装docker(安装docker的地址如图所示)。

image.png

根据所创建实例时所选择的系统,在页面左侧点击相应系统进行安装,这里更推荐使用apt存储库进行安装,实例代码已经给出,将代码拷贝到shell页面运行,即可完成对应操作。

image.png

image.png

首先将第一步代码拷贝到shell页面运行,完成第一步;接下来进行第二步,安装软件包的过程,同样将代码复制下来,然后在shell页面执行代码。到此,完成docker的安装部分。

 

三、在部署机上安装PXD

1. ECS机器密钥连接

在部署机上安装PXD工具。上节课已经介绍过PXD其实就是PolarDB团队开发的快速部署工具。安装之前,还需要将3台ECS机器进行密钥连接。下面讲解如何进行密钥对的连接。将以下代码输入:

# 生成密钥对

ssh-keygen -t rsa

# 复制免登公钥到目标机器,修改user和ip。重复3次

ssh-copy-id user@ip

在执行第二句代码时,需要修改userIP需要把它改为所购买的ECS实例的IP地址。如下图所示,将地址填入到代码中。

image.png

user默认root,所以改成root即可。因为有3台机器,所以需要将此指令重复三次执行完之后,就完成了集群机器配置的免密登录。

2. 安装python3并激活虚拟环境

接下来需要安装python3并激活虚拟环境不同镜像系统有不同指令,可以按需执行相关的指令。Ubuntu系统的代码已整理如下。其他系统的示例代码在安装docker文档中既可查阅,可以自行查阅对应安装。

Ubuntu系统示例代码:

a. 安装Python3

apt-get update

apt install python3.8-venv

b. 创建一个python3的虚拟环境并激活

python3 -m venv venv

source venv/bin/activate

看到对话框前有(venc),就代表已经进入到虚拟环境

3. 安装PXD工具

接下来,进行安装PXD工具。在安装之前,建议先升级一下pip工具,将相应代码复制到环境里执行即可

# 升级pip工具示例代码:

pip install –upgrade pip

# 升级完成后,执行如下代码安装PXD

pip install pxd

 

四、创建并部署PolarDB-X

1. 准备拓扑文件

(1)PolarDB-X标准版

由于PolarDB-X目前包含企业版和标准版两个版本,在部署过程中的主要区别需要准备不同的拓扑文件下面介绍如何编写这两类的拓扑文件首先,执行创建yaml文件的过程然后编辑文件,相应代码如下:

# 创建yaml文件,命名为polardbx1.yaml

touch polardbx1.yaml

# 编辑该文件

vi polardbx1.yaml

下图展示了yaml文件具体内容

image.png

代码中的versiontype无需修改cluster下属的name是PolarDB-X的集群名称可以自定义;dn节点里的image代表镜像名称,这里可以不填,默认为最新镜像;replica是数据节点的数目,在标准版中默认设置为1Host group列表表示1个DN节点多副本的部署机器,例如pixel 3副本需要填入3个IP,3本集群的leader节点会从前两个IP的节点上随机显出。需要注意的是,这里的ip地址必须要填写私网地址,而不能写公网ip。

这是因为DN的三个物理节点要进行网络协调,如果填写公网ip,一方面带宽会受限,另一方面延迟较大,导致3个节点间通信比较慢,部署就很容易失败。最后resources表示的是内存上限,默认最小为2G。ECS内存足够大,也可以修改为3/4G。下面补充介绍如何查看私网地址。打开所购买的ECS实例, IP地址区域就是公网私网地址。

image.png

由于填写了3ESC实例,既可以选择把第1个机器的IP地址填3遍,也可以选择把3台机器的IP地址1遍。在编写完这个文件之后,就可以文件保存并退出。

(2)PolarDB-X企业版

如下图,假如准备了3台机器,分别称做机器人ABC。A机器用来部署GMSCDC节点BC机器用来部署CNDN各两个节点。下面重点介绍GMSCNDN跟CDC节点下属的host group,其实同样按照上述的部署方式,填入相应的机器私网IP。即GMSCDC节点对应A机器的私网地址CNDN两个节点对应的是BC两个节点。

image.png

其他例如:versiontype等属性,PolarDB-X标准版所介绍的内容一致另外,可以使用同样的3个ECS机器,既部署1个PolarDB-X标准版,部署1个PolarDB-X企业版。需要注意的是cluster的name需要命名为不同的名称,以及PolarDB-X集群名称创建yaml文件的名称需要进行修改即可同时创建两个文件。

2. 一键拉起PolarDB-X

在填写完yaml文件之后,就可以一键拉起PolarDB-X执行以下代码可以开始拉取镜像,并且部署PolarDB-X。

# 一键拉起PolarDB-X

pxd creat -file polardbx1.yaml

部署成完成后,PXD就会输出PolarDB-X的集群的连接方式,通过mysql命令行登录就可以进行测试了具体的MySQL操作参考云启实验室内容

image.png

3. 查看PolarDB-X是否部署完成

部署完成后在shell页面输入下列代码即可查看所创建节点的状态

#查看所建节点的状态

pxd list

image.png

由于在创建的过程中暂停,所以PolarDB-X标准版的状态是creating,而PolarDB-X企业版已经部署完毕,所以看到它的状态正在运行中,它的节点为2个CN节点,2个DN节点和1个CDC节点。当出现这样的状态,就代表PolarDB-X标准版和企业版都已经部署完成了。


五、总结

本次课程到此结束,作如下总结

(1)本次课程主要介绍如何使用PXD工具来部署PolarDB-X企业版和标准版并且介绍了PolarDB-X企业版和标准版的架构以及对应的试用场景。

(2)后续介绍如何使用源码部署PolarDB-X企业版和标准版。

image.png

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
1天前
|
关系型数据库 MySQL 分布式数据库
[PolarDB实操课] 05.通过源码部署PolarDB-X标准版
本课程介绍如何通过源码部署PolarDB-X标准版,涵盖基于Paxos的MySQL三副本工作原理和技术特点。主要内容包括: 1. **Paxos三副本工作原理**:讲解Leader和Follower节点的角色及数据同步机制。 2. **技术特点**:强调高性能、数据不丢失(RPO=0)和自动HA切换。 3. **源码部署步骤**:详细演示从编译生成RPM包到启动DN节点的过程,包括配置my.cnf文件和初始化数据库。 4. **高可用体验**:通过三台机器模拟三副本集群,展示Leader选举和故障转移机制,确保数据一致性和服务可用性。
|
1天前
|
关系型数据库 编译器 分布式数据库
PolarDB实操课] 04.通过源码部署PolarDB-X企业版
本次课程由PolarDB开源架构师王江颖分享,详细介绍了通过源码部署PolarDB-X企业版的全过程。主要内容包括: 1. **编译基础** 2. **使用源码编译部署PolarDB-X企业版** 3. **演示实例**:通过阿里云ECS进行实际操作演示,从创建用户、赋予权限到最终启动并连接PolarDB-X数据库,展示了完整的部署过程。 4. **总结**
|
2天前
|
Cloud Native 关系型数据库 分布式数据库
让PolarDB更了解您--PolarDB云原生数据库核心功能体验馆
让PolarDB更了解您——PolarDB云原生数据库核心功能体验馆,由阿里云数据库产品事业部负责人宋震分享。内容涵盖PolarDB技术布局、开源进展及体验馆三大部分。技术布局包括云计算加速数据库演进、数据处理需求带来的变革、软硬协同优化等;开源部分介绍了兼容MySQL和PostgreSQL的两款产品;体验馆则通过实际操作让用户直观感受Serverless、无感切换、SQL2Map等功能。
|
3月前
|
关系型数据库 MySQL 分布式数据库
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶,邀请好友完成更有机会获得​小米Watch S3、小米体重称​等诸多好礼!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
|
4月前
|
关系型数据库 MySQL Serverless
探索PolarDB MySQL版:Serverless数据库的灵活性与性能
本文介绍了个人开发者对阿里云PolarDB MySQL版,特别是其Serverless特性的详细评测体验。评测涵盖了产品初体验、性能观测、Serverless特性深度评测及成本效益分析等方面。尽管试用过程中遇到一些小问题,但总体而言,PolarDB MySQL版表现出色,提供了高性能、高可用性和灵活的资源管理,是个人开发者和企业用户的优秀选择。
|
1天前
|
关系型数据库 分布式数据库 数据库
瑶池数据库大讲堂|PolarDB HTAP:为在线业务插上实时分析的翅膀
瑶池数据库大讲堂介绍PolarDB HTAP,为在线业务提供实时分析能力。内容涵盖MySQL在线业务的分析需求与现有解决方案、PolarDB HTAP架构优化、针对分析型负载的优化(如向量化执行、多核并行处理)及近期性能改进和用户体验提升。通过这些优化,PolarDB HTAP实现了高效的数据处理和查询加速,帮助用户更好地应对复杂业务场景。
|
1天前
|
关系型数据库 Serverless 分布式数据库
瑶池数据库微课堂 | PolarDB Serverless弹性&价格力观测
瑶池数据库微课堂介绍阿里云PolarDB Serverless的弹性与性价比优势。通过瑶池解决方案体验馆,用户可免费实操,直观感受Serverless的秒级弹性及超高性价比。内容涵盖Serverless概念、操作步骤、压测演示及性能曲线分析,展示PolarDB在不同负载下的自动扩展能力。适合希望了解云数据库弹性和成本效益的技术人员。
|
1天前
|
关系型数据库 OLAP 分布式数据库
瑶池数据库微课堂|PolarDB/RDS+ADB Zero-ETL:一种免费、易用、高效的数据同步方式
瑶池数据库微课堂介绍阿里云PolarDB/RDS与ADB的Zero-ETL功能,实现免费、易用、高效的数据同步。内容涵盖OLTP与OLAP的区别、传统ETL存在的问题及Zero-ETL的优势(零成本、高效同步),并演示了从RDS MySQL到AnalyticDB MySQL的具体操作步骤。未来将优化和迭代此功能,提供更好的用户体验。
|
6天前
|
关系型数据库 分布式数据库 数据库
1月17日|阿里云云谷园区,PolarDB V2.0技术沙龙,畅聊国产数据库
为了助力国产化项目顺利推进,阿里云邀请企业开发者和数据库负责人到云谷园区,与PolarDB V2.0技术专家面对面交流。扫描海报二维码报名,我们将根据信息为您申请入园。欢迎参与,共同探讨PolarDB的最新技术和应用!