Ceph分布式存储实战:从0搭建一个存储集群,并把块设备镜像映射到CentOS 7系统上的步骤
本文配套视频和笔记:
Ceph分布式存储实战(Ceph快速上手)
- B站视频在线观看链接:【千锋教育】Ceph分布式存储技术教程(进阶到实战)
- 百度网盘链接:2020全新_Ceph分布式存储技术-进阶到实战 笔记+资料+视频.zip 提取码: xry9
文章目录
- 1. 分布式存储系统理论
- 1.1. 认识分布式存储
- 1.2. 分布式存储的特性
- 1.2.1. 可扩展
- 1.2.2. 低成本
- 1.2.3. 高性能
- 1.2.4. 易用
- 1.2.5. 易管理
- 1.3. 分布式存储的挑战和所涉及的技术
- 1.4. 存储分类
- 1.4.1. 本地存储
- 1.4.2. 网络存储
- 2. Ceph介绍
- 2.1. Ceph简介
- 2.2. Ceph优势
- 2.3. Ceph架构
- 2.4. Ceph的基本组件
- 3. 安装Ceph集群
- 3.1. 准备环境
- 3.2. 配置ssh免密登录
- 3.3. 添加下载源
- 3.4. 安装Ceph-deploy
- 3.5. 部署Ceph集群
- 3.6. 配置DashBoard
- 3.7. 配置客户端使用
- 3.8. 升级CentOS 7的内核为最新版本
- 3.9. 客户端安装Ceph
- 3.10. 将块设备镜像映射到CentOS 7系统上
- 3.11. 客户端重启之后需重新映射
1. 分布式存储系统理论
1.1. 认识分布式存储
分布式存储系统,是通过网络将数据分散存储在多台独立的设备上。
1.2. 分布式存储的特性
1.2.1. 可扩展
分布式存储系统可以扩展到几百台甚至几千台的集群规模,而且随着集群规模的增长,系统整体性能表现为线性增长。分布式存储的水平扩展有以下几个特性:
- 节点扩展后,旧数据会自动迁移到新节点,实现负载均衡,避免单点过热的情况出现。
- 水平扩展只需要将新节点和原有的集群连接到同一网络,整个过程不会对业务造成影响。
- 当节点被添加到集群,集群系统的整体容量和性能也随之线性扩展,此后新节点的资源就会被管理平台接管,被用于分配或回收。
1.2.2. 低成本
分布式存储系统的自动容错、自动负载均衡机制使其可以构建在普通的PC机之上。另外,线性扩展能力也使得增加、减少机器非常方便,可以实现自动化运维。
1.2.3. 高性能
无论是针对整个集群还是单台机器,都要求分布式存储系统具备高性能。
1.2.4. 易用
分布式存储系统需要能够提供易用的对外接口,另外,也要求具备完善的监控、运维工具,并且能够与其他系统集成。
1.2.5. 易管理
通过一个简单的WEB界面就能够对整个系统进行分配管理,运维简便,极低的管理成本。
1.3. 分布式存储的挑战和所涉及的技术
分布式存储的挑战主要在于数据、状态信息的持久化,要求在自动迁移、自动容错、并发读写的过程中保证数据的一致性。分布式存储涉及的技术主要来自两个领域:分布式系统以及数据库。
1.4. 存储分类
1.4.1. 本地存储
本地存储本地的文件系统,不能在网络上使用。
Ext3、Ext4、XFS、NTFS
1.4.2. 网络存储
网络文件系统,共享的都是文件系统:
- NFS:网络文件系统
- HDFS:分布式网络文件系统
- GlusterFS:分布式网络文件系统
共享的都是裸设备(块存储、磁盘):
- cinder(块存储)
- ceph(块存储、对象存储、网络文件系统-分布式)
- SAN(存储区域网)
2. Ceph介绍
2.1. Ceph简介
Ceph使用C++语言开发,遵循LGPL协议开源。Sage Weil(Ceph论文发表者)于2011年创立了以Inktank公司主导Ceph的开发和社区维护。2014年Redhat收购Inktank公司,并发布Inktank Ceph企业版(ICE)软件,业务场景聚焦云、备份和归档,支持对象存储和块存储以及文件系统存储应用。出现Ceph开源社区版本和Redhat企业版。
Ceph的主要设计初衷是变成一个可避免单节点故障的分布式文件系统,PB级别的扩展能力,而且是一种开源自由软件,许多超融合的分布式文件系统都是基于Ceph开发的。
Ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。
- Ceph官网:https://ceph.com
- Ceph文档:https://docs.ceph.com
- Ceph代码:https://github.com/ceph/ceph
2.2. Ceph优势
- 高扩展性:使用普通的x86服务器,支持10~1000台服务器,支持TB~EB级的扩展。
- 高可靠性:没有单点故障,多数据副本,自动管理,自动修复。
- 高性能:数据分布均衡。
- 功能全面:可用于对象存储,块设备存储和文件系统存储。
2.3. Ceph架构
- 基础存储系统RADOS:
基础存储系统RADOS(Reliable, Autonomous, Distributed Object Store,即可靠的、自动化的、分布式的对象存储)。所有存储在Ceph系统中的用户数据事实上最终都是由这一层来存储的。Ceph的高可靠、高可扩展、高性能、高自动化等等特性本质上也是由这一层所提供的。 - 基础库LibRADOS:
LibRADOS这一层的功能是对RADOS进行抽象和封装,并向上层提供API,以便直接基于RADOS(而不是整个Ceph)进行应用开发。特别要注意的是,RADOS是一个对象存储系统,因此,LibRADOS实现的API也只是针对对象存储功能的。 - 高层应用接口
RADOSGw:对象网关接口(对象存储),其作用是在LibRADOS的基础上提供抽象层次更高、更便于应用使用的上层接口。
RBD:块存储其作用是在LibRADOS的基础上提供抽象层次更高、更便于主机或虚拟机使用的上层接口。
CephFS:文件存储系统,其作用是在RADOS的基础上提供抽象层次更高、更便于客户端使用的上层接口。
2.4. Ceph的基本组件
- Ceph OSD(必装)
全称是Object Storage Device,用于集群中所有数据与对象的存储。处理集群数据的复制、恢复、回填、再均衡。并向其他OSD守护进程发送心跳,然后向Mon提供一些监控信息。
当Ceph存储集群设定数据有两个副本时(一共存两份),则至少需要两个OSD守护进程即两个OSD节点,集群才能达到active+clean状态。 - Ceph Monitor(必装)
Ceph的监控器,主要功能是维护整个集群健康状态,提供一致性的决策,包含了Monitor map,即集群map,monitor本身不存储任何集群数据 - Managers(必装)
用于收集Ceph集群状态、运行指标,比如存储利用率、当前性能指标和系统负载。对外提供 Ceph Dashboard(Ceph UI)和RESTful API。高可用性通常至少需要两个管理器。 - Ceph MDS(可选)
全称是Ceph Metadata Server,是为Ceph文件系统提供元数据(metadata)计算、缓存与同步(也就是说,Ceph块设备和Ceph对象存储不使用MDS)。在Ceph中,元数据也是存储在OSD节点中的,MDS类似于元数据的代理缓存服务器。MDS进程并不是必须的进程,只有需要使用Ceph FS时,才需要配置MDS节点。
3. 安装Ceph集群
3.1. 准备环境
系统版本:CentOS 7.9.2009(需要CentOS 7.5以上)
硬件配置:5台VM,1核1G,每台Node角色的机器至少挂载1块不低于5个G的空闲盘为OSD存储
主机名 | IP | Role |
---|---|---|
admin | 10.1.1.73 | admin–安装ceph-deploy |
node1 | 10.1.1.74 | mon/mgr/osd |
node2 | 10.1.1.75 | osd |
node3 | 10.1.1.76 | osd |
ceph-client | 10.1.1.77 | client |
- 给3台Node节点添加一块大小5G以上的磁盘
lsblk
- 所有节点修改主机名并相互解析
修改主机名可以参考:https://coco56.blog.csdn.net/article/details/123407421vim /etc/hosts
以下是解析内容:
10.1.1.73 admin 10.1.1.74 node1 10.1.1.75 node2 10.1.1.76 node3 10.1.1.77 ceph-client
- 关闭所有机器的防火墙和selinux
关闭防火墙可以参考:https://coco56.blog.csdn.net/article/details/123409975,下面是关闭selinux的步骤:
先修改配置文件vim /etc/sysconfig/selinux
%s/SELINUX=enforcing/SELINUX=disabled/gc
关闭selinuxsetenforce 0
- 所有机器都创建一个普通用户
cephu
并设置密码(密码这里设置为1
)useradd cephu
passwd cephu
3.2. 配置ssh免密登录
确保各机器上新创建的用户都有sudo权限
visudo
转到第100行,然后在下面添加:
cephu ALL=(root) NOPASSWD:ALL
注意上面的是缩进(Tab),而不是空格
实现ssh无密码登录(admin节点操作)
先切换到cephu
用户su - cephu
输入如下指令之后,再连续输三个回车,以生成密钥
ssh-keygen
将admin节点cephu用户生成的密钥拷贝到各Ceph节点
在admin节点执行如下命令ssh-copy-id cephu@node1
执行完之后要输入
yes
,然后输入我们刚才设置的密码1
ssh-copy-id cephu@node2
ssh-copy-id cephu@node3
ssh-copy-id cephu@ceph-client
测试连接:
使用ssh连接ssh cephu@node1
查看当前主机
hostname
退出
exit
在admin节点用root用户创建~/.ssh/config配置文件
mkdir ~/.ssh touch ~/.ssh/config
将~/.ssh/config配置文件设置为如下内容,这样ceph-deploy就能用你所建的用户名登录Ceph节点了
host node1 hostname node1 user cepuhhost node2 hostname node2 user cepuhhost node3 hostname node3 user cepuh
3.3. 添加下载源
- 添加下载源,安装ceph-deploy(admin节点,root用户)
touch /etc/yum.repos.d/ceph.repo vim /etc/yum.repos.d/ceph.repo
[ceph-noarch] name=Ceph noarch packages baseurl=https://download.ceph.com/rpm-luminous/el7/noarch enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc
https://docs.ceph.com/en/pacific/install/get-packages/#rhel
- 建立缓存
yum makecache
- 更新yum源
yum update -y
- 开启yum缓存
vim /etc/yum.conf
keepcache=1
3.4. 安装Ceph-deploy
- 安装Ceph-deploy
yum install ceph-deploy -y
- 安装ntp(所有机器)
选择任意一台机器当ntp时间服务器,其他节点当时间服务器的客户端,跟时间服务器同步时间。
这里选择admin节点为ntp时间服务器yum install -y ntp # [root@admin ~]
- 修改时间服务器的配置
vim /etc/ntp.conf
有4行server的位置,把那4行server行注释掉,填写以下两行:
server 127.127.1.0 # local clock fudge 127.127.1.0 stratum 10
- 启动ntp服务,并设置开机自启
systemctl start ntpd # 启动ntp服务 systemctl enable ntpd # 将ntp服务设为开机自启 systemctl status ntpd # 查看ntp服务当前的状态
5. 其他所有节点安装
ntpdate
yum install ntpdate -y
- 同步时间
ntpdate 10.1.1.73 # 注意改成自己时间服务器的IP
3.5. 部署Ceph集群
注意:没有特殊说明,以下所有操作均是在admin节点,cephu用户下执行
- 创建cephu用户操作的目录
su - cephu # 先切换到cephu用户 mkdir my-cluster # 创建my-cluster目录
注意:之后所有ceph-deploy命令操作必须在该目录下执行
- 为Python2.7安装pip
curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py # 下载安装脚本
sudo python get-pip.py # 运行安装脚本
pip -V
- 使用
pip
安装distribute
pip install distribute
- 创建集群
cd my-cluster
ceph-deploy new node1
查看当前目录下的文件:
ls
创建成功会有三个文件:
ceph.conf
、ceph-deploy-ceph.log
、ceph.mon.keyring
- 安装luminous
目标:在node1、node2、node3三个节点上安装ceph和ceph-radosgw主包
方法1:利用官方脚本全自动安装,脚本会帮助node1、node2、node3创建epel源和ceph源,并且自动安装ceph和ceph-radosgw主包ceph-deploy install --release luminous node1 node2 node3 # 这一步时间很长,容易超时,可以利用手动安装或者分批安装 # 比如我第一次为node1和node2成功安装了 # 后面再次安装时只需要把node1和node2去掉,只为node3安装就行了
如果一直提示
Another app is currently holding the yum lock; waiting for it to exit...
,那么重启下出问题的机器再次安装就行了。
如果ceph和ceph-radosgw安装不上,则采用方法2
测试安装是否完成:分别在node1、node2、node3中确认安装版本为12.2.13ceph --version
正常情况下应该会显示:
ceph version 12.2.13 (584a20eb0237c657dc0567da126be145106aa47e) luminous (stable)
方法2:手动部署安装,三台机器分别创建(三台node节点相同操作) 安装epel源yum install -y epel*
创建Ceph源
touch /etc/yum.repos.d/ceph.repo vim /etc/yum.repos.d/ceph.repo
以下是官方Ceph源的配置(服务器位于加拿大,比较慢):
[ceph] name=Ceph packages for $basearch baseurl=https://download.ceph.com/rpm-luminous/el7/$basearch enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc[ceph-noarch] name=Ceph noarch packages baseurl=https://download.ceph.com/rpm-luminous/el7/noarch enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc[ceph-source] name=Ceph source packages baseurl=https://download.ceph.com/rpm-luminous/el7/SRPMS enabled=0 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc
以下是阿里云Ceph源的配置(服务器位于国内,有CDN加速,我河南这边儿用的是郑州的服务器):
[ceph] name=Ceph packages for $basearch baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/$basearch enabled=1 priority=2 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc[ceph-noarch] name=Ceph noarch packages baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/noarch enabled=1 priority=2 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc[ceph-source] name=Ceph source packages baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/SRPMS enabled=0 priority=2 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
分别在node1、node2、node3节点执行下面的命令安装软件,可以完全手动安装,但需要yum的Ceph缓存目录结构
sudo yum install ceph ceph-radosgw -y
如果因为速度慢导致安装失败可以按ctrl+c,利用它创建的yum缓存目录,手动把安装包下载下来保存到缓存目录
/var/cache/yum/x86_64/Ceph/packages
目录下
再次执行安装命令:sudo yum install ceph ceph-radosgw -y
测试安装是否完成,分别在node1、node2、node3中确认安装版本为12.2.13
ceph --version
正常情况下会提示:
ceph version 12.2.13 (584a20eb0237c657dc0567da126be145106aa47e) luminous (stable)
- 初始化Monitor(admin节点,cephu用户在my-cluster目录下执行)
ceph-deploy mon create-initial
- 赋予各个节点使用命令,免用户名权限
ceph-deploy admin node1 node2 node3
- 安装ceph-mgr:只有luminous才有,为使用dashboard做准备。
ceph-deploy mgr create node1
- 添加osd
注意:各个节点上提供的磁盘容量不能太小,最好5GB以上,另外还要留意一下你的磁盘名称ceph-deploy osd create --data /dev/sdb node1 # [cephu@admin my-cluster] ceph-deploy osd create --data /dev/sdb node2 # [cephu@admin my-cluster] ceph-deploy osd create --data /dev/sdb node3 # [cephu@admin my-cluster]
命令中的/dev/sdb是在各个节点上为osd准备的空闲磁盘(无需分区格式化,如果有分区则要指定具体分区),通过如下命令查看:
最后通过如下命令查看集群状态:ssh node1 sudo ceph -s
如果显示HEALTH_OK osd: 3 osds: 3 up, 3 in
就成功了
3.6. 配置DashBoard
在node1节点上操作,把ceph-mgr和ceph-mon安装在了同一台主机上,最好只有一个ceph-mgr
切换用户
su - cephu
创建管理域密钥
sudo ceph auth get-or-create mgr.node1 mon 'allow profile mgr' osd 'allow *' mds 'allow *'
开启
ceph-mgr
管理域sudo ceph-mgr -i node1
查看ceph的状态,确认mgr的状态为active
sudo ceph status
打开dashboard模板
sudo ceph mgr module enable dashboard
绑定开启dashboard模板的ceph-mgr节点的IP地址
sudo ceph config-key set mgr/dashboard/node1/server_addr 10.1.1.74 #IP地址为mgr节点的IP地址,也就是mode1的IP地址
查看端口占用情况
netstat -lntp
Web登录,浏览器输入:mgr地址:7000(如:http://10.1.1.74:7000/)
3.7. 配置客户端使用
- 配置客户端使用rbd:创建块设备之前需要创建存储池,存储池相关命令需要在mon节点执行,也就是规划好的node1节点
- 创建存储池
sudo ceph osd pool create rbd 128 128
128 128
为PG的数量,少于5个OSD,PG数量应为128,创建好了会提示:pool 'rbd' created
- 初始化存储池
sudo rbd pool init rbd
3.8. 升级CentOS 7的内核为最新版本
- 打开之前准备好的客户端ceph-client:主机名为
ceph-client
,IP为10.1.1.77
- 查看内核版本
uname -r
内核版本为:3.10.0-1160.el7.x86_64
- 导入ELRepo仓库的公共密钥:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
- 安装ELRepo仓库的yum源
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
- 查看可用的系统内核包
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
- 安装最新版的内核
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
- 查看系统上的所有可用内核:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
- 更改新内核的启动顺序
grub2-set-default 0
其中
0
是上面查询出来的可用内核 - 重启(重启的时候可以看到
CentOS Linux (5.16.14-1.el7.elrepo.x86_64) 7 (Core)
是最先启动)reboot
- 验证
uname -r
- 查看系统中全部的内核
rpm -qa | grep kernel
- 删除旧的内核
yum remove kernel -y
- 再次查看系统中全部的内核
rpm -qa | grep kernel
会发现少了一个
kernel-3.10.0-1160.el7.x86_64
- 如果需要把其他的删除,可以执行:
yum remove kernel-devel-3.10.0-1160.el7.x86_64 \ kernel-tools-libs-3.10.0-1160.el7.x86_64 \ kernel-headers-3.10.0-1160.el7.x86_64 \ kernel-tools-3.10.0-1160.el7.x86_64 -y
- 再次查看系统中全部的内核
rpm -qa | grep kernel
会发现内核版本为3.10.0的相关rpm包都没了
3.9. 客户端安装Ceph
安装epel源
yum install -y epel*
创建Ceph源
touch /etc/yum.repos.d/ceph.repo vim /etc/yum.repos.d/ceph.repo
以下是官方Ceph源的配置(服务器位于加拿大,比较慢):
[ceph] name=Ceph packages for $basearch baseurl=https://download.ceph.com/rpm-luminous/el7/$basearch enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc[ceph-noarch] name=Ceph noarch packages baseurl=https://download.ceph.com/rpm-luminous/el7/noarch enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc[ceph-source] name=Ceph source packages baseurl=https://download.ceph.com/rpm-luminous/el7/SRPMS enabled=0 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc
以下是阿里云Ceph源的配置(服务器位于国内,有CDN加速,我河南这边儿用的是郑州的服务器):
[ceph] name=Ceph packages for $basearch baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/$basearch enabled=1 priority=2 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc[ceph-noarch] name=Ceph noarch packages baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/noarch enabled=1 priority=2 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc[ceph-source] name=Ceph source packages baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/SRPMS enabled=0 priority=2 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
开启yum缓存
vim /etc/yum.conf
修改成:
keepcache=1
清理缓存
yum clean all
切换为普通用户
su - cephu
安装
ceph
和ceph-radosgw
sudo yum install ceph ceph-radosgw -y
查看
ceph
版本ceph --version
在admin节点赋予client使用命令免用户名权限:
打开admin节点
切换为普通用户su - cephu
进入
my-cluster
目录cd my-cluster
最后执行:
ceph-deploy admin ceph-client
修改client下该文件的读权限:
sudo chmod +r /etc/ceph/ceph.client.admin.keyring
修改client下的ceph配置文件(这一步是为了解决映射镜像时出错问题)
sudo vim /etc/ceph/ceph.conf
在最后一行追加:
rbd_default_features = 1
client节点创建块设备镜像:单位是M,这里是4个G
rbd create foo --size 4096
3.10. 将块设备镜像映射到CentOS 7系统上
- client节点映射镜像到主机
sudo rbd map foo --name client.admin
执行完之后会提示:
/dev/rbd0
- client节点格式化块设备
sudo mkfs.ext4 -m 0 /dev/rbd/rbd/foo
- client节点mount块设备
sudo mkdir /mnt/ceph-block-device #创建挂载点
sudo mount /dev/rbd/rbd/foo /mnt/ceph-block-device #挂载
挂载完成之后,可以查看一下
df -Th
正常情况下应该会显示:
/dev/rbd0 ext4 3.9G 16M 3.8G 1% /mnt/ceph-block-device
进入刚才挂载的目录cd /mnt/ceph-block-device
新建一个文件
sudo touch a.txt
查看结果
ls
3.11. 客户端重启之后需重新映射
客户端重起之后,设备需要重新作映射,不然可能会卡死或者之前的映射消失不见
- client节点映射镜像到主机
sudo rbd map foo --name client.admin
执行完之后会提示:
/dev/rbd0
- client节点mount块设备
sudo mount /dev/rbd/rbd/foo /mnt/ceph-block-device #挂载
挂载完成之后,可以查看一下
df -Th
正常情况下应该会显示:
/dev/rbd0 ext4 3.9G 16M 3.8G 1% /mnt/ceph-block-device
进入刚才挂载的目录cd /mnt/ceph-block-device
查看结果
ls
可以看到我们之前创建的文件还都在
Ceph分布式存储实战:从0搭建一个存储集群,并把块设备镜像映射到CentOS 7系统上的步骤相关推荐
- 手把手搭建一个redis集群
文章目录 前言 安装的含义 安装redis redis编译安装 redis集群 redis集群的使用 C++工程连接使用redis-cluster hiredis-cluster 总结 前言 所谓&q ...
- 单机简单搭建一个kafka集群(没有进行内核参数和JVM的调优)
1.JDK安装 在我的部署单节点kafka的博客里有相关的方法.(https://www.cnblogs.com/ToBeExpert/p/9789486.html )zookeeper和kafka的 ...
- 十分钟搭建一个EFK集群
快速部署搭建ELK ELK 介绍 环境信息 架构 二进制部署 一,系统初始化. 二,elasticsearch安装(所有节点) 三,filebeat安装使用 四,nginx安装 五,kibana 安装 ...
- 【阿里云EMR实战篇】以EMR测试集群版本为例,详解 Flink SQL Client 集成 Hive 使用步骤
简介: 以测试集群版本为例(EMR-4.4.1)-- Flink SQL Client 集成 Hive 使用文档 作者:林志成,阿里云EMR产品团队技术支持,拥有多年开源大数据经验 1.以测试集群版本 ...
- 和你聊聊如何搭建redis分片集群
摘要:我发现,凡是涉及到大数据存储,好像都得有个横向扩容方案,不管是在应用层实现,还是在数据存储本身实现.Redis作为一个高效的数据缓存,也周到的提供了数据sharding特性,本文就先讲下最基础的 ...
- docker 搭建mysql 连接不上_docker搭建MySQL主从集群
关于MySQL主从模式,如果我们直接在本机上搭建的话,是没法搭建的,只能借助于虚拟机,但有的时候我们又需要搭建一个主从集群,以便于进行一些功能性的测试.这个时候我们就可以尝试使用docker,借助于d ...
- linux系统搭建redis cluster集群 切片集群 教程 centOS系统redis6
目录 一.说明 二.环境信息 三.介绍 四.部署流程 五.测试 一.说明 该教程为redis集群-cluster切片集群部署方式,不包含redis的安装过程,如需redis安装教程请移步以下链接: & ...
- Kubernetes搭建Flink会话集群
Kubernetes搭建Flink会话集群 一.准备工作 linux 系统环境 :linux系统采用的是Centos 8 .安装linux软件包管理工具yum 安装docker-ce yum inst ...
- Ceph分布式存储实战.
云计算与虚拟化技术丛书 Ceph分布式存储实战 Ceph中国社区 著 图书在版编目(CIP)数据 Ceph分布式存储实战/Ceph中国社区著. -北京:机械工业出版社,2016.11 (云计算与虚拟化 ...
最新文章
- LeetCode实战:存在重复元素
- 这组动画完美演绎了一个程序员从接手新项目到交货的复杂心情
- puppet 类、模块
- linux shell 获取字符串最后一个字符 去掉字符串最后一个字符 去掉末尾一个字符 去掉末尾两个字符
- 【转】sudo命令情景分析
- 先天性异常或智力残疾儿童患者的外显子组和基因组测序:美国医学遗传学与基因组学学院循证临床指南...
- Js/jQuery实时监听input输入框值变化
- ccccccccccccccccccccccccccccccccc
- 管理员权限自动注册Dll文件
- 抖音无水印解析网站源码
- 写c语言win7还是win10好,做设计系统用WIN7还是WIN10?
- MySQL基础学习(三)————SQL语句的常用操作
- android移植(二)-4的尝试移植过程
- 超详细,如何不用任何第三方软件实现电脑与手机文件传输
- python filter和map的区别_js中filter和map的区别
- SAS|where keep rename
- android coreservice作用,android service重启
- 【Shell牛客刷题系列】SHELL1 统计文件的行数:学习wc命令和文本三剑客awk、grep、sed命令
- Arduino 和LCD1602显示屏
- slider unity 头顶血条_Unity开发者教程:人物血条跟随的功能开发(一)
热门文章
- 秒速五厘米(为情怀而补的题)
- ASR语音转文字模型——项目落地
- 如果能理解医生的准确意图,深度学习会是医疗诊断的未来吗?
- 抖音用计算机怎么表白,抖音表白代码
- 《环球》杂志|“宇宙级”漏洞过后,一个技术总裁的忠告……
- [Caffe]: HDF5Data Layer
- SVM学习总结(三)SMO算法流程图及注释源码
- eslint报“Extra semicolon“错误的解决
- pc机未连接手机ANDroid,安卓手机连接电脑没显示的解决教程简述
- C语言贪吃蛇游戏主要功能,C语言游戏-贪吃蛇