Board logo

标题: IBM dashDB Local 从入门到精通,第 4 部分 dashDB local MPP Linux 安装指南(10) [打印本页]

作者: look_w    时间: 2017-12-18 10:19     标题: IBM dashDB Local 从入门到精通,第 4 部分 dashDB local MPP Linux 安装指南(10)

操作系统要求你可以在 Docker 支持的所有 Linux 发行版本环境安装 dashDB Local,下边列出了支持的部分 Linux 发行版本:
针对一些 Linux 发行版本,部署 dashDB Local 之前,需要关闭并禁用一些安全特性:
本指南,我们主要基于 CentOS 7.2 操作系统为例讲述 dashDB local 安装方法,其他 Linux 版本,可能部分操作系统命令有些不同。
我们可以使用下述命令检查系统当前 Linux kernel 版本:
1
2
3
[root@i-8t7n6xp2 ~]# uname -r<br>
3.10.0-327.28.3.el7.x86_64<br>
[root@i-8t7n6xp2 ~]#




1. 永久有效
修改 /etc/selinux/config 文件中的 SELINUX="" 为 disabled ,然后重启。
1
2
3
4
5
6
7
8
9
10
11
# This file controls the state of SELinux on the system.<br>
# SELINUX= can take one of these three values:<br>
# enforcing - SELinux security policy is enforced.<br>
# permissive - SELinux prints warnings instead of enforcing.<br>
# disabled - No SELinux policy is loaded.<br>
SELINUX=disable<br>
# SELINUXTYPE= can take one of three two values:<br>
# targeted - Targeted processes are protected,<br>
# minimum - Modification of targeted policy.Only selected processes are protected.<br>
# mls - Multi Level Security protection.<br>
SELINUXTYPE=disabled




2. 即时生效
1
[root@i-8t7n6xp2 ~]# setenforce 0




1
2
3
4
5
6
7
8
9
[root@i-8t7n6xp2 ~]# <strong>systemctl stop firewalld.service</strong><br>
[root@i-8t7n6xp2 ~]# <strong>systemctl disable firewalld.service</strong><br>
[root@i-8t7n6xp2~]# <strong>systemctl status firewalld.service</strong><br>
firewalld.service - firewalld - dynamic firewall daemon<br>
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)<br>
Active:inactive (dead)<br>
Oct 06 05:00:34 dashdb systemd[1]: Stopped firewalld - dynamic firewall daemon.<br>
Hint: Some lines were ellipsized, use -l to show in full.<br>
[root@i-8t7n6xp2~]#




Docker 要求必须安装 Docker Engine 1.12.6,同时要使用 Device Mapper storage driver            (devicemapper),不要使用其他存储驱动器。
在生产环境,需要配置 direct-lvm mode,具体配置方法,可以参考Configure direct-lvm mode for production
IBM 负责 dashDB Local Docker container 产品支持,用户需要负责 Docker Engine 部分支持。
配置并访问共享存储设备本次示例,我们通过青云的 SDS(软件定义存储)技术,搭建了基于 iSCSI 协议的 Virtual SAN 服务,并分配了 200GB 存储空间。Virtual SAN            服务的 IP 地址为 192.168.1.2。
配置 iSCSI 客户端
在 CentOS 7.2 环境,我们通过如下命令配置 iSCSI 客户端来访问 Virtual SAN:
1
yum install -y iscsi-initiator-utils




可以用 iscsi-iname 命令生成一个 initiator name,并编辑/etc/iscsi/initiatorname.iscsi,加入            InitiatorName:
1
2
3
iscsi-iname (以缺省前缀生成名称)<br>
[root@i-8t7n6xp2 ~]# vi /etc/iscsi/initiatorname.iscsi<br>
InitiatorName=iqn.1994-05.com.redhat:5ccad0ae5bb3




默认情况下,iSCSI 发起方和目标方之间通过端口 3260 连接。
1
2
3
4
[root@i-8t7n6xp2 ~]# iscsiadm -m discovery -t st -p 192.168.1.2<br>
192.168.1.2:3260,1 iqn.2014-12.com.qingcloud.s2:sn.data<br>
[root@i-8t7n6xp2 ~]# iscsiadm -m node<br>
192.168.1.2:3260,1 iqn.2014-12.com.qingcloud.s2:sn.data




iSCSI 发起方和目标方建立连接以后,可以进行登录节点操作。
1
2
3
4
5
[root@i-8t7n6xp2 ~]# iscsiadm -m node -T iqn.2014-12.com.qingcloud.s2:sn.data-p 192.168.1.2 –login<br>
Logging in to [iface: default, target: iqn.2014-12.com.qingcloud.s2:sn.data, portal:192.168.1.2,3260] (multiple)<br>
Login to [iface: default, target:iqn.2014-12.com.qingcloud.s2:sn.data, portal: 192.168.1.2,3260] successful.<br>
[root@i-8t7n6xp2 ~]# iscsiadm -m session<br>
tcp: [1] 192.168.1.2:3260,1 iqn.2014-12.com.qingcloud.s2:sn.data (non-flash)




