SciDB 15.7 centos6.5 安装教程

SCIDB集群安装

一、环境配置 安装前的准备

Ip地址

节点名称

主从关系

192.168.100.193

Work0

主 coordinator

192.168.100.182

Work1

192.168.100.183

Work2

192.168.100.189

Work3

192.168.100.195

Work4

1.1配置/etc/hosts   所有节点

Root # vi /etc/hosts 添加如下信息

#ipadd

192.168.100.193  work0

192.168.100.182  work1

192.168.100.183  work2

192.168.100.189  work3

192.168.100.195  work4

1.2添加scidb用户组  所有节点

root # groupadd scidb   增加用户组

root # useradd –g scidb scidb  增加用户到用户组

root # passwd scidb           修改scidb密码

root # visudo                 修改sudo用户

root ALL = (ALL)  ALL 下面添加

scidb ALL=ALLALL

1.3yum源的添加 所有节点

root # cd /etc/yum.repo.d/

root # yum –y install wget

-------------------------devtoolset-3的源----------------------------

root #wget https://www.softwarecollections.org/en/scls/rhscl/devtoolset-3/epel-6-x86_64/download/rhscl-devtoolset-3-epel-6-x86_64.noarch.rpm


root # rpm –ivh rhscl-devtoolset-3-epel-6-x86_64.noarch.rpm  (安装rpm)


root# rm –rf rhscl-devtoolset-3-epel-6-x86_64.noarch.rpm   (删除rpm包 没用了就删除哦)


----------------java-common的源------可能网络环境不好多尝试几次-----------

root # wget https://www.softwarecollections.org/repos/rhscl/rh-java-common/epel-6-x86_64/noarch/rhscl-rh-java-common-epel-6-x86_64-1-2.noarch.rpm


root # rpm –ivh rhscl-rh-java-common-epel-6-x86_64-yu1-2.noarch.rpm    (安装)

root # rm –rf rhscl-rh-java-common-epel-6-x86_64-1-2.noarch.rpm (删除)

 

可以使用scp   *.rpm  work1:/etc/yum.repo.d/  发送过去

   root # ls  会出现 表示安装成功

rhscl-rh-java-common-epel-6-x86_64.repo   rhscl-devtoolset-3-epel-6-x86_64.repo


1、4 sudo vi /etc/selinux/config

          selinux=disabled

二、coordinator 节点配置

2.1.1 互信

#su scidb //切换用户

安装需要的软件包 yum安装就可以了

$ sudo yum -y install subversion expect openssh-server openssh

启动服务 开机自启

$ sudo chkconfig --add sshd

$ sudo chkconfig sshd on

$ sudo service sshd start

$ sudo vi /etc/sysconfig/iptables 添加如下语句

-A INPUT -m state --state NEW -m tcp -p tcp --dport 1239 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

 $ sudo service iptables restart       重启防火墙服务

2.1.2 下载源码

http://forum.paradigm4.com/uploads/db6652/original/1X/af46ea0924d43cd943a10a3c83ecf778800bf2a0.tgz

将源码放在/home/scidb 目录下

$ sudo tar –xvzf scidb-15.7.0.9267.tga

$mv scidb-15.7.0.9267 scidbtrunk              //改文件名字

 

2.1.3 无密码传输配置

~

$ cd ~

$ ssh-keygen #不输入任何数据 默认

$ chmod 775 ~

$ chmod 755 ~/.ssh

$ exec ssh-agent bash

$ ssh-add

 

$ cd scidbtrunk//无密传输

$ deployment/deploy.sh access root "" "" work0 work1 work2 work3 work4

$ deployment/deploy.sh access scidb "" "" work0 work1 work2 work3 work4

----------------------有几个写几个节点--------------------------

---测试是否可行-------------

$ ssh work1 date

$ ssh work2 date

------------------------全部机器重新启动一遍------------------------

2.2 coordinator 环境配置 (work0 表示coordinator节点的IP地址)

$cd scidbtrunk

$ deployment/deploy.sh prepare_toolchain work0

-----------这一步控制好libpqxx的版本------------

rpm -e --nodeps  卸载掉全部的libpqxx-1.4.的版本

$sudo sed -i '/[epel]/a exclude=libpqxx*' /etc/yum.repos.d/epel.repo

重新执行上述语句

也可以跳过 这就需要自己手动安装libpqxx包

wget https://downloads.paradigm4.com/centos6.3/3rdparty/libpqxx-3.1-1.src.rpm

wget https://downloads.paradigm4.com/centos6.3/3rdparty/libpqxx-devel-3.1-1.x86_64.rpm

wget https://downloads.paradigm4.com/centos6.3/3rdparty/libpqxx-3.1-1.x86_64.rpm

使用 rpm -ivh *.rpm 安装 (卸载那个安装那个就好)

---------------------------------------------

$ deployment/deploy.sh prepare_coordinator work0

$ deployment/deploy.sh prepare_chroot scidb work0

------------------在这一步可能执行到mock 的安装报错------------------------

--------------使用如下方式解决 

wget https://downloads.paradigm4.com/centos6.3/3rdparty/mock-1.1.24-1.noarch.rpm

wget https://downloads.paradigm4.com/centos6.3/3rdparty/mock-1.1.24-1.src.rpm

1)、sudo rpm -e --nodeps mock-*.noarch (卸载掉两个包)

2)、sduo rpm -ivh mock-1.1.24-1.noarch.rpm

