DataStage序列文章

DataStage 一、安装

1 关于进程需要了解的基础知识

名称 说明
ASB代理进程 通信代理程序,它的作用是协助层与层之间的通信,默认端口是31531,它以后台进程的方式运行在引擎层和客户端层
ASB记录代理进程 它的作用是记录事件信息到元数据存储层的数据库中
DataStage Engine进程 它是核心进程,管理DataStage job任务、Cache、job资源
WebSphere Application Server(WAS) Web 应用服务器程序,使用Java EE、xml和Web Service建立,它负责初始化连接器和基于Web 的console(控制台)、infocenter(信息中心)

2 启动InfoSphere Information Server进程

建议先启动WAS,再启动ASB代理,最后再启动DataStage Engine。WAS包含与资源库的连接、启动Application Server,是一个很重要的进程,它启动失败一系列的问题如客户端连接出错、信息中心无法访问就遇上了。

2.1 启动WAS

在root用户下启动WAS服务:

$ /opt/IBM/InformationServer/ASBServer/bin/MetadataServer.sh start

启动会需要一段时间,大约4分钟左右,当WAS启动完成后,检查进程信息,可以看到类似如下的进程信息:

$ ps -ef|grep java
root 22151422 1 0 12:48:12 pts/2 0:52 /opt/IBM/WebSphere/AppServer/java/bin/java -Declipse.security -Dwas.status.socket=61870 -Dosgi.install.area=/opt/IBM/WebSphere/AppServer -Dosgi.configuration.area=/opt/IBM/WebSphere/AppServer/profiles/InfoSphere/configuration -Dosgi.framework.extensions=com.ibm.cds,com.ibm.ws.eclipse.adaptors -Xshareclasses:name=webspherev70_%g,groupAccess,nonFatal -Xscmx50M

在启动过程中相关的日志记录在/opt/IBM/InformationServer/ASBServer/bin/startMetadataServer.log中。移动到AppServer目录下(/opt/IBM/WebSphere/AppServer/bin),检查Server状态

# ./serverStatus.sh -all -username wasadmin -password wasadmin
ADMU0116I: Tool information is being logged in file
/opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs/serverStatus.log
ADMU0128I: Starting tool with the InfoSphere profile
ADMU0503I: Retrieving server status for all servers
ADMU0505I: Servers found in configuration:
ADMU0506I: Server name: server1
ADMU0508I: The Application Server "server1" is STARTED

这里可以看到Server的状态为STARTED,如果报错

The server "server1" cannot be reached. It appears to be stopped.

请仔细查看 /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs目录下的SystemErr.log和SystemOut.log日志文件,引起该问题的原因很多,可能是连接资源库问题、配置文件找不到、密码不对等。

2.2 启动ASB代理程序

$ /opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh  start
Starting LoggingAgent...
LoggingAgent started.
Starting Agent...
Agent started.

当代理进程启动完成后,检查进程信息如果此时没有任何的客户端与服务端通信,ASB代理进程和ASB记录代理进程端口的状态应为为LISTEN,

$ netstat -a|grep 31533
tcp 0 0 *.31533 *.* LISTEN
$ netstat -a|grep 31531
tcp 0 0 *.31531 *.* LISTEN $ ps -ef|grep -i agent root 21364806 19202464 0 12:49:27 pts/2 0:02 /opt/IBM/InformationServer/ASBNode/bin/RunAgent -Xbootclasspath/a:conf -Djava.ext.dirs=apps/jre/lib/ext:lib/java:eclipse/plugins:eclipse/plugins/com.ibm.isf.client_8.5.0.0 -Djava.class.path=conf -Djava.security.auth.login.config=/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/auth.conf -Dcom.ibm.CORBA.ConfigURL=file:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/sas.client.props -Dcom.ibm.SSL.ConfigURL=file:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ssl.client.props -Dcom.ibm.CORBA.enableClientCallbacks=true -Dcom.ibm.CORBA.FragmentSize=128000 -class com/ascential/asb/agent/impl/AgentImpl run
root 9699638 1 1 12:49:25 pts/2 0:02 /opt/IBM/InformationServer/ASBNode/apps/jre/bin/java -Duser.language=en -Duser.country=US -Djava.security.auth.login.config=/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/auth.conf -Dcom.ibm.CORBA.ConfigURL=file:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/sas.client.props -Dcom.ibm.SSL.ConfigURL=file:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ssl.client.props -Dcom.ibm.CORBA.enableClientCallbacks=true -Dcom.ibm.CORBA.FragmentSize=128000 -classpath /opt/IBM/InformationServer/ASBNode/conf:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ACS_client.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ACS_common.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ISF_util.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ISF_j2ee.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ASB_utils.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/ASB_util_client.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/com.ibm.ws.ejb.thinclient_7.0.0.jar:/opt/IBM/InformationServer/ASBNode/eclipse/plugins/com.ibm.isf.client_8.5.0.0/com.ibm.ws.security.crypto.jar com.ascential.acs.logging.agent.LoggingAgentSocketImpl

