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服务:

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

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

  1. $ ps -ef|grep java
  2. 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状态

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

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

  1. 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代理程序

  1. $ /opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh start
  2. Starting LoggingAgent...
  3. LoggingAgent started.
  4. Starting Agent...
  5. Agent started.

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

  1. $ netstat -a|grep 31533
  2. tcp 0 0 *.31533 *.* LISTEN
  3. $ netstat -a|grep 31531
  4. tcp 0 0 *.31531 *.* LISTEN
  5. $ ps -ef|grep -i agent
  6. 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
  7. 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

  1. $ uv -admin -start

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

  1. $ netstat -a|grep dsrpc
  2. tcp4 0 0 *.dsrpc *.* LISTEN
  3. $ ps -ef|grep dsrpc
  4. root 19792368 1 0 13:07:03 pts/2 0:00 /software/IBM/InformationServer/Server/DSEngine/bin/dsrpcd
  5. $ ps -ef|grep resource_tracker
  6. 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

  1. $ ps -ef|grep dsapi
  2. $ ps -ef|grep dscs
  3. $ ps -ef|grep -i phantom
  4. $ netstat -a|grep dsrpc

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

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

客户端关闭连接后停止Engine

  1. $ uv -admin -stop

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

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

3.2 停止ASB代理程序

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

检查ASB代理

  1. $ ps -ef|grep -i agent

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

3.3 停止WAS进程

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

检查WAS进程

  1. $ ps -ef|grep java

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

4 脚步

启动的脚步

  1. echo set dataStage environment...
  2. /opt/IBM/InformationServer/Server/DSEngine/dsenv
  3. echo start WebSphere Application Server
  4. /opt/IBM/InformationServer/ASBServer/bin/MetadataServer.sh start
  5. echo check there are java process are running
  6. ps -ef|grep java
  7. echo start ASB Agent
  8. /opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh start
  9. echo check the agent has running
  10. ps -ef|grep -i agent
  11. echo start DataStage Services
  12. uv -admin -start
  13. echo checking datastage backgroup process..
  14. ps -ef |grep dsapi
  15. ps -ef|grep dscs
  16. ps -ef|grep -i phantom
  17. ps -ef|grep dsrpc
  18. echo checking datastage dsrpc port
  19. netstat -a|grep dsrpc
  20. echo see any momery segment left
  21. ipcs ­qms ­a|grep ade

停止的脚步

  1. echo set dataStage environment...
  2. /opt/IBM/InformationServer/Server/DSEngine/dsenv
  3. echo checking datastage backgroup process..
  4. ps -ef |grep dsapi
  5. ps -ef|grep dscs
  6. ps -ef|grep -i phantom
  7. echo checking datastage dsrpc port
  8. netstat -a|grep dsrpc
  9. echo stop DataStage Services
  10. uv -admin -stop
  11. echo see any momery segment left
  12. ipcs ­qms ­a|grep ade
  13. echo check the port again
  14. netstat -a|grep dsrpc
  15. echo stop ASB Agent
  16. /opt/IBM/InformationServer/ASBNode/bin/NodeAgents.sh stop
  17. echo check the agent has stopped
  18. ps -ef|grep -i agent
  19. echo stop WebSphere Application Server
  20. /opt/IBM/InformationServer/ASBServer/bin/MetadataServer.sh stop
  21. echo check there are no java process left behind
  22. 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. 【项目经验】macpro上安装office办公软件并破解

    链接: https://pan.baidu.com/s/1i5hyKO9 密码: 7zjf 如果本机原有office,先卸载 双击pkg文件安装office for Mac 2016 安装完不要做打开 ...

  2. Archiva与maven配置使用

    在之前的博文里头已经介绍了Archiva私服的使用,本文主要介绍,如何与maven进行配置,在进行maven使用的时候可以自动上传至Archiva上 1.设置maven的用户配置,到maven的安装目 ...

  3. Firefox渗透插件—Web渗透必备工具

    1:Firebug Firefox的 五星级强力推荐插件之一,不许要多解释 2:User Agent Switcher 改变客户端的User Agent的一款插件 3:Hackbar 攻城师们的必备工 ...

  4. 【推荐】开源来自百度商业前端数据可视化团队的超漂亮动态图表--ECharts

    本人项目中最近有需要图表的地方,偶然发现一款超级漂亮的动态图标js图表控件,分享给大家,觉得好用的就看一下.更多更漂亮的演示大家可以参考下面两个网址:ECharts官方网址:http://ecomfe ...

  5. 黄聪:360浏览器、chrome开发扩展插件教程(1)开发Chrome Extenstion其实很简单

    转载:http://www.cnblogs.com/walkingp/archive/2011/03/31/2001628.html Chrome的更新速度可以说前无古人,现在我每天开机的第一件事就是 ...

  6. Java 基于UDP的类似于QQ的循环通信

    package Day10; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetS ...

  7. 学习笔记之SQL 教程

    SQL 教程 | 菜鸟教程 http://www.runoob.com/sql/sql-tutorial.html SQL,指结构化查询语言,全称是 Structured Query Language ...

  8. MTU&MSS

    MTU是Maximum Transmission Unit的缩写,意为最大传输单元,通俗的理解就是在网络上传送的最大数据包,单位是字节. 以太网对数据帧的长度都有一个限制,其最大值为1500,这个特性 ...

  9. Android 多线程注意事项

    参考:http://blog.csdn.net/x86android/article/details/14161981 http://geeksun.iteye.com/blog/1447708 An ...

  10. requests and BeautifulSoup

    requests Python标准库中提供了:urllib.urllib2.httplib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作, ...