3)、sudo rpm -ivh mock-1.1.24-1.src.rpm (其实失败就在这里 因为这个安装不成功) 

安装完成后 直接继续向下执行 

------------------------------------------------------------------------------------------------

2.3 postgres安装

$cd scidbtrunk

deployment/deploy.sh prepare_postgresql postgres postgres 192.168.100.0/24 work0

---------------------只写work0-----------------------------------

其中 192.168.100.0/24 会添加传递在/var/lib/pgsql/data/pg_hba.conf 文件内

可以通过$ ifconfig | grep Mask 查看

 

2.4确保postgres用户可以访问scidb源码

$ sudo usermod –G scidb –a postgres

$ chmod g+rx scidbtrunk

$ sudo -u postgres ls /home/scidb/data/scidb

-----------------------------这里配置postgres的文件--------------------------------

$su - 

# cd /var/lib/pqsql/data

# vi postgresql.confg 

    port=5432 (去掉#注释)

#vi pg_hba.conf

   将所有节点的IP加入进去

 host   all alll 192.168.10x.X/24   trust

#service postgresql restart

------------------------------------------------------------------------------------------------

------------------可以不配置----------------------------------------------------------------

2.5 挂载ssd

cd scidbtrunk
rm -fr stage
mkdir stage
sudo echo "tmpfs scidbtrunk/stage tmpfs size=8G,nr_inodes=80k" >> /etc/fstab
sudo mount -a

 ---------------------------------------------------------------------------------------------------

2.6 配置环境

$ vi .bashrc

export SCIDB_VER=15.7 
export SCIDB_SOURCE_PATH=scidbtrunk//
注意路径
export SCIDB_BUILD_PATH=$SCIDB_SOURCE_PATH/stage/build (接下来的make -j4 要在这个目录下执行)
export SCIDB_INSTALL_PATH=/opt/scidb/$SCIDB_VER
export SCIDB_BUILD_TYPE=RelWithDebInfo
export PATH=$SCIDB_INSTALL_PATH/bin:$PATH

$ source .bashrc//生效

 

2.7 安装软件包—build packages

$cd sicdbtrunk

$./run.py setup

$ cd stage/build

$ make -j8 (八线程编译安装)

$ ./deployment/deploy.sh    build_fast      /tmp/packages

2.8 安装scidbrpm

$ cd scidb

$ ./deployment/deploy.sh scidb_install /tmp/packages work0 work1 work2 work3 work4

-----------------有几个节点 就写几个几点------------------------------------------如果提示缺少安装的rpm包 就用yum安装主从节点都有可能---------------------------------------------------------

-------这就体现出之前配置的yum源的好处也可能不缺包 看运气了-------------------------

--------------------如果提示某个节点没有某个文件 我的解决方案如下------------------------

#cd /opt/scidb

#tar czvf   15.7.tar.gz 15.7/     (将15.7下的全部文件打包为15.7.tar.gz) 

#scp 15.7.tar.gz work1:/opt/scidb/     (scidb/目录你手动创建哈 )

#scp 15.7.tar.gz work2:/opt/scidb/

有几个子节点都传递过去

[ @ work1] # tar -xvzf 15.7.tar.gz (每个节点分别解压)

至此所有的包都手动传递过去了,然后我们可以继续执行就好了

-----类似于greenplum传输安装包的安装方法---------参--------考----------------------------

------------------------------------------------------------------------------------------------------------------

初始化scidb数据库

  $cd scidbtrunk

  $ ./deployment/deploy.sh scidb_prepare scidb"scidb" mydb1 mydb2 mydb3
/home/scidb/mydb-DB 2 default 1 work0 work1 work2 work3 work4

 -------------可能提示缺省python的扩展包 使用easy_install package_name------------------

Scidb    scidb 数据库用户

"scidb"  scidb 数据库密码

mydb1   postgres数据库用户

mydb2   postgres 数据库的密码

mydb3   postgres 数据库

-------密码提示表示密码----错误------------

取消

--------------------------------------------------------------------------------------------------------------------

-----------------------------多修改重复几次就好了---------------------------------------------------------

我的执行语句为

./deployment/deploy.sh scidb_prepare scidb "scidb" scidb scidb scidbpg 
/home/scidb/mydb-DB 2 default 1 work0 work1 work2 work3 work4

 

在使用这条语句的时 要先执行下面的语句

scidb设置为与postgres同等级的超级用户

$ sudo -u postgres createuser --superuser scidb

为访问该数据库设置密码

$ psql –d postgres

Postgres # CREATE DATABASE scidbpg OWNER scidb;

Postgres # \c scidbpg

Scidbpg# \password scidb回车

//输入密码(scidb

Scidb# \du        查看是否添加成功 用户列表

 

启动 关闭 scidb数据库

$ scidb.py startall scidbpg

$ scidb.py stopallscidbpg

 

$iquery

AFQ#



单节点环境变量的配置

$vi .bashrc

export SCIDB_VER=<your-scidb-version> # i.e. 15.7
export SCIDB_INSTALL_PATH=<dev_dir>/scidbtrunk/stage/install
export SCIDB_BUILD_TYPE=Debug
export PATH=$SCIDB_INSTALL_PATH/bin:$PATH
export MALLOC_CHECK_=3
export MALLOC_PERTURB_=127




缺省 argparse模块

wget https://bootstrap.pypa.io/ez_setup.py -O - | python

easy_install argparse

 

 

上一篇:跟我一起ggplot2(1)


下一篇:《Java EE 7精粹》—— 2.5 非阻塞I/O