注意:当ASB启动完成后,需要1分钟左右的时间注册事件到WAS,所以启动完成后不建议立即做像测试数据库连接和加载数据的操作。

2.3 启动DataStage Engine

$ uv -admin -start

启动完Engine进程后,如果没有任何客户端连接,端口的状态应为:LISTEN,并且dsrpcd 守护进程和resource_tracker进程启动。

$ netstat -a|grep dsrpc
tcp4 0 0 *.dsrpc *.* LISTEN $ ps -ef|grep dsrpc
root 19792368 1 0 13:07:03 pts/2 0:00 /software/IBM/InformationServer/Server/DSEngine/bin/dsrpcd $ ps -ef|grep resource_tracker
dsadm 10485832 1 0 13:07:19 - 0:00 /software/IBM/InformationServer/Server/PXEngine/bin/resource_tracker

3 停止InfoSphere Information Server进程

建议先停止DataStage Engine,再停止ASB代理,最后在停止WAS。

3.1 停止DataStage Engine

$ ps -ef|grep dsapi
$ ps -ef|grep dscs
$ ps -ef|grep -i phantom
$ netstat -a|grep dsrpc

停止前检查dsapi、dscs、phantom进程应该无任何输出,检查dsrpc端口的只有一条状态为LISTEN的进程,如果有为ESTABLISHED,类似下面的情况则表示当前有客户端连接到了服务端,需要等待客户端关闭连接或者kill了该连接。

tcp4       0      0  testHost.dsrpc       192.168.1.9.sftsrv    ESTABLISHED
tcp4 0 0 *.dsrpc *.* LISTEN

客户端关闭连接后停止Engine

$ uv -admin -stop

然后再次检查netstat -a|grep dsrpc 应无任何输出。如果在客户端未关闭的情况下强制停止进程,则未关闭的连接进程状态为wait,这表明Engine未完全停止。

netstat -a|grep dsrpc
tcp4 0 0 estHost.dsrpc 192.168.1.9.sftsrv FIN_WAIT_2

3.2 停止ASB代理程序

$ /opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh  stop

检查ASB代理

$ ps -ef|grep -i agent

输出的结果中应为没有任何包含ASBNode路径的进程信息,如果有请尝试重新停止。

3.3 停止WAS进程

$ /opt/IBM/InformationServer/ASBServer/bin/MetadataServer.sh stop

检查WAS进程

$ ps -ef|grep java

输出的结果中应为没有任何包含ASBServer路径的进程信息,如果有请尝试重新停止。

4 脚步

启动的脚步

echo set dataStage environment...
/opt/IBM/InformationServer/Server/DSEngine/dsenv echo start WebSphere Application Server
/opt/IBM/InformationServer/ASBServer/bin/MetadataServer.sh start echo check there are java process are running
ps -ef|grep java echo start ASB Agent
/opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh start
echo check the agent has running
ps -ef|grep -i agent echo start DataStage Services
uv -admin -start echo checking datastage backgroup process..
ps -ef |grep dsapi
ps -ef|grep dscs
ps -ef|grep -i phantom
ps -ef|grep dsrpc
echo checking datastage dsrpc port
netstat -a|grep dsrpc
echo see any momery segment left
ipcs ­qms ­a|grep ade

停止的脚步

echo set dataStage environment...
/opt/IBM/InformationServer/Server/DSEngine/dsenv
echo checking datastage backgroup process..
ps -ef |grep dsapi
ps -ef|grep dscs
ps -ef|grep -i phantom
echo checking datastage dsrpc port
netstat -a|grep dsrpc
echo stop DataStage Services
uv -admin -stop
echo see any momery segment left
ipcs ­qms ­a|grep ade
echo check the port again
netstat -a|grep dsrpc echo stop ASB Agent
/opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh stop
echo check the agent has stopped
ps -ef|grep -i agent echo stop WebSphere Application Server
/opt/IBM/InformationServer/ASBServer/bin/MetadataServer.sh stop echo check there are no java process left behind
ps -ef|grep java

5 总结

  ASB代理通信进程协助层与层之间的通信,ASB代理记录进程记录事件信息到元数据存储层的数据库中;DataStage Engine进程是核心进程,它负责创建、管理JOB、cache和资源;WebSphere Application Server(WAS)是InfoSphere Information Server基于Web的应用程序,它负责初始化连接器和基于web的console、infocenter等工具。它们之间互相协调工作,一个组件进程停止工作,会影响其它组件的工作,比如ASB进程停止会影响服务端与客户端的通信,导致客户端的连接断开,各种编辑和保存工作不能正常进行,有可能会导致数据丢失,So认真的理解基础知识和工作原理将会帮你更快更好的掌握DataStage。

