暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GP安装脚本-6版本

原创 秦利勇 2021-06-23
1306

下载 https://network.pivotal.io/products/pivotal-gpdb#/releases/574280/file_groups/2410

1.8 配置YUM源,安装必备的包

配置本地yum源
cd /etc/yum.repos.d/
rm -rf *.repo
vi os.repo

[CentOS6]
name=Enterprise Linux 6
baseurl=file:///media/CentOS_6.9_Final
enabled=1
gpgcheck=0

yum clean all

yum repolist 检查是否配置正确

–该rpm包就在Package路径下
yum install -y lrzsz tree xfsprogs --XFS系统文件命令

yum install -y krb5-devel libyaml

1.2 关闭FIREWALL和Disable SElinux (3台机器) sestatus 光标行dd删除一行,之后大写O在光标行之上插入一行

vi /etc/selinux/config
SELINUX=disabled

关闭防火墙 检查 chkconfig --list | grep ip
chkconfig iptables off
chkconfig ip6tables off

1.1 配置 vi /etc/hosts (3台机器) G最后一行 $行尾
192.168.56.190 dsj dsj
192.168.56.191 dsj1 dsj1
192.168.56.192 dsj2 dsj2

(主机ip地址  主机名  hostlist配置中的名字)

cat /etc/sysconfig/network

1.5 控制文件 将原有的 kernel.shmmax 和 kernel.shmall 注释了 修改后 sysctl -p 使之生效 (3台机器)
[root@dsj ~]# vi /etc/sysctl.conf
kernel.shmmax = 500000000
kernel.shmmni = 4096
kernel.shmall = 4000000000
kernel.sem = 250 512000 100 2048
kernel.sysrq = 1
kernel.core_uses_pid = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.msgmni = 2048
net.ipv4.tcp_syncookies = 1
net.ipv4.ip_forward = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.conf.all.arp_filter = 1
net.ipv4.ip_local_port_range = 1025 65535
net.core.netdev_max_backlog = 10000
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
vm.overcommit_memory = 2

#vm.overcommit_memory 参数为0,1,2 0:表示内核将检查是否有足够的可用内存供应用进程使用;
1:表示内核允许分配所有的物理内存
2:表示内核允许分配超过所有物理内存和交换空间总和的内存
(必须为2,否则后续检查不通过)

[root@dsj ~]# vi /etc/security/limits.conf (3台机器)

End of file

  • soft nofile 65536
  • hard nofile 65536
  • soft nproc 131072
  • hard nproc 131072

[root@dsj ~]# vi /etc/security/limits.d/90-nproc.conf [将1024 修改为131072] (3台机器)

  • soft nproc 131072

将所有用户限制调大

ulimit -u 用普通用户查看

1.3 设置预读块的值为65536 (3台机器) 需重启
vi /etc/rc.local
/sbin/blockdev --setra 65536 /dev/sda

#所有磁盘都需要调整 /sda /sdb /sdc
/sbin/blockdev --getra /dev/sda
#查看预读块,默认大小为256 ,官网建议修改为16384,但实际应该为65536

1.4 调整IO性能为deadline (3台机器) 需重启

vi /boot/grub/grub.conf
kernel elevator=deadline rhgb quiet

修改kernel所在行,在最后配置中添加上 elevator=deadline 即可

IO性能: deadline 数据库性能最好
cfq 默认的算法:绝对公平算法
cat /sys/block/sda/queue/scheduler

1.10 ntp服务 配置
服务端

vi /etc/ntp.conf 注释所有的server端,增加如下配置

restrict 192.168.56.190 mask 255.255.255.240 nomodify notrap

service ntpd start --启动服务
chkconfig ntpd on --配置开机启动
检查 chkconfig --list | grep ntpd

客户端
vi /etc/ntp.conf 注释所有的server端,增加如下配置

server 192.168.56.190

service ntpd start 启动服务
chkconfig ntpd on --配置开机启动
检查 chkconfig --list | grep ntpd

ntpq -p --检查

1.6 创建用户和组 cat /etc/group (3台机器)

groupadd -g 530 gpadmin
useradd -g 530 -u530 -m -d /home/gpadmin -s /bin/bash gpadmin

passwd gpadmin

/tmp

rpm -ivh greenplum-db-6.4.0-rhel6-x86_64.rpm

chown -R gpadmin:gpadmin /usr/local/greenplum-db*

–切换到gpadmin用户

source /usr/local/greenplum-db/greenplum_path.sh

ssh-keygen
ssh-copy-id dsj1
ssh-copy-id dsj2

1.7 创建 hostlist (每台机器)
su - gpadmin
mkdir gpdata
cd gpdata
mkdir gpmaster gpdatap1 gpdatap2 gpdatam1 gpdatam2

