Agent简化云应用与企业内部部署应用之间的集成

本文将介绍Oracle集成云Agent的基础架构,所包含的组件,和如何连接云与OP应用。

目前/典型的集成方式

目前常用的将云应用/基于互联网的应用与企业内部部署(OP)应用连接的方式为:穿透一层或者更多的防火墙,使用反向代理、Oracle API Gateway或者OHS。要实现这些操作需要多种专业知识,比如防火墙需要开放入站端口,暴露一个私有的SOAP/REST服务并且配置网络路由。SOAP/REST服务可以用SOA套件之类的产品实现,比如与CRM系统进行通讯,实现客户信息的接收。如下图所示:


如果使用集成云Agent,将会对上图进行大幅度的简化。

常用的云与OP应用集成模式

目前有三种常用的云与OP应用的集成模式,分别是使用消息发送、使用代理服务、使用Agent。

  • Proxy(同步/异步)——混合云
    •  能够通过部署在DMZ区的网络Proxy,比如APIGateway或者OHS对OP端的SOA套件进行访问
    • OP端SOA套件对适配器进行封装,使云应用能够调用
    •  集成云服务通过Proxy发送消息
  • 消息发送(异步)——混合云
    • OP端SOA套件从消息服务(Messaging Service)上抓取消息
    • OP端SOA套件对适配器进行分装,使消息能够对其进行发送
  • Agent(同步/异步)
    • Agent在用户的内部网络运行
    • Agent建立与ICS的通讯通道
    • ICS通过通道向Agent发送消息
    • Agent对适配器进行封装,与OP应用进行通讯

什么是连接Agent?

基本上Agent是一个云应用和OP应用之间的一个网关。Agent消除了以往从防火墙外与OP应用集成时所遇到的安全性和复杂性问题。通过Agent能够使用已有的JCA适配器框架与现有的OP应用,比如数据库或者ERP,进行连接。

消息交换模式

当进行云应用与OP应用的通讯时,Agent符合几种消息交换的模式。

模式

用例

从云向OP发送的同步请求用于接收数据

从EBS中实时获取订单状态

云应用的事件触发与OP应用的异步消息交换

RightNow中创建一个事件引发EBS中的服务请求

OP应用的事件触发与云应用的异步消息交换

EBS服务请求的更新通过异步消息对RightNow进行数据同步

OP应用与云应用之间的数据同步提取

EBS中的客户数据同步到CRM

架构准则

Agent的架构准则在其开发之前就被创建。

  • 最重要的准则是在与OP应用进行通讯时,不需要开放入站端口。这意味着不需要在防火墙上创建规则来提供接入。这样就避免了开放端口被滥用的问题。
  • 准则二:是不需要使用(反向)代理,比如APIGateway或者OHS,来暴露一个依据Web Service的私有SOAP接口。
  • 准则三:是不需要将任何的OP应用部署在DMZ区。Agent安装在能够对后端系统进行访问的本地网络。
  • 准则四:不需要使用现有的J2EE容器进行Agent的部署。
  • 准则五:不需要IT人员监控OP组件。Agent的监控使用的是ICS中的监控界面。

架构

Agent由两个组件组成,Cloud Agent安装在ICS端,本地Agent安装在OP端。它使用消息云进行消息交换,并且仅允许建立指向Oracle云的连接。它不允许显式的入站连接。Agent使用已有的JCA适配器框架调用OP应用端点,比如数据库、文件和ERP(Siebel/SAP)。


特性

Agent的安装是采用静默模式进行的,在安装的过程中会注册到集成云服务当中。Agent注册后,可以通过一个从ICS发起的Ping操作测试与OP应用和数据源的联通性。在设计ICS流时,配置目标数据源后,OP应用的EIS元数据会自动被获取。

Cloud Agent能够将配置使用激活重定向传输到OP本地。这就意味着数据源(EIS元数据)能够在ICS当中配置,并传输到指定的本地Agent。更进一步,Agent使用运行时重定向,允许在OP本地进行执行。这意味着,当一个目标添加到ICS的Agent当中,能够使用消息交换将消息发送到本地Agent。

ICS支持多个Agent,实现负载分布和高可用性。比如,可以使用多个Agent,每一个Agent运行在不同的主机。Agent可以按照功能、流程或者组织级别分组。

最后,Agent支持多种消息交换模式(云<->本地),比如同步请求/响应和发射后不管。

和Agent一起打包的组件

Agent能够从ICS中下载,并在本地安装。


Agent安装包中包括的组件有:

  • WebLogic Server
  • JRF
  • Agent & Messaging Cloud Service(OMSC)客户端
  • OP适配器

最后,你会得到完整安装的带有Domain、受管服务器、必要的客户端和JCA Adapter的WebLogic Server。

将Agent与ICS连接非常简单,在安装的过程中,用户只须在安装界面或者命令行中提供进行ICS认证的用户名和密码即可。


安装流程

ICS Agent的安装非常简单,只包含如下几步:

1、  安装程序首先进行安装前检查

a)        版本检查,查看安装程序是否有效

b)        获取OMCS证书,并在ICS上注册Agent实例

2、  检查后,安装WebLogicServer

3、  安装程序执行OPSS的RCU和获取OMCS证书,该步骤基于内置的JavaDB实现

4、  OPSS创建和配置完成,安装程序创建了一个包含JRF的WebLogic域

5、  最后配置Agent,建立Home目录和Classpath与共享库,启动Agent


OMCS认证流程