--The end(2015-09-24)

DataStage 二、InfoSphere Information Server进程的启动和停止的更多相关文章

  1. 本地计算机上的SQL Server(MSSQLSERVER)服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止

    看下SQLExperss协议和 MySQLServer协议的TCP/IP端口,有可能是SQLEXPERSS将TCP端口占用了,将SQLEXPERSS的TCP/IP协议禁用,重启 SQLEXPRESS服 ...

  2. SQL Server2008 R2命令行启动及停止SQL服务的方法

    ===================================================== 在 SQL Server中,想要启动或停止SQL Server服务,通过SQL Server ...

  3. Android系统启动流程(二)解析Zygote进程启动过程

    1.Zygote简介 在Android系统中,DVM(Dalvik虚拟机).应用程序进程以及运行系统的关键服务的SystemServer进程都是由Zygote进程来创建的,我们也将它称为孵化器.它通过 ...

  4. ADB模块源码分析(二)——adb server的启动

    1. ADB Server的启动 前面我们讲到adb模块的源码在system/core/adb下面,通过查看Android.mk文件我们了解到这个adb 模块回编译生成连个可执行文件adb.adbd, ...

  5. [转]❲阮一峰❳Linux 守护进程的启动方法

    ❲阮一峰❳Linux 守护进程的启动方法 "守护进程"(daemon)就是一直在后台运行的进程(daemon). 本文介绍如何将一个 Web 应用,启动为守护进程. 一.问题的由来 ...

  6. Android系统在新进程中启动自定义服务过程(startService)的原理分析

    在编写Android应用程序时,我们一般将一些计算型的逻辑放在一个独立的进程来处理,这样主进程仍然可以流畅地响应界面事件,提高用户体验.Android系统为我们提供了一个Service类,我们可以实现 ...

  7. vnc server配置、启动、重启与连接

    目前有两种比较流行的方式:XDM(X display manager)方案和VNC方案,而我个人比较倾向于VNC方案,一是因为VNC方案配置起来相对比较容易,二是VNC方案支持多种连接方式,比如通过浏 ...

  8. 【Linux】- 守护进程的启动方法

    转自:Linux 守护进程的启动方法 Linux中"守护进程"(daemon)就是一直在后台运行的进程(daemon). 本文介绍如何将一个 Web 应用,启动为守护进程. 一.问 ...

  9. Linux如何查看进程、杀死进程、启动进程等常用命令

    Linux如何查看进程.杀死进程.启动进程等常用命令 关键字: linux 查进程.杀进程.起进程1.查进程    ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括 ...

随机推荐

  1. python 之 collections

    Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块.比如今天想给大家 介绍的 collections 就是一个非常好的例子. 基本介绍 我们都知道,Python拥有一些内置的数 ...

  2. java中读取配置文件

    若是Javaweb项目,项目运行于tomcat或其他容器时,可以使用下面方式来获取文件的输入流 1.当属性文件放在src下面时 InputStream is = Thread.currentThrea ...

  3. 解决yum 不能更新问题 :yum 报错Loaded plugins: fastestmirror, refresh-packagekit, security

    2018-07-02       21:43:13 Yum报错 [root@db yum.repos.d]# yum makecache Loaded plugins: fastestmirror, ...

  4. netty基本组件介绍

    Netty做为一款用于搭建高性能网络应用程序的高级框架,由以下几个主要构件组成: 一.Channel Channel 是java NIO的一个基本构造,可以把channel看作是传入或者传出的数据载体 ...

  5. windows 内存分配回收检查工具

    LeakDiag是微软一款检测memory leak的工具,使用比较简单 首先去下载一个ftp://ftp.microsoft.com/PSS/Tools/Developer%20Support%20 ...

  6. 学习笔记之Android

    Android 开发专区 - 开源中国社区 http://www.oschina.net/android 探索 Android Studio | Android Studio https://deve ...

  7. 给iOS开发新手送点福利,简述UISwitch的属性和用法

    UISwitch属性 1. onTintColor 处于on时switch 的颜色     switchImage.onTintColor = [UIColor grayColor]; 2.tintC ...

  8. 让别人能登陆你的mysql

    线上的数据库肯定是不能轻易在开发新功能的时候动的,如果你的数据库跟线上不一样了又没有新数据库的备份,就很麻烦. 当然去动线上数据库,出了什么问题我是不想背锅的. 最稳健的办法!让管理线上数据库的同学, ...

  9. Linux 移除python Error: Trying to remove “yum”, which is protected

    >yum intall python >yum -y remove python 出现Error: Trying to remove "yum", which is p ...

  10. Halcon中二维码解析函数解码率和时长的优化方法

    Halcon中条码解析函数包容多种条码类型且简单强大.现有的‘Data Matrix ECC 200’.‘QR Code’和‘PDF417’等广泛使用的条码均能解析.简单是通过默认参数即可对多种条码进 ...