cd ~
mkdir conf
cd conf
vi hostlist
dsj
dsj1
dsj2

vi seg_hosts
dsj1
dsj2

2.2 建立通信 (主节点) 密码 gpadmin 用户
source /usr/local/greenplum-db/greenplum_path.sh
gpssh-exkeys -f /home/gpadmin/conf/hostlist 密码gpadmin

source /usr/local/greenplum-db/greenplum_path.sh
gpssh -f /home/gpadmin/conf/hostlist -e ‘ls /usr/local/’

gpcheckperf -f /home/gpadmin/conf/seg_hosts -r N -d /tmp

cat >> /home/gpadmin/.bashrc << EOF
source /usr/local/greenplum-db/greenplum_path.sh
EOF


1.11 GP推荐使用XFS系统,如将数据组文件磁盘挂载后使用XFS文件系统
测试阶段未执行此步骤
mkfs.xfs -f /dev/sdb

vi /etc/fstab
/dev/sdb /data1 xfs rw,noatime,inode64,allocsize=16m 1 1


–快照2 环境已准备
2.1 安装
[root@]cd /home/gpadmin
[root@]$ ./greenplum-db-5.0.0-alpha.1-build-1-rhel6-x86_64.bin
/opt/greenplum/greenplum-db-5

全部为yes 直至安装完毕

chown -R gpadmin:gpadmin /opt/greenplum

2.3 环境变量 source .bash_profile (每台机器) gpadmin 用户

source /usr/local/greenplum-db/greenplum_path.sh
export MASTER_DATA_DIRECTORY=/home/gpadmin/gpdata/gpmaster/gpseg-1
export PGPORT=2345
export PGDATABASE=testdb
alias cl=“clear”

2.4 单点主机命令

vi /home/gpadmin/conf/gpinitsystem_config

[gpadmin@mdw ~]$ cat /home/gpadmin/conf/gpinitsystem_config 主节点
ARRAY_NAME=“Greenplum”
SEG_PREFIX=gpseg
PORT_BASE=33000
declare -a DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatap1 /home/gpadmin/gpdata/gpdatap2)
MASTER_HOSTNAME=dsj
MASTER_DIRECTORY=/home/gpadmin/gpdata/gpmaster
MASTER_PORT=2345
TRUSTED_SHELL=/usr/bin/ssh
MIRROR_PORT_BASE=43000
REPLICATION_PORT_BASE=34000
MIRROR_REPLICATION_PORT_BASE=44000
declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/gpdata/gpdatam1 /home/gpadmin/gpdata/gpdatam2)
MACHINE_LIST_FILE=/home/gpadmin/conf/seg_hosts


初始化 主节点
gpinitsystem -c /home/gpadmin/conf/gpinitsystem_config -h /home/gpadmin/conf/seg_hosts -D

2.5 启动和停止数据库测试是否能正常启动和关闭
$ gpstart -a
$ gpstop -a

2.6 访问数据库
psql -d postgres

$ psql
CREATE DATABASE testdb;
\c testdb;

select datname,datdba,encoding,datacl from pg_database;

$ psql -d testdb

–修改密码 原来没有默认密码

create role dbuser with login password ‘postgres’;
select * from pg_shadow;

–查看集群状态
select a.dbid,a.content,a.role,a.port,a.hostname,b.fsname,c.fselocation
from gp_segment_configuration a,pg_filespace b,pg_filespace_entry c
where a.dbid=c.fsedbid
and b.oid=c.fsefsoid
order by content;

select * from gp_segment_configuration where content=’-1’;

–测试建表、插入数据、查询

create table test1(name text,id integer) DISTRIBUTED BY(name);
\d test1 查看表结构
insert into test1(name,id) values(‘test1’,1);
insert into test1(name,id) values(‘test2’,2);
select name,id from test1;

退出psgl:\q

#################################################

find / -name postgresql.conf
find / -name pg_hba.conf

4.3 修改 postgresql.conf 文件 修改数据库默认接收的监听地址与端口参数
cd /opt/pgsql/data

listen_addresses = ‘*’

4.4 修改 pg_hba.conf 文件 告诉数据库服务器允许什么样的客户端地址连接
在IPv4 local connections:配置端增加如下一行
host all all 192.168.56.0/24 md5

vim /data/master/gpseg-1/pg_hba.conf
host testdb dbuser 192.168.56.0/24 md5
host all all 192.168.56.0/24 md5

$psql -U dbuser -W -h 192.168.56.190 -d testdb

select * from pg_shadow;
GPCHECK_ERROR host(None): utility will not check all settings when run as non-root user

greenplum 默认安装的pg版本太低了,pgadmin4只支持9.2以上的版本

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论