如果你想在客户端重启时自动登录,请执行下面的命令:
1
[root@i-8t7n6xp2 ~]# iscsiadm -m node -T iqn.2014-12.com.qingcloud.s2:sn.data -p 192.168.1.2 --op update -n node.startup -v automatic




1
2
3
4
5
[root@i-8t7n6xp2 ~]# lsblk<br> NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT<br>
sda 8:0 0 20G 0 disk<br>
sda1 8:1 0 20G 0 part /<br>
sdb 8:16 0 8G 0 disk [SWAP]<br>
sdc 8:32 0 200G 0 disk




从上边显示我们看到,我们分配了/dev/sdc 设备共 200GB 的共享磁盘空间。
安装 IBM Spectrum Scale (GPFS) for IBM dashDB LocaldashDB Local MPP 需要部署 POSIX 兼容的集群文件系统,本次示例,我们安装 IBM Spectrum Scale (GPFS) 4.1.1.11。
1
2
3
4
5
[root@i-si5oq07a ~]# more /etc/hosts<br>
127.0.0.1 localhost.localdomain localhost<br>
192.168.0.2 i-8t7n6xp2 i-8t7n6xp2<br>
192.168.0.3 i-oisebqqf i-oisebqqf<br>
192.168.0.4 i-si5oq07a i-si5oq07a<br>




1. 配置/etc/ssh/sshd_config 文件(每台机器)
1
2
3
4
5
6
7
8
9
vi /etc/ssh/sshd_config<br>
PermitRootLogin yes<br>
StrictModes no<br>
RSAAuthentication yes<br>
PubkeyAuthentication yes<br>
AuthorizedKeysFile .ssh/authorized_keys<br>
# To disable tunneled clear text passwords, change to no here!<br>
PasswordAuthentication yes(否则 SCP 没权限执行,因为限制了不能用密码)<br>
重启 sshd 服务:systemctl restart sshd.service




2. 配置每个节点本身公钥和免密(每台机器)
1
2
[root@i-8t7n6xp2 ~]# ssh-keygen -t rsa<br>
[root@i-8t7n6xp2 ~]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys




现在每台节点本身实现免密
3. 将除 i-8t7n6xp2 之外所有节点的公钥复制到 i-8t7n6xp2,这里是将 i-oisebqqf,i-si5oq07a 的公钥拷贝到 i-8t7n6xp2 的            authorized_keys,目的是实现 i-oisebqqf,i-si5oq07a 登录 i-8t7n6xp2 实现免密,而反过来不行。
1
2
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.0.2 # 在 i-oisebqqf 上执行
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.0.2 # 在 i-si5oq07a 上执行




4. 实现最终集群所有节点互相免密
 现在 i-8t7n6xp2 保存了所有节点的公钥,那么这个时候应该发送 i-8t7n6xp2 上的 authorized_keys 到其他节点
1
2
scp ~/.ssh/authorized_keys 192.168.0.3:~/.ssh/# 在 i-8t7n6xp2 上执行
scp ~/.ssh/authorized_keys 192.168.0.4:~/.ssh/# 在 i-8t7n6xp2 上执行




至此集群 3 台主机任意节点之间免密完成
5. 测试集群 3 台主机任意节点之间可以免密访问
1
2
3
4
5
6
7
8
#!/bin/bash<br>
# Edit node list<br> nodes=" i-8t7n6xp2 i-oisebqqf i-si5oq07a"<br>
# Test ssh configuration<br>
for i in $nodes<br>
do for j in $nodes<br> do echo -n "Testing ${i} to ${j}: "<br>
ssh ${i} "ssh ${j} date"<br>
done<br>
done<br>




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<strong>cd /root/download</strong><br><strong>tar xvfz gpfs-4.1.tar.gz</strong><br><strong>tar xvfz gpfs-4.1.1.11.tar.gz</strong><br>
echo========================================================<br>
echo Install GPFS GA RPMs<br>
echo ========================================================<br>
[root@i-si5oq07a products]#<strong>yum install -y libaio</strong><br>
[root@i-si5oq07a products]# <strong>yum install -yksh</strong><br>
[root@i-si5oq07a products]# <strong>yum install -y kernel-devel</strong><br>
[root@i-si5oq07a products]# <strong>rpm -qa|grep kernel-devel</strong><br>
kernel-devel-3.10.0-514.6.1.el7.x86_64<br> [root@i-si5oq07a products]# <strong>uname-r</strong><br>
3.10.0-514.6.1.el7.x86_64(版本号一定要一致,不一致 reboot 即可)<br>
[root@i-si5oq07a src]#<strong>yum install </strong><strong>-y</strong><strong> imake gcc-c++</strong><br>
[root@i-si5oq07a products]# <strong>rpm -ivh 4.1/*.rpm</strong><br>
[root@i-si5oq07a products]# <strong>rpm -Uvh 4.1.1.11/*.rpm</strong><br>
[root@i-si5oq07a products]# <strong>rpm-qa|grep gpfs</strong><br>
gpfs.base-4.1.1-11.x86_64<br> gpfs.gskit-8.0.50-47.x86_64<br>
gpfs.ext-4.1.1-11.x86_64<br> gpfs.gpl-4.1.1-11.noarch<br>
gpfs.msg.en_US-4.1.1-11.noarch






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0