当前位置: 首页 > wzjs >正文

南通网站排名公司江苏省交通运输厅门户网站建设管理

南通网站排名公司,江苏省交通运输厅门户网站建设管理,专业团队搞笑图片,南昌做网站和微信小程序的公司1.环境: 1.一台keylin10的服务器,部署两个docker容器,实现双节点集群部署; 2.创建Docker 网络 为Greenplum 容器创建一个自定义的 Docker 网络,这样可以方便地进行容器间的通信。 docker network create --subnet1…

1.环境:

1.一台keylin10的服务器,部署两个docker容器,实现双节点集群部署;

2.创建Docker 网络

为Greenplum 容器创建一个自定义的 Docker 网络,这样可以方便地进行容器间的通信。

docker network create --subnet=172.19.0.0/16 gpnet

3.创建四个 Docker 卷,对应两个docker容器的数据挂载

docker volume create gpdata_a

docker volume create gpmaster_a

docker volume create gpdata_b

docker volume create gpmaster_b

 4.启动两个Docker容器

4.1a容器 

docker run --privileged=true -itd \

  --name gpdb_a \

  --hostname gpdb_a \

  --network gpnet \

  --ip 172.19.0.2  \

  -v gpmaster_a:/opt/greenplum/data \

  -v gpdata_a:/data \

  -v /sys/fs/cgroup:/sys/fs/cgroup \

  -p 5433:5432 \

  -p 2222:22 \

  -p 28080:28080 \

  -e TZ=Asia/Shanghai \

  lhrbest/greenplum:7.2.0 \

  bash -c "systemctl disable systemd-modules-load.service dnf-makecache.service && /usr/sbin/sshd  && tail -f /dev/null"

 

4.2b容器  

docker run --privileged=true -itd \

  --name gpdb_b \

  --hostname gpdb_b \

  --network gpnet \

  --ip 172.19.0.3 \

  -v gpdata_b:/data \

  -v gpmaster_b:/opt/greenplum/data \

  -v /sys/fs/cgroup:/sys/fs/cgroup \

  -p 5434:5432 \

  -p 2224:22 \

  -p 28081:28080 \

  -e TZ=Asia/Shanghai \

  lhrbest/greenplum:7.2.0 \

  bash -c "systemctl disable systemd-modules-load.service dnf-makecache.service && /usr/sbin/sshd  && tail -f /dev/null"

 

5.更新 /etc/hosts 文件

进入每个容器内部更新 /etc/hosts 文件,添加其他节点的信息。例如,在 gpdb_a 和 gpdb_b 中都执行以下命令:

echo "172.19.0.2 gpdb_a" >> /etc/hosts

echo "172.19.0.3 gpdb_b" >> /etc/hosts

echo "172.19.0.2 gpdb7" >> /etc/hosts

 

​​​​​​​6.修改sshd_config 配置

 #vi /etc/ssh/sshd_config

 # 启用 root 登录(默认可能被禁用)

PermitRootLogin yes

# AllowUsers 是白名单机制:只有列出的用户才能通过 SSH 登录。用户名之间用 空格 分隔。

AllowUsers gpadmin root

PasswordAuthentication yes

ChallengeResponseAuthentication yes

# 使用 PAM 进行认证(通常保持开启)

UsePAM yes

 

6.1重新启动

pkill -f /usr/sbin/sshd

/usr/sbin/sshd

 

6.2测试本地登录

ssh gpadmin@gpdb_a

 

​​​​​​​7.修改/etc/pam.d/sshd

检查 /etc/pam.d/sshd 文件

注释掉或删除以下行(如果存在):

auth       required     pam_nologin.so

 

​​​​​​​8.修改sysctl.conf

Linux 内核需要开启以下参数以支持容器间的通信:

#vi  /etc/sysctl.conf

net.bridge.bridge-nf-call-iptables = 0

net.bridge.bridge-nf-call-ip6tables = 0

net.bridge.bridge-nf-call-arptables = 0

再执行

sysctl -p

​​​​​​​9.设置 SSH 密钥认证

为了使 Greenplum 可以跨节点操作,需要设置 SSH 无密码登录。可以在 gpdb_a 上生成密钥对,并将其公钥复制到所有节点(包括自身)。

在 gpdb_a:

ssh-keygen -t rsa -b 4096 -N '' -f ~/.ssh/id_rsa

 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

for host in gpdb_a gpdb_b; do   ssh-copy-id gpadmin@$host; done

命令解析

cat ~/.ssh/id_rsa.pub: 这部分命令读取 ~/.ssh/id_rsa.pub 文件的内容,并将其输出到标准输出(通常是终端屏幕)。

>> ~/.ssh/authorized_keys: 这里使用了重定向操作符 >>。它将前面命令的标准输出追加(append)到指定的文件中,而不是覆盖该文件。如果目标文件不存在,则会创建该文件。因此,这条命令的作用是将当前用户的 SSH 公钥添加到 authorized_keys 文件的末尾。

 10.创建主机列表文件(例如:hostfile)

echo "gpdb_a" > ~/hostfile_exkeys

echo "gpdb_b" >> ~/hostfile_exkeys

注:

使用 > 操作符会覆盖文件中的原有内容。

使用 >> 操作符会在文件末尾追加内容,而不会删除已有的数据。

 11.手动创建两个节点配置文件

