-
大纲
本教程主要是讲解
GP
分布式数据库的部署相关准备及过程,
以及在部署中遇到
过的问
题解决方案描述。
第一章
准备工作
1.
准备文件:
虚拟机三个主机:
CentOS release 6.5
(Final)
GP
安装包:
greenplum-
db-4.3.5.2-build-1-RHEL5-x86_
初始化文件:
gpinitsystem_config
2.
这里
GP
部署是在虚拟机上实现的,
一共三台虚拟机。
虚拟机之间要实
现通信是一个
非常重要的问题,
否则在所有的用户和配置文件都
正确配置以后,
也会因为通信问题产生错
误。这里主要列出在安
装中遇到的重要问题,其他的一般配置按照第二节配置过程描述。
安装中要注意的问题包括,
设置静态
ip
< br>,
关闭防火墙,
建立用户及其分配用户组,
配置
每个主机的所有集群中的主机地址和主机名的映射文件
< br>/etc/hosts
,具体的配置过程会在下
面章节给
出。
第二章
配置过程
1.
设置静态
IP
若不设置静态
IP
,则虚拟机的
IP
地址可能会发生变动,在所有的主节点和子节点上配
置的主机映射文件就会失效,导致不
能找到主机,另外,在主节点
Master
上配置的子节点
p>
表
segment
也找不到主机。
设置静态
IP
如下:
vim /etc/sysconfig/network-
scripts/ifcfg-eth0
按照这个顺序,图
2
.1
静态
IP
配置,将除了
HWADDR
、
UUID
之外的其他项更改。其中
IPADDR
、
NETMASK
、
GATEWAY
是
可以在电脑网络管理中可以找到,如图
2.1Windows
网
络管
理
图
2.1
静态
IP
配置
2.2
Windows
网络管理
2.
关闭防火墙
在数据库初始化之前一定要关闭防火墙,
避免主机之间通信中断。
典型的问题有,
在所
有配置若都完全正确,
防火墙未关闭时候,
初始化中提示输入
y
之后,
接下来后期会报如下
错误。
< br>
2.3
未关闭防火墙报错
正确解决方法是<
/p>
root
权限关闭防火墙即可:
[root@duancy-
host01 ~]# service iptables stop
[root@duancy-host01 ~]# service
ip6tables stop
3.
修改
/etc/
文件
将
/etc/
的内容修改为如下内容,重启生效
p>
(
或执行
sysctl
-p
生效
)
(从此处开始即对系统文
件和用户配置文件做相应配置。
)
=
5000000000
=
4096
=
4
=
250
5120000
100
20480
#SEMMSL
SEMMNS SEMOPM SEMMNI
=
1
_uses_pid =
1
=
65536
=
65536
=
2048
_syncookies
=
1
_forward =
0
_source_route =
0
_tw_recycle =
1
_max_syn_backlog =
4096
_filter =
1
_filter =
1
_filter =
1
_local_port_range =
1025
65535
_max_backlog =
10000
mmit_memory
=
2
4.
修改
/etc/security/
配置文件
在
/etc/security/
< br>配置文件末尾处增加如下内容:
* soft
nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard
nproc 131072
* soft core unlimited
注意:
对
于
RedHa
t6.x
系
统
,
还
需要将
/etc/security/limits.d/
文件中
的
1
024
修改
为
131072
。
5.
修改
Linux
磁盘
I/O
调度策略
Linux
磁盘
I/O
调度器对磁盘的访问支持不同的策略,默认的为
CF
Q
,
GP
建
议
设置为
deadline
要
查
看某
驱动
器的
p>
I/O
调度策略,可通过如下命令查看,下面示例的为正
确
的配置:
# cat
/sys/block/{devname}/queue/scheduler
显示:
noop anticipatory
[deadline] cfq
若不能如上显示,则需要做如下修改。
修改磁
盘
I/O
调度策略的方法为,
修改
/boot/grub/
文件的启
动
参数,在
kernel
一行的
最后追加
”elevator=deadline”
< br>,如下
为
正确配置的示例:
[root@gp_test1 ~]# vi /boot/grub/
# generated by anaconda
#
# Note that you do not have to rerun
grub after making changes to this file
# NOTICE:
You have a /boot
partition.
This means that
#
all kernel and initrd
paths are relative to /boot/, eg.
#
root (hd0,0)
#
kernel /vmlinuz-version ro root=/dev/vg00/LV_01
#
initrd /
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/
hiddenmenu
title Red Hat
Enterprise Linux Server (5)
root (hd0,0)
kernel /5 ro
root=/dev/vg00/LV_01 rhgb
quiet
elevator=deadline
initrd /
注意:修改<
/p>
该
配置文件需
谨
慎,
错误
的修改会
导
< br>致重启操作系
统
失
败
。
6.
每个磁盘设备文件需要配置
read-
ahead(blockdev)
值为
65536
因为我是在个人虚拟机上安装,整个
read-
ahead
值设置使用了默认值,没有做更改。
官方文档的推荐
值为
16384
,但
译
者
认为应该为
65536
更合理,
该值设
置的是
预读
扇区数,
实际上
预读的字节数是
blockdev
设置除以
2
,
而
GP
缺省的
blocksize
为
< br>32KB
,
刚好与
65536(
32768B/32KB)
对应
。
检查某块磁盘的
read-
ahead
设置
:
# blockdev --getra devname
-
-
-
-
-
-
-
-
-
上一篇:这些传遍街头巷尾的广告神曲你听过吗?
下一篇:药理学专业词汇中英文对照