在datastage中.配置好c盘中c盘hosts文件件后,登录还是出现未定义角色

Datastage开发经验
Datastage开发经验
第一章 Datastage连接配置
DS服务器搭建好后,需要在客户端配置方可连接(DS服务器搭建没做过)
首先,在C:\Windows\System32\drivers\etc\hosts文件中加上服务器IP或计算机名和DS的项目名称。
,选择服务层主机名,输入用户名密码,然后在项目中选择对应的开发项目,确定后进入DS开发界面
目录下建立自己的开发目录层级
job调用关系
最常用到的是并行作业和序列作业,并行作业为最小job单位,序列作业既可以包装和调用多个并行作业,也可以包装和调用多个序列作业。
job能调用的组件
在Stage Types
文件夹下,Parallel文件夹下的各组件并行作业可以调用,Sequence下的组件序列作业可以调用。
例如:新建一个并行作业,将Sequence的组件拖上去后,出现无法调用的图标,表示此组件在并行作业不可用。
如下图,可用的组件拖上去是这种图标
在进行开发时,使用组件选用板更方便,打开选用板方法:查看—选用板
选用板如下图,其实就是把Stage
Types里面的内容以另一种形式展现出来
例如:开发一个表对表的数据抽取,从s_orduna表中抽取数据,然后对抽取的数据进行过滤,满足条件company_code=’’的插入表s_orduna_full,不满足条件company_code=’’的插入s_orduna_error
新建并行作业,将选用板里面的注释组件拖进去,写上此job的功能,建议用英文注释
将数据库组件拖进去,db2使用db2 connector
将过滤组件拖进去
各组件在没有连接时,一些属性是不会显示的,因此用处理箭头把他们连接起来,按住鼠标右键,从一个组件开始,到另一个组件时放开,就可以把组件连起来
修改组件名,双击组件,在阶段—阶段名称,修改即可
也可以左键单击一下组件,间隔1秒后再左键单击,可以直接修改
将表定义装入列属性(注:这里既可以手动输入select的表定义,也可以从Table
Definitions装入,Table
Definitions的相关操作见第7节)
注意,去掉“确保全部Char列使用Unicode”的勾,否则抽取的记录可能会乱码
从表中抽取数据
各属性填写:
一般不需要填,具体作用没研究过
数据库名称,oracle就不知道了可能需要配置
(没讲解的属性默认值就可以,具体什么用处自己去研究)
Genrate SQL
选择“是”表示使用DS自动生成的sql,根据前面导入的列进行select,此项选“是”,下面的SQL选项就会失效,此时抽取的是表中所有的记录,不会做处理和过滤
&&&&&&&&&&&&
选择“否”,表示不使用DS自动生成的sql,就需要在SQL中写查询语句
Table name
抽取数据的表名称
SQL—Select stagement
使用select语句进行查询,这种方式可以对一些字段进行函数转换,也可以加where条件等
Before/After sql
在执行上面的select前需要执行的sql
Sql写好后,可以点击查看数据,查询出结果表示sql写的没问题
定义Filter
如果是单表对单表的数据直抽,就不需要Filter,如果对抽取的结果做分流,就需要加上Filter组件,默认是一个where条件,有几个数据分流就添加几个Where Clause
添加后,写上对应的过滤条件
但是两个条件过滤的数据该如何确定流向哪个分支?查看链接排序,链接标签有0,1,当然如果有多个分支就有0,1,2..
回到属性栏,在where
Clause添加输出的分支属性
添加好后如下图
定义Filter的输出,可使用CTRL+A选中所有左边的列,用鼠标左键拖到右边
完成图如下
然后定义另一个分支的输出,如图选择分支名称,如上方法将字段拖到右边
定义好输出后job中会出现下列输出表的图标
定义目标表
上述步骤完成后,目标表的分支中,列属性已经自动将Filter中的输出列加进去,(注:这里最好将目标表的列名和源表SELECT后的列名称保持一致,这样生成的insert语句修改量就比较小;保持一致的做法就是在源表定义select时,对每个列都带别名
as xxx,别名和目标表字段名称一致,不这样做也没问题,就是insert语句改动比较大而已),如果目标表存在Filter输出不存在的列,那么将此列加入列定义,然后开始定义insert语句
可以使用Generator
SQL,只填入表名即可,也可以在属性面板SQL选项中点击Tools,Generator SQL statement,会自动生成插入语句,将此语句拷贝出来,在Toad或者PL/SQL Developer中编辑好,贴上去
如果在插入前需要Truncate,那么就在Before Sql中定义这里是可以输入多条sql语句的,用英文分号分隔
编译job,job完成后,ctrl+s保存,然后点编译按钮进行编译,编译无误才能进行调度
填入列定义,在Table
Definitions组件下,将用到的源表,目标表的结构导入,步骤如下,选择导入表定义—插件元数据定义
启动后,选择对应数据库类型,点击确定
选择服务器,输入用户名密码,Tables打勾,下一步
选择表名称(支持首字母搜索,如按键S,就会跳到S开头的表名称),使用ctrl+鼠标左键可多选,选好导入的目标文件夹,确定,导入
导入完成后,就会出现在指定的文件夹中,可以被job直接调用。这里导入的表定义主要作用就是在job中使用这些表的时候,不用手动输入表字段定义,提高开发效率,跟数据库无关(意思就是从A库导入的表定义,可以直接被B库、C库调用)
,将并行job拖入设计面板
单个job或者sequence都可以运行
运行后,job会显示成功的绿线,和失败的红线
查看选项中,选中作业日志,在设计面板就会出现控制台运行信息
环境变量设置
对于一些可变的信息如db名称,username,password,etl_date等,需要设置为变量,这样就可以将参数一层一层传递下去
打开 Administrator
登录后,找到项目,点击属性—环境
并行下面有个APT_CONFIG_FILE参数,存储的是用户定义的参数文件,这个比较重要,先记住
对于多处调用的变量,可将其设置为参数,如下图
和sequence中调用参数
中变量参数设置
打开开发好的作业Test,点击作业属性
将用到的环境变量添加进去,添加进去是这样的,但是如果变量值变化了,岂不是每个job都要修改?所以要引如$APT_CONFIG_FILE这个很重要的系统变量,这个变量引入后,所有的参数缺省值都赋值为$PROJDEF,就会自动从配置文件获取参数值
配置好如图所示,包括密码缺省值也设置为$PROJDEF
配置好作业属性后,打开job中的组件,点击变量图标,会出现参数选择
将DB,user,password设置为参数,设置后可以测试一下是否连接成功
设置后,保存并编译job,再点击运行时,参数的值就会根据配置文件继承下来
Sequence中变量参数设置
打开TestSequence,同job的设置方法,将作业属性先设置好
打开sequence中调用的并行job,出现参数如下,参数的名称,指的是并行job的参数,值表达式指的是sequence传入的值,通过这个配置,就可以把job和sequence的参数联系起来,进行参数值传递
,作业属性配置如下图
前—Before SQL,调用存储过程CALL
ETL.SP_IPRO_ETL_ALL('#$p_etl_date#');
存储过程调用的job如下,调用的方法很多,这个只是其中一种
失败时怎么办
job失败时,可以查看控制台信息,如果从控制台信息看不出报错位置,那么要借助director这个工具,如图打开director
Director作为Datastage的核心组件,在监控和日志查看上起着重要的作用。
或sequence才能直接运行
点击日志图标,查看报错信息
双击红色的报错信息,弹出报错明细,点击上一个、下一步可以逐条查看,找到错误并修改编译job
job日志过滤
在日志信息处单击右键---过滤,可以设置日志的查看信息,对于运行日志比较多的情况,设置过滤是个不错的选择
如果有job中止,暂时还没找出报错原因,还想再运行一次,那么可以在设计界面编译后运行,也可以直接在Director界面选择恢复
处于已复位状态的job也可以运行,如下图,可以直接在Director中运行
job多的时候,要编辑或者搜索某个job
可以使用快速查找,也可以是使用快速查找后的高级查找,如搜索s_orduna的job,那么可以使用*s_orduna*,*号表示通配符
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Datastage9.1安装配置文档
1.系统需求
The following packages are required to install and operate Version 9.1 on 64-bit SUSE Linux Enterprise Server 11.
audit-libs-1.7.7-5.16-x86_64
expat-2.0.1-88.26.1-x86_64
glibc-2.9-13.3.1-x86_64
glibc-32bit-2.9-13.3.1-x86_64
libaio-0.3.104-140.22-x86_64
libgcc43-4.3.3_.18-x86_64
libstdc++43-devel-4.3.3_.18-x86_64
libstdc++43-4.3.3_.18-x86_64
pam-1.0.2-20.1-x86_64
10. xorg-x11-7.4-9.18.1-x86_64
各版本、各系统的需求不一样,可在下列网址查看
2.1安装文件说明
1)安装文件
is-suite.is_91.linux64.RC3_2.121205.part1.tar.gz
is-suite.is_91.linux64.RC3_2.121205.part2.tar.gz
分步解压,先解压gz,再解压tar
gzip –d is-suite.is_91.linux64.RC3_2.121205.part1.tar.gz
tar –xvf /bbs.tar.zip
直接解压, 解压到当前路径
is-suite.is_91.linux64.RC3_2.121205.part1.tar.gz
is-suite.is_91.linux64.RC3_2.121205.part2.tar.gz
2)许可文件
Bundle.suite.full.zip,解压到与安装文件同一目录下
unzip Bundle.suite.full.zip -d /tmp/is_suite/
2.2安装步骤说明
创建组、用户
groupadd dba
useradd –G dba –m datastage
passwd datastage
修改内核参数
编辑文件:/etc/sysctl.conf,添加一行
kernel.sem = 250
vi /etc/sysctl.conf
保存后sysctl -p使修改生效。
关闭防火墙
即时生效,重启后复原:service iptables stop
永久性生效,重启后不会复原:chkconfig iptables off
关闭SELinux
编辑文件:/etc/selinux/config
This file controls the state of SELinux on the system.
SELINUX= can take one of these three values:
enforcing - SELinux security policy is enforced.
permissive - SELinux prints warnings instead of enforcing.
disabled - No SELinux policy is loaded.
SELINUX=enforcing
SELINUX=disabled
SELINUXTYPE= can take one of these two values:
targeted - Targeted processes are protected,
mls - Multi Level Security protection.
SELINUXTYPE=targeted
启动安装向导
执行setup.exe
2.3安装过程
浏览器中打开连接地址:
FAILED: CDIIN3218E: There is insufficient free disk space for the installation.
Partition / does not have sufficient space available.
It has 13,696MB free and 14,196MB is required.
磁盘空间不足
2.4验证安装
执行以下命令:
ps –ef|grep was
共有3个进程
ps –ef|grep dsrpcd ds 一个守护进程
如果以上四个进程存在,证明已安装成功。
3.1安装oracle客户端
3.2添加用户、组及凭证
安装结束后需要在服务端做相应用户、组及登陆凭证配置,客户端才可以登录。
1)登陆IBMInformation Server Web 控制台
打开IBMInformation Server Web 控制台,输入IBM Information Server服务管理员用户名wasadmin及密码wasadmin登陆。
2) 添加管理用户和组
单击“管理”按钮,展开管理界面。
单击“用户和组”-“组”展开组管理界面。
单击右侧的“新建组”,输入新建组信息,分配权限(这里我们创建一个管理组admin,分配所有的权限),记得单击页面右下角的保存并关闭,重新打开组页面,则可以看到我们新建的组已经存在了。
单击“用户和组”-“用户”展开用户管理界面。安装过程中我们已经默认添加了IBM Information Server用户和websphere两个用户。选中admin账户,点击右侧打开用户,这里可以查看admin账户信息、分配的权限,我们将admin账户添加到admin组中去。单据“组”框下方的浏览按钮,选中我们刚才建立 的组admin。记得点击窗口下方的“确定”按钮,还有“用户”窗口下方的“保存并关闭”按钮。
3) 配置凭证
输入要用来连接 IBM Information Server 引擎的用户名和密码。您提供的用户名和密码必须是安装引擎层的操作系统的有效用户名和密码。
单击“域管理”-“DataStage凭证”,选中安装了IBM Information Server服务的计算机名“central-zzp”,单击“打开我的凭证”。
然后在DataStage凭证页面输入操作系统的用户名和密码,保存并关闭。
“打开用户凭证”里面就添加了admin的凭证,如果除了admin以外还需要配置有多个用户的,每个用户都要在这里面添加凭证。
3.3配置对Oracle数据库的访问
1)在/opt/IBM/InformationServer/Server/DSEngine/dsenv文件中添加如下配置
export ORACLE_BASE=/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export umask=022
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=$ORACLE_HOME/bin:$PATH:/usr/bin:/usr/sbin/:/bin
export LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export LANG=us_en
export TNS_ADMIN=/oracle/app/product/11.2.0/db_1/network/admin
export DSHOME=/opt/IBM/InformationServer/Server/DSEngine
export APT_ORCHHOME=/opt/IBM/InformationServer/Server/PXEngine
2)为使配置生效,重启datastage服务
3)验证配置
为验证相关数据库配置是否成功,需使用客户端Designer中的plug-in导入方式来验证。
4.1服务启动
如果发现was、datastage已经自启动,但db2没有自启动,应先将它们停止,在按顺序启动;
su - db2inst1
cd /home/db2inst1/sqllib/adm
./db2start
cd /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/bin
./startServer.sh server1
ps -ef | grep websphere
3)datastage
cd /opt/IBM/InformationServer/Server/DSEngine/bin
./uv -admin -start
cd /opt/IBM/InformationServer/ASBNode/bin/
./NodeAgents.sh restart
4.2服务停止
1)datastage
cd /opt/IBM/InformationServer/Server/DSEngine/bin
./uv -admin -stop
2)wasadmin/wasadmin
cd /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/bin
./stopServer.sh server1
su - db2inst1
cd /home/db2inst1/sqllib/adm
安装常见问题
5.1无法执行安装程序
问题现象:
The IP address cannot be resolved
解决办法:
在/etc/hosts文件中添加:IP hostname
5.2连接oracle数据库问题
1)无法导入表定义
解决办法:
修改dsenv文件,oracle尽量不用绿色版,绿色版配置很麻烦,会缺文件
2)用oracle数据库组件连接11g数据库无法连接报错
解决办法:
Install Oracle client
Install Oracle client 11g in the DS server with user oracle, my install option is ‘Administrator ‘.
Copy tnsnames.ora file from the Oracle server to $ORACLE_HOME/network/admin. Please pay attention to the HOST, we can use IP or HOSTNAME.
[oracle@datastage admin]$ cat tnsnames.ora
tnsnames.ora Network Configuration File: C:\app\ligj\product\11.2.0\client_1\network\admin\tnsnames.ora
Generated by Oracle configuration tools.
ORAJERRY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = IBM-RS05L7GG9A3)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = ORAJERRY)
Add ORACLE_HOME in .bash_profile under oracle user.
Login oracle server with:
Sqlplus usera/pwd@ORAJERRY
Configuration on DS server
Add those parameters in the dsenv under DSHOME, following is my:
DSHOME=/opt/IBM/InformationServer/Server/DSEngine
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/client_1
export TNS_ADMIN=/home/oracle/app/oracle/product/11.2.0/client_1/network/admin
export LD_LIBRARY_PATH=$APT_ORCHHOME/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$ORAC
LE_HOME/rdbms/lib
export PATH=$PATH:$ORACLE_HOME/bin:$APT_ORCHHOME/bin
export ORACLE_BASE=/home/oracle/app
export LIBPATH=$ORACLE_HOME/rdbms/lib:$ORACLE_HOME/lib:$LIBPATH
[root@datastage DSEngine]# find /opt -name install.liborchoracle
/opt/IBM/InformationServer/Server/StagingArea/Installed/PxOracle/install/install.liborchoracle
/opt/IBM/InformationServer/Server/DSComponents/install/install.liborchoracle
[root@datastage DSEngine]# find /opt -name libccora*
/opt/IBM/InformationServer/Server/StagingArea/Installed/OracleConnector/Server/linux/libccora11g.so
/opt/IBM/InformationServer/Server/StagingArea/Installed/OracleConnector/Server/linux/libccora10g.so
/opt/IBM/InformationServer/Server/DSComponents/bin/libccora11g.so
/opt/IBM/InformationServer/Server/DSComponents/bin/libccora10g.so
My error message are ‘Can’t find libccora10g.so’
[root@datastage DSEngine]# cd $ORACLE_HOME/lib
[root@datastage DSEngine]#ln –s /opt/IBM/InformationServer/Server/StagingArea/Installed/OracleConnector/Server/linux/libccora11g.so licccora11g.so
[root@datastage DSEngine]#ln –s /opt/IBM/InformationServer/Server/StagingArea/Installed/OracleConnector/Server/linux/libccora10g.so licccora10g.so
Then execute the ‘/opt/IBM/InformationServer/Server/StagingArea/Installed/PxOracle/install/install.liborchoracle’ with root user.
[root@datastage DSEngine]# export DSHOME=/opt/IBM/InformationServer/Server/DSEngine
[root@datastage DSEngine]# export APT_ORCHHOME=/opt/IBM/InformationServer/Server/PXEngine
[root@datastage DSEngine]# vi /opt/IBM/InformationServer/Server/DSComponents/install/install.liborchoracle
Alter this:
install_driver() {
case $version in
9 ) VER=’9i’;;
10 ) VER=’10g’;;
install_driver() {
case $version in
9 ) VER=’9i’;;
10|11 ) VER=’10g’;;
Then can support Oracle 11g client
Execute it
[root@datastage DSEngine]
/opt/IBM/InformationServer/Server/DSComponents/install/install.liborchoracle
Installing Oracle driver.
Installing driver for Oracle Version 10g
Oracle driver installation is completed.
Test the dynamic library
[root@datastage DSEngine]# cd $ORACLE_HOME/lib
[root@datastage lib]# ls -al libcc*
lrwxrwxrwx 1 oracle dba 65 Apr 24 17:26 libccora10g.so -& /opt/IBM/InformationServer/Server/DSComponents/bin/libccora10g.so
lrwxrwxrwx 1 oracle dba 65 Apr 24 17:25 libccora11g.so -& /opt/IBM/InformationServer/Server/DSComponents/bin/libccora11g.so
[root@datastage lib]# ldd libccora10g.so
linux-vdso.so.1 =& (0x00007fff5d960000)
/opt/IBM/InformationServer/Server/DSComponents/lib/libicui18n.so (0x0000)
libicuio.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicuio.so.32 (0x00002af26ecb5000)
libicuuc.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicuuc.so.32 (0x00002af26edc1000)
libfcl.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/libfcl.so (0x00002af26efaf000)
libclntsh.so.10.1 =& /home/oracle/app/oracle/product/11.2.0/client_1/lib/libclntsh.so.10.1 (0x0b3000)
libstdc++.so.6 =& /opt/IBM/InformationServer/ASBNode/apps/proxy/cpp/linux-all-x86_64/libstdc++.so.6 (0x0dd000)
libm.so.6 =& /lib64/libm.so.6 (0x0af9000)
libc.so.6 =& /lib64/libc.so.6 (0x0c000)
libgcc_s.so.1 =& /lib64/libgcc_s.so.1 (0x0d3000)
libicudata.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicudata.so.32 (0x0e2000)
libpthread.so.0 =& /lib64/libpthread.so.0 (0x0000)
libnsl.so.1 =& /lib64/libnsl.so.1 (0x0d000)
libdl.so.2 =& /lib64/libdl.so.2 (0x0a5000)
libicutu.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicutu.so.32 (0x0a9000)
libxml4c.so.56 =& /opt/IBM/InformationServer/Server/DSComponents/lib/libxml4c.so.56 (0x0b8000)
liborchx86_64.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/liborchx86_64.so (0x0000)
liborchcorex86_64.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/liborchcorex86_64.so (0x0d5000)
libnnz11.so =& /home/oracle/app/oracle/product/11.2.0/client_1/lib/libnnz11.so (0x0000)
libaio.so.1 =& /usr/lib64/libaio.so.1 (0x0deb000)
/lib64/ld-linux-x86-64.so.2 (0xa00000)
liborchmonitorx86_64.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/liborchmonitorx86_64.so (0x0fed000)
[root@datastage lib]# ldd libccora11g.so
linux-vdso.so.1 =& (0x00007fffe5ffd000)
/opt/IBM/InformationServer/Server/DSComponents/lib/libicui18n.so (0xafc7000)
libicuio.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicuio.so.32 (0xe5000)
libicuuc.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicuuc.so.32 (0xf1000)
libfcl.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/libfcl.so (0xdf000)
libclntsh.so.11.1 =& /home/oracle/app/oracle/product/11.2.0/client_1/lib/libclntsh.so.11.1 (0xe3000)
libstdc++.so.6 =& /opt/IBM/InformationServer/ASBNode/apps/proxy/cpp/linux-all-x86_64/libstdc++.so.6 (0xde0d000)
libm.so.6 =& /lib64/libm.so.6 (0x9000)
libc.so.6 =& /lib64/libc.so.6 (0xac000)
libgcc_s.so.1 =& /lib64/libgcc_s.so.1 (0x3000)
libicudata.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicudata.so.32 (0x2000)
libpthread.so.0 =& /lib64/libpthread.so.0 (0xa1000)
libnsl.so.1 =& /lib64/libnsl.so.1 (0xbd000)
libdl.so.2 =& /lib64/libdl.so.2 (0xd5000)
libicutu.so.32 =& /opt/IBM/InformationServer/Server/PXEngine/lib/libicutu.so.32 (0xfbd9000)
libxml4c.so.56 =& /opt/IBM/InformationServer/Server/DSComponents/lib/libxml4c.so.56 (0xfce8000)
liborchx86_64.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/liborchx86_64.so (0x6000)
liborchcorex86_64.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/liborchcorex86_64.so (0xd05000)
libnnz11.so =& /home/oracle/app/oracle/product/11.2.0/client_1/lib/libnnz11.so (0xf53000)
libaio.so.1 =& /usr/lib64/libaio.so.1 (0xb000)
/lib64/ld-linux-x86-64.so.2 (0xa00000)
liborchmonitorx86_64.so =& /opt/IBM/InformationServer/Server/PXEngine/lib/liborchmonitorx86_64.so (0xd000)
[root@datastage lib]#
Open ‘DS Administrator Client’
Click ‘Environment’ , go to
Restart DS server and IS agent:
1) stop DS engine
[root@datastage DSEngine]# cd /opt/IBM/InformationServer/Server/DSEngine/bin
[root@datastage DSEngine]#./uv –admin –stop
2) stop IS agent
[root@datastage DSEngine]# cd /opt/IBM/InformationServer/ASBNode/bin
[root@datastage DSEngine]#./NodeAgents.sh stop
3) start IS agent
[root@datastage DSEngine]# cd /opt/IBM/InformationServer/ASBNode/bin
[root@datastage DSEngine]#./NodeAgents.sh start
4) start DS engine
[root@datastage DSEngine]# cd /opt/IBM/InformationServer/Server/DSEngine/bin
[root@datastage DSEngine]#./uv –admin –start
5.3监控问题
问题现象:
Job正常运行,但是Directory中看不到监控信息
解决办法:
手工启停服务
cd /opt/IBM/InformationServer/Server/PXEngine/java
./jobmoninit start
启动服务失败
客户端报错:
客户端安装关闭防火墙
将licence文件与安装文件解压到相同路径下
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1328次
排名:千里之外
(6)(4)(1)(1)DataStage 6、安装和部署集群环境 - 综合当前位置:& &&&DataStage 6、安装和部署集群环境DataStage 6、安装和部署集群环境&&网友分享于:&&浏览:0次DataStage 六、安装和部署集群环境
DataStage序列文章
DataStage 四和五因为包含大量图片发布不便,有兴趣学习和研究者请联系索要!!!
以下的内容中使用主机dsconductor01(主导节点)和主机dscompute01(普通节点)实验安装DS集群,分别在主机dsconductor01(主导节点)中安装Metadata repository层、Services层和安装Engine层,然后通过NFS共享方式共享Engine层到主机dscompute01(普通节点)以构建集群环境。内容涉及的安装内容只提供与普通安装方式不同的特别之处,详细的安装信息请参考:, 涉及的错误信息和分析解决方法请参考:。
安装DS集群的步骤
分配集群服务器IP
配置集群节点服务器与主导节点服务器节点的通信(配置/etc/hosts和ssh)
确定集群安装方式,创建NAS共享目录
在集群节点服务器中导入和mount主导节点的NAS共享目录
安装Metadata repository层和Services层
安装Engine层
配置DS和数据库软件环境变量
创建和配置集群配置文件
1 DS集群IP分配信息
节点名称主机名网卡1网卡2网卡3
NAS Server、Domain Server和主导节点(Conductor Node)
dsconductor01
NAT 网卡MAC:E845随机启动:否
桥接网卡MAC:C02随机启动:是IP ADDRESS:192.168.1.240Subnet Mask: 255.255.255.0Default Gateway: 192.168.1.254DNS1:8.8.8.8
Host OnlyMAC:随机启动:否
dscompute01
NAT 网卡MAC:080027BCEDD9随机启动:否
桥接网卡MAC:随机启动:是IP ADDRESS:192.168.1.241Subnet Mask: 255.255.255.0Default Gateway: 192.168.1.254DNS1:8.8.8.8
Host OnlyMAC:随机启动:否
节点命名规则
添加主节点命名:DS_Conductor(nn);
添加普通节点命名:DS_Compute(nn);
以上nn表示从00开始的数字编号,比如现有的节点命名为DS_Compute01,则后续的节点命名依次+1:DS_Compute02,以此类推。
2 DS集群安装前的配置
2.1 配置hosts
在两台机上配置hostname。
vi /etc/hosts
192.168.1.240 dsconductor01 dsconductor01
192.168.1.241 dscompute01 dscompute01
在hosts文件中配置了Server信息,这样当DNS Server错误时集群内的成员依然可以互相连通。
2.2 SSH配置
在集群环境中节点间的通信是通过SSH完成,工作时主导节点向普通节点发送指令,普通节点根据收到的的指令执行。在本实验中主导节点是dsconductor01,普通节点是dsconductor01,以下实现主导节点生成rsa key,实现与普通节点无密码的ssh通信。
[ .ssh]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/dsadm/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/dsadm/.ssh/id_rsa.
Your public key has been saved in /home/dsadm/.ssh/id_rsa.pub.
The key fingerprint is:
20:07:c4:47:e6:6e:49:60:9c:0d:5c:b4:83:be:f2:c7
The key's randomart image is:
+--[ RSA 2048]----+
+-----------------+
把key发送到普通节点上
$ cd /home/dsadm/.ssh/
[ .ssh]$ ssh-copy-id -i id_rsa.pub
The authenticity of host 'dscompute01 (192.168.1.241)' can't be established.
RSA key fingerprint is cd:e1:43:fe:94:2a:87:d4:7a:3a:6a:45:d9:42:ed:e1.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'dscompute01,192.168.1.241' (RSA) to the list of known hosts.
's password:
Now try logging into the machine, with "ssh '", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
在普通节点上将收到的ssh rsa key 加入到zuthorized_keys文件中,因为我使用的是Centos 6.7,实验后发现可以省略此步骤。
在主节点上验证ssh无密码登录到普通节点
Last login: Wed Oct 21 16:01:15 2015 from 192.168.1.240
2.3 创建NAS共享目录
在每个上创建相同的目录并赋权限用于NAS共享。
mkdir -p /disk2/IBM
chmod 775 /disk2/IBM
mkdir -p /disk2/IBM/EngineTier
chmod 775 /disk2/IBM/EngineTier
2.4 DataStage主节点构建
vi /etc/exports
/disk2/IBM/EngineTier dscompute01(rw,no_root_squash,async)
将NAS目录共享给普通节点(dscompute01),rw表示允许节点读写目录;no_root_squash表示运行NFS的客户端可以以root用户连接;
2.4.1 重启NFS
/etc/init.d/nfs stop
/etc/init.d/nfs start
[ ~]# service nfs status
rpc.svcgssd is stopped
rpc.mountd (pid 2599) is running...
nfsd (pid 13 10 ) is running...
rpc.rquotad (pid 2594) is running...
2.5 在DataStage节点上导入共享目录
以root用户登录到普通节点服务器上,修改/etc/fstab文件,添加如下的内容
dsconductor01:/opt/IBM/EngineTier /opt/IBM/EngineTier nfs rw,nolock 0 0
添加后的文件内容
[ ~]# cat /etc/fstab
# /etc/fstab
# Created by anaconda on Tue Oct 20 11:23:49 2015
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
UUID=-42ce-4ca5-a5c0-82faff851c20 /
UUID=cbe05f3f-de9a-c-a907fcd1eec3 /boot
UUID=-28fc-4c53-a907-e72df5700dbf /home
UUID=7456663e-f29c-49f5-8e22-d5eeb074a2d3 /tmp
UUID=e3112a5f-fa27-4fe9-9691-bc /usr
UUID=0fcbbb57-c0dd-49fa-829d-61a46df96182 /var
UUID=fa5fbeb0-2343-4dda-8cfd-eda72cac27a9 swap
gid=5,mode=620
dsconductor01:/opt/IBM/EngineTier /opt/IBM/EngineTier
2.5.1 Mount 共享目录
# mount dsconductor01:/opt/IBM/EngineTier /opt/IBM/EngineTier
mount 后检查
[ ~]# mount
/dev/sda8 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
/dev/sda3 on /home type ext4 (rw)
/dev/sda6 on /tmp type ext4 (rw)
/dev/sda2 on /usr type ext4 (rw)
/dev/sda5 on /var type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
dsconductor01:/disk2/IBM/EngineTier on /disk2/IBM/EngineTier type nfs (rw,vers=4,addr=192.168.1.240,clientaddr=192.168.1.241)
3.安装DS集群软件
首先先,因为有实验只用了两台服务器,so 这里将资源库层和Server层安装在同一个目录(/disk2/IBM/InformationServer)下,安装结束后再将Engine Tier安装在另一个目录(/disk2/IBM/EngineTier)下,这样很清晰的了解各个层的情况,并且Engine层也可以通过NFS的方式共享到所有的普通节点中。
3.1 安装Metadata repository层和Services层
选择安装路径为:/disk2/IBM/InformationServer;
在安装产品中选择Metadata repository和Services,接着配置WAS用户信息和资源库信息然后开始安装,具体的安装过程请参考:
注意:如果想使用Oracle数据库做为资源库,必须在安装DS软件前安装好Oracle软件并配置好环境变量,DS软件安装过程中会检测这些信息,然后动态调整安装的可选项。
3.2 安装Engine层
安装完Metadata repository层和Services层后重启安装程序安装Engine层;
选择安装路径为:/disk2/IBM/EngineTier;
在安装产品中选择Engine,接着配置WAS用户信息和资源库信息然后开始安装,具体的安装过程请参考:
注意:安装过程中可能会因为缺少包或临时发生错误而停止,通常时有提示信息你可以查看到一部分错误信息,然后选择重试或忽略错误继续按照或终止安装,遇到这样的问题请认真阅读错误提示和查看日志,日志的路径通常在/tmp/ibm_is_logs/目录下,有些错误是可以及时解决然后重试的,也有可能是服务器原因导致的异常,比如某些资源无响应等,尝试重新安装。
4 安装结束后的操作
Metadata repository层、Services层和Engine层都安装成功后,检查进程信息、配置DS环境变量、Oracle环境变量以及关于集群的一些配置。如何检查进程信息请参考:
4.1 配置DS环境变量
在root和dsadm用户profile文件配置如下ds环境变量信息
export DSHOME=/disk2/IBM/EngineTier/Server/DSEngine
export APT_ORCHHOME=/disk2/IBM/EngineTier/Server/PXEngine
export APT_CONFIG_FILE=/disk2/IBM/EngineTier/Server/Configurations/default.apt
export PATH=$PATH:$DSHOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DSHOME/lib:$APT_ORCHHOME/lib
. $DSHOME/dsenv
4.2 配置Oracle环境变量
在oracle用户profile文件和$DSHOME/dsenv中配置如下Oracle变量信息
ORACLE_HOME=/disk2/oracle/product/11.2.0 ; export ORACLE_HOME
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$ORACLE_HOME/rdbms/ export LD_LIBRARY_PATH
NLS_LANG=AMERICAN_AMERICA.AL32UTF8 ; export NLS_LANG
PATH=$PATH:$ORACLE_HOME/ export PATH
对于$DSHOME/dsenv文件内容的更改必须重启Engine生效。关于如何重启Engine,请参考:
4.3 配置集群远程shell
当集群节点工作时,datastage parallel engine搜索如下可执行文件:
1. $APT_ORCHHOME/etc/remsh (if it exists)
2. /user/lpp/ssp/rcmd/bin/rsh (AIX only)
3. /usr/ucb/rsh
4. /usr/bin/remsh
5. /bin/remsh
6. /usr/bin/rsh
在这里$APT_ORCHHOME/etc/remsh最先被查找,如果你的机器上没有安装rsh,那么使用ssh代替rsh是比较好的选择;
#cat /disk2/IBM/EngineTier/Server/PXEngine/etc/remsh
exec /usr/bin/ssh "$@"
还有设置文件的权限
chown dsadm:dstage remsh
chmod 755 remsh
5 集群配置文件
要使用集群资源先要创建集群配置文件然后应用到项目或某个job中,打开IBM InfoSphere DataStage and QualityStage Designer,选择Tools=》Configurations新建一个配置文件
ode: 节点的逻辑名称, 通常情况下根据此节点本身具有的功能来定义。 配置文件中不能包含多个相同的
节点名字。
Fastname: 机器的 host name
Pools: 定义了这个节点被分配到的节点 pool 的名称, 一个节点可以分配到多个节点 pool 中。 因此这里的
pools 可以有多个值。 如果这个值为空, 那么将使用默认 pool, 默认 pool 对所有的 stage 都是可用的
resource disk: 定义了这个节点用来存储持久数据的存储资源
resource scratchdisk: 定义了这个节点用来存储临时数据的存储资源
保存配置文件,单击Check按钮检查配置文件的正确性和在定义的节点上的可用性,如果没有任何错误,检查的返回结果信息大概如下:
##I IIS-DSEE-TFCN-:20(000) &
IBM InfoSphere DataStage Enterprise Edition 9.1.0.6791
Copyright (c) -2012 IBM Corporation. All rights reserved
##I IIS-DSEE-TFCN-:20(001) & The timezone environment variable TZ is currently not set in your environment which can lead to significant performance degradation. It is recommended that you set TZ=:/etc/localtime in your environment.
##I IIS-DSEE-TUTL-:20(002) & The open files limit is 1024; raising to 4096.
##I IIS-DSEE-TFCN-:20(003) & conductor uname: -s=L -r=2.6.32-573.7.1.el6.x86_64; -v=#1 SMP Tue Sep 22 22:00:00 UTC 2015; -n=dsconductor01; -m=x86_64
##I IIS-DSEE-TCOA-:20(004) & OS charset: UTF-8.
##I IIS-DSEE-TCOA-:20(005) & Input charset: UTF-8.
##I IIS-DSEE-TFSC-:20(006) & APT configuration file: /disk2/IBM/EngineTier/Server/Configurations/cluster01.apt
##I IIS-DSEE-TUTL-:20(000) & The open files limit is 1024; raising to 4096.
##I IIS-DSEE-TOIX-:20(000)
in APT_FileExportOperator,0& E 4 records exported successfully, 0 rejected.
##I IIS-DSEE-TFSC-:20(007) & Step execution finished with status = OK.
##I IIS-DSEE-TCOA-:20(008) & Total virtual memory on node node2 is 3,926.09 MB.
##I IIS-DSEE-TCOA-:20(009) & Config file checker on node node2 reports 0 error(s), 0 warning(s).
##I IIS-DSEE-TCOA-:20(010) & Total virtual memory on node node1 is 5,879.58 MB.
##I IIS-DSEE-TCOA-:20(011) & Config file checker on node node1 reports 0 error(s), 0 warning(s).
##I IIS-DSEE-TCOA-:20(012) & 0 error(s) detected.
##I IIS-DSEE-TCOA-:20(013) & 0 warning(s) detected.
5.1 集群配置文件在项目中的应用
如果你想整个项目使用同一个集群配置文件,则需要在项目层面上配置集群配置文件,打开IBM InfoSphere DataStage and QualityStage Administrator,登录选择项目后进入Properties,在General选项中单击Environment,在APT_CONFIG_FILE选项中配置集群配置文件
5.2 集群配置文件在JOB中的应用
如果你想将集群配置文件应用于某个JOB,在IBM InfoSphere DataStage and QualityStage Designer中选择JOB右击选择Properties,在Parameters中单击Add Environment Variable,单击APT_CONFIG_FILE,然后双击Default value选择集群配置文件;
注意:当JOB配置了APT_CONFIG_FILE,DS使用该配置文件,如果没有则使用项目中配置的配置文件,如果项目没有配置则使用default.apt配置文件。
6 编译运行JOB
JOB编译完成后单击运行按钮,ds会提示配置文件和其它引用的参数信息;
运行的日志中也会输出ds使用的集群配置文件和其它相关信息;
安装前确定好安装集群软件的方式和配置好各个节点与主导节点的通信,Engine层可以在主导节点通过NFS共享给普通节点、SAS和在每个普通节点安装Engine的方式实现,NFS共享的方式相对灵活很多,也便于Engine层的升级和更新,但缺点就是当集群中有很多个节点时,网络会影响集群环境,可以考虑将Engine层安装到独立的、快速的存储设备上,并保证网络的带宽和畅通信来解决这些瓶颈。另一个方式是在主导节点安装好Engine层后,将Engine层的安装文件拷贝到集群中的普通节点中的相同目录下,但这会引发一些问题,比如报&parallel job reports failure (code 139)&错误,没有多少日志可以分析它方生了什么错误,发生在什么地方,这会增加分析、解决问题的负担,建议如果集群规模比较小时考虑使用NFS的方式安装。
--The end()
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 1234567891011 Copyright & &&版权所有}

我要回帖

更多关于 datastage 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信