有两个 Segment 主机,每个3个,配置如下:

seg1 上运行 3 个 Primary Segment 实例

seg2 上运行 3 个 Primary Segment 实例

ARRAY_NAME="Greenplum Data Platform"

SEG_PREFIX=gpsne

PORT_BASE=40000

declare -a DATA_DIRECTORY=(

/data/primary

/data/primary

/data/primary   

    /data/primary   

    /data/primary   

/data/primary  )

declare -a MIRROR_DATA_DIRECTORY=(

    /data/mirror    

    /data/mirror    

    /data/mirror    

    /data/mirror    

    /data/mirror    

    /data/mirror    

)

MASTER_HOSTNAME=gpdb_a

MASTER_DIRECTORY=/opt/greenplum/data/master

MASTER_PORT=5432

TRUSTED_SHELL=ssh

CHECK_POINT_SEGMENTS=8

ENCODING=UNICODE

DATABASE_NAME=czpgdb

​​​​​​​11.1Segment 的主要作用包括:

作用

描述

存储数据

每个 Segment 实例负责存储一部分数据(按分布键划分)

执行查询

查询会被分发到各个 Segment 并行执行,提升整体性能

提供高可用性(可选)

可为每个 Primary Segment 配置 Mirror Segment 来实现故障转移

负载均衡

多个 Segment 可以分散 I/O 和 CPU 压力,提高并发处理能力

​​​​​​​11.2Segment 多的优点:

更高的并行度:更多的 Segment 可以同时处理更多数据块,加快查询速度。

更好的负载均衡:避免某些节点成为瓶颈。

更灵活的数据分布:适合大规模数据集的管理。

​​​​​​​11.3Segment 多的缺点:

缺点

原因

资源消耗增加

每个 Segment 实例都需要一定的内存、CPU 和磁盘开销

管理复杂度上升

Segment 越多,维护、监控、扩容等操作越复杂

元数据负担加重

系统表和目录信息会变得更大,影响启动和恢复速度

通信开销变大

Segment 之间通信(Interconnect)会随着数量增加而变慢或不稳定

​​​​​​​11.4最佳实践建议

场景

建议

小型测试环境

每台主机 1~2 个 Segment

中小型生产环境

每台主机 2~4 个 Segment

大型生产环境

每台主机 4~8 个 Segment(需高性能服务器支持)

启用 Mirroring

Segment 数量翻倍,Mirror 分布在不同主机上

使用 SSD 或 NVMe 磁盘

可适当增加 Segment 数量以充分利用 I/O 能力

问题

答案

Segment 是什么?

是 Greenplum 中存储数据和执行查询的基本单元

Segment 越多越好吗?

不是,要根据硬件、数据量、查询负载综合考虑

如何选择合适数量?

每台主机 2~8 个,总数量根据集群规模决定

Segment 对性能有何影响?

多则并行能力强,但资源消耗和通信开销也更高

​​​​​​​11.5Primary vs Mirror Segment

类型

作用

是否必须

Primary Segment

存储实际数据并参与查询处理

✅ 必须

Mirror Segment

提供数据冗余,用于故障切换

❌ 可选(但推荐)

 

​​​​​​​12.初始化 Greenplum 数据库

使用 gpinitsystem 命令初始化数据库系统。在 gpdb_a 上运行:

#su - gpadmin

gpinitsystem -c  /home/gpadmin/gpinitsystem_config  -h /home/gpadmin/hostfile_exkeys

http://www.dtcms.com/wzjs/811814.html

相关文章:

  • 商业网站的建设手机开发安卓软件
  • 贵州专业网站建设公司哪家好上海本地app推荐
  • 濮阳网站建设价格做网站 图片格式
  • 网站里的内容都是什么作用wordpress 制作单页
  • 网站怎么做mip技术未注册过的好听的商标名
  • 免费 网站建设如何建立一个网站平台网站
  • 做分析图的地图网站数据库网站开发外文翻译
  • 公司建设网站的费用网站建设合同注意
  • 最受欢迎国内设计网站常见的管理系统
  • 浙江网站建设模板网站天眼查 企业查询网页
  • 上海建设监理协会网站做衣服的网站
  • 有没有人通过网站建设卖东西的dw做的网站怎么发布
  • 网站建设制作确认单电子工程王力卓
  • 网站建设佛山怎么做系部网站首页
  • 网站首页自动下拉广告网站建设 目的
  • 计算机做网站开题报告荣耀借壳上市公司
  • 搭建自己的个人网站源码之家源码
  • 免费企业营销网站制作路由器 wordpress
  • 做网站需要懂代码么沈阳新联会是什么组织做什么
  • 培训学校 网站费用网站空间服务多少钱
  • 旧衣收购哪个网站做的好文库网站建设开发
  • 互联网建站怎么做网站滑动图片部分
  • 东莞一站式网站建设优书网怎么了
  • 用手机搭建自己的网站企业网站内容模块
  • 做网站的赚钱吗西安最好的室内设计公司
  • 百度24小时人工电话如何设定旅游网站seo核心关键词
  • 门户网站建设目的wordpress客户端连接数据库
  • 钉钉如何做自己的网站长沙seo 优化选智投未来no1
  • 金华企业网站建设百度推广联系人
  • 怎么制作网站vi页面北京建设集团网站首页