在第三步中,消息云服务的证书被获取并存储在证书库当中(OPSS)。当用户在ICS当中创建了Agent实例时,会创建一个AppID。AppID被所有的Agent使用,用来进行认证。用户在安装Agent时,安装程序会从ICS接收AppID和OMCS密码。

安装程序通过一个基于SSL的REST接口将证书获取到OP端。AppID和密码存储在OP端WebLogic的CSF库(OPSS)当中。Agent使用基于SSL的HTTP基本认证方式与OMCS和ICS进行认证。

Agent支持哪些Connection?

Agent所支持的这些适配器可以在与ICS通讯时建立直接的连接。支持的适配器包括EBS、Siebel、SAP、Oracle DB、SOAP等,并且所支持适配器还会不断的增加。


使用Agent,混合云集成将变得更加简单与安全。

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
本次主要是详细记录Docker1.12在Ubuntu16.04上的安装过程,创建Docker组(避免每次敲命令都需要sudo),Docker常用的基本命令的总结,在容器中运行Hello world,以及创建一个基于Python Flask的web应用容器的全过程。 1.Docker1.12在Ubuntu16.04上安装 1.1.先决条件1,添加Docker源 wxl @wxl - pc: ~ $ sudo apt-get update 增加CA证书 wxl@wxl -pc :~$ sudo apt -ge
参考自: http://blog.csdn.net/jdplus/article/details/45920733 进行了大范围修改和完善 文件下载 CDH (Cloudera’s Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境。  Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的
Spark可以通过三种方式配置系统: 通过SparkConf对象, 或者Java系统属性配置Spark的应用参数 通过每个节点上的conf/spark-env.sh脚本为每台机器配置环境变量 通过log4j.properties配置日志属性 Spark属性 Spark属性可以为每个应用分别进行配置,这些属性可以直接通过SparkConf设定,也可以通过set方法设定相关属性。 下面展示了在本地机使用两个线程并发执行的配置代码: val conf = new SparkConf() .setMaster(
云端基于Docker的微服务与持续交付实践笔记,是基于易立老师在阿里巴巴首届在线技术峰会上《云端基于Docker的微服务与持续交付实践》总结而出的。 本次主要讲了什么? Docker Swarm Docker Swarm mode 微服务支持(Docker集群架构体系) Docker的发展趋势和前沿成果 在Docker技术方面还是很佩服大牛的,所以赶紧写下笔记,追随大神的脚步。 阿里云资深专家易立,技术就不说了,他比其他直播间硬生生多讲了半个多点,于情于理还是万分感谢本次分享的(可惜devOps没时间讲了
前面我们已经部署好了一个Docker Swarm集群环境,接下来,我们就对Swarm集群的相关管理进行简单介绍。 集群调度策略 既然是集群,就是有一个调度策略,也就是该集群包含那么多子节点,我到底是设置一个什么样的策略来进行分配呢? 我们查看Docker官方文档可以看到Swarm的集群调度包含三种策略: To choose a ranking strategy, pass the  --strategy  flag and a strategy value to the  swarm manage  co

docker4dotnet #2 容器化主机 - 2016-07-21 14:07:47

.NET 猿自从认识了小鲸鱼,感觉功力大增。上篇 《docker4dotnet #1 前世今生世界你好》 中给大家介绍了如何在Windows上面配置Docker for Windows和Docker Tools for Visual Studio来使用docker协助.NET Core应用的开发,这篇我们来看看如何创建和管理容器化主机。 所谓容器化主机Dockerized Host,就是安装了docker engine的主机,可以使用docker工具进行管理。使用docker来协助开发,我们至少需要本地和

Oozie安装总结 - 2016-07-20 18:07:35

一、使用CM添加服务的方式安装Oozie 如果在创建Oozie数据库时失败,且提示数据库已存在,如下图,则可能是之前已经安装过Oozie,没有卸载干净,需要手动将Oozie服务器数据目录删掉(oozie/data部分),见图二                                                                            (图一)                                                              

kafka本地单机安装部署 - 2016-07-20 18:07:35

kafka是一种高吞吐量的分布式发布订阅消息系统,这几天要上kafka,只在其中的一个节点使用,结合具体的项目实践在此将kafka的本地安装部署流程记录下来与各位同仁分享交流。 准备工作: 上述的文件除了jdk以外均放在/usr/local/kafka目录下。 1、安装jdk,kafka的使用要用到jdk 首先检查有无jdk:java -version cd /usr/local/hadoop(本例中我是将jdk的安装包放到hadoop文件夹下,各位可以依据自己情况) http://www.oracle.

Swift 存储目录 - 2016-07-20 17:07:03

  在 Storage node 上运行着 Linux系统并 使用了 XFS文件系统 ,逻辑上使用一致性哈希算法将固定总数的 partition 映射到每个 Storage node 上,每个 Data 也使用同样的哈希算法映射到 Partition 上,其层次结构如下图所示: Figure1:Stoage node hierachy     以我们的一台 storage node sws51 为例,该 device 的文件路径挂载到 /srv/node/sdc ,目录结构如下所示: root@sws51
翻译:@胡杨(superhy199148@hotmail.com) @胥可(feitongxiaoke@gmail.com) 校对调整: 寒小阳 龙心尘 时间:2016年7月 出处: http://blog.csdn.net/han_xiaoyang/article/details/51932536 http://blog.csdn.net/longxinchen_ml/article/details/51940065 说明:本文为斯坦福大学CS224d课程的中文版内容笔记,已得到斯坦福大学课程@Rich