Monday, 15 January 2018

Start, Stop & Deinstall ICS agent server

In my previous blog, we have learned how to install Oracle ICS agent on Linux server. As we have seen during ICS connectivity agent installation, it runs on Weblogic server. However, we should not use startWebLogic.sh nor stopWebLogic.sh to start and stop on-premises agent.


Instead, ICS agent provides another script startAgent.sh and stopAgent.sh to start and stop on-premises agent respectively. This two script resides inside the folder where we have installed the Agent.



Start ICS Agent

  • Log in to the host machine where we have installed ICS agent
  • Set JAVA_HOME using export JAVA_HOME=/usr/java/jdk1.7.0_80
  • Move to the directory where ICS agent has been installed and see the files under this
  • See startAgent.sh exist in the directory. Hit the below command to start ICS agent
               nohup ./startAgent.sh -u=test@test.com -p=TEST@123 &

Where: -u= {User Name of ICS console} and -p={Password of ICS console}
  • As we have used the nohup command to start the agent. The agent will start in the background. To see the output use below command
    • tail -500f nohup.out
  • Make sure server starts with a successful message


Stop ICS Agent

  • Login into the host machine where we have installed ICS agent
  • Set JAVA_HOME using export JAVA_HOME=/usr/java/jdk1.7.0_80
  • Move to the directory where ICS agent has been installed and see the files under this

  • See stopAgent.sh exist in the directory. Hit the below command to start ICS agent
               ./stopAgent.sh
  • Make sure server stop with a successful message

Deinstall ICS Agent

In order to deinstall ICS agent follow the below steps:
  • Stop ICS agent as shown in the previous steps
  • Delete the directory in which on-premises agent is installed
  • Now delete it from ICS console
    • Log in to the ICS console
    • Click Agent tile from ICS home page
    • Find the Agent group
    • Click the number representing the agent count. The Agents in this Agent Group dialog is displayed.
    • Find the agent to delete, and click X to delete the agent registration.

ICS(Integration Cloud Service) On-Premises agent installation

This purpose of this blog is to show you how to install Oracle ICS On-Premises agent. The Oracle On-Premises Agent (aka, Connectivity Agent) is necessary for Oracle ICS to communicate to on-premise resources without the need for firewall configurations or VPN.



Below are the System Requirements before we start On-Premise agent installation.

  • Agent Group: Agent Group is required before we run the agent installer. When we install the on-premises agent in the environment, we associate the on-premises agent with the agent group identifier. 
  • JDK: Install only Oracle JDK version 1.7 or 1.8. Other JDKs such as Open JDK are not supported.
  • Supported OS: Below OS are supported to install Oracle ICS agent
    • Linux OEL version 6 or 7
    • Red Hat Enterprise Linux Server release 6.6 (Santiago)
    • SUSE Linux Enterprise Server 12 SP1
  • Hardware Requirement: 8GB memory with 4 GB of heap size dedicated to the agent JVM
  • On-Premise Agent Installer: On-Premise Agent installer can be downloaded from Oracle ICS home page.
  • Internet Access: Either internet access or white-list the Oracle ICS public IP on the host where we'll install Oracle ICS agent.


Download ICS On-Premise Agent
  • Login to the Oracle ICS console
  • Click on the Agent tile from home page
  • Click Download and select Connectivity Agent: Installer is almost 1.7GB and may take time to install depending on your network speed.


Create an Agent Group

We must create an agent group in Oracle Integration Cloud Service before we can run the agent installer. When we install the on-premises agent in our environment, we associate the on-premises agent with the agent group identifier. Only one on-premises agent can be associated with an agent group. For a single Oracle Integration Cloud Service instance, we can create up to five agent groups. 

Follow the below steps to create Agent Group
  • Login into ICS console
  • Click on Agent tile from home page
  • Click on Create Agent Group
  • Enter Agent Group Name and Identifier. Additionally, you can provide the meaningful description in the Description text box. Click on Create button

  • ICS Agent Group will be created


Install ICS On-Premise Agent
  • Log in to the host machine
  • Set JAVA_HOME using export JAVA_HOME=/usr/java/jdk1.7.0_80
  • Set PATH using export PATH=$JAVA_HOME/bin:$PATH
  • Verify the JAVA_HOME and PATH variables using echo $JAVA_HOME and echo $PATH, these paths must be pointed to the exact java location.
  • Copy the ICS agent on any one of the location on the host where you want to install Agent
  • Unzip the installer
  • Locate the cloud-connectivity-agent-installer.bsx agent installer file
  • Make sure you must have executable permission to install the agent
  • Run below command
./cloud-connectivity-agent-installer.bsx —h=https://ICS_host.us.oracle.com:port —u=username —p=my_password —ad=agent_group_identifier -au=agent_username -ap=agent_password

Below table depicts the parameter that can be used during installation as per the requirement

Parameter
Required
Description
-h
Yes
Oracle Integration Cloud Service hostname and port. For example,  https:// test.integration.us2.oraclecloud.com:443
-u
Yes
Oracle Integration Cloud Service username.
-p
Yes
Oracle Integration Cloud Service password.
-ad
Yes
Agent group identifier that was generated in the Identifier field when we created the agent group 
-au
No
This is a new username used to initialize the local installation of the on-premises agent. If not specified, the default username of Weblogic is used.
-ap
No
Specify a password for the new agent username. If not specified, the default password is used. We may need to contact Oracle Support Services to obtain the default password for the default user Weblogic.
—aport
No
Specify the agent port (for example, 9002). This enables us to specify any available port outside of the default value of 7001. If not specified, it defaults to 7001. Any free port can be used.
-ph
No
Hostname, or address, of the proxy server. The -ph and -pp properties are only required if your on-premises environment is set up with a proxy server mandating that all connections be routed through it.
-pp
No
Port number of the proxy server.
-pu
No
Proxy server user.
-ppw
No
Proxy server user password.
-nphosts
No
Nonproxy hosts:-nphosts=NONPROXYHOSTS. We can specify a single host or multiple hosts separated by a |. For example:
-nphosts=abc.com|xyz.com
-profile
No
Set the number of worker threads to a value appropriate to your environment.

Please wait, installation takes time. Once completed, check the logs at the same location from where you have run the command.

During installation, the following tasks are performed:
  • All on-premises adapters are registered.
  • A Java database is installed.
  • The JRF domain is created.
  • The on-premises agent is deployed.

Once done you will get the successful message as shown in the below screenshot


Once the installation is complete, an agent instance is created for interacting with Oracle Integration Cloud Service.

Verify that the agent instance was created by going to the Agent Groups page from ICS console and noting that the agent count was increased by one. If we click the number, details about the agent are displayed.


We are now ready to create an adapter connection in Oracle Integration Cloud Service that uses the on-premises agent.

Create a REST connection in Oracle ICS

In this article, we will show you how to create REST connection that might be used to create REST service.

This is very simple and fairly simple

Below are the simple steps to create REST connection
  • Login to the ICS console
  • Move to the home page
  • Click on Connection
  • Click on Create button from upper right corner
  • Search REST and select REST Adapter


  • Enter Name as TEST_REST_Conn and select Trigger from Role type drop down. We have selected Trigger as we want to expose this REST connection as a REST service. Means this will work as an endpoint for the end user
  • As this is the Trigger REST connection, you don't need to configure anything in this. Leave all as it is. And click on Test button in the upper right corner. If everything goes fine, progress bar will reach 100%
  • Click Save and close button from upper right corner
That's it. Now you are done with the REST connection and can be used to develop some kind of REST service in ICS.

Salesforce Adapter in Oracle ICS(Integration Cloud Service)

Integration Cloud Service provides a powerful adapter that is called Salesforce adapter being used to create a connection with Salesforce CRM application.


The Salesforce adapter provides the following advantages:


  • Integrates easily with the Salesforce application’s WSDL file to produce a simplified, integration-centric WSDL.
  • Contacts the Salesforce application to fetch metadata information about business objects.
  • Provides invoke (outbound) support for using a custom WSDL that includes custom Apex classes exposed as SOAP web services.
  • Provides trigger (source) messaging support for objects through the use of the Salesforce outbound messaging WSDL.
  • Provides trigger (source) callback support.
  • Provide invoke support for CRUD (create, get, update, and destroy) operations
  • Provide invoke support for Salesforce Object Query Language (SOQL) or Salesforce Object Search Language (SOSL) query operations
Below is the pre-requisite to start the SFDC connection
  • Salesforce account credentials
  • Salesforce Enterprise WSDL
Let's suppose we already have an SFDC credentials and try to get the Enterprise WSDL.

Below are the steps to generate the Enterprise WSDL:
  • Login to the SFDC
  • Click on the Username from the upper right corner

  • Enter API from search box and Select API
  • Click on Generate Enterprise WSDL
  • Click on the Generate button

  • Save WSDL

Now we have SFDC Enterprise WSDL in place. Let's create SFDC connection in ICS.


Follow the steps to create SFDC connection.
  • Login to the ICS
  • Click on the Connection
  • Click on Create button
  • Search Salesforce and Select Salesforce adapter

  • Enter Name and select Trigger/Invoke as a Role basis on your requirement and Click Create button
  • Select Configure Connectivity button. Select the enterprise WSDL that we have saved in the above steps during getting Enterprise WSDL and click OK

  • Click Configure Security button, and enter SFDC Username and password and click OK button
  • Click on Test button and Validate and Test button from the popup
  • If everything goes fine then progress goes to 100% as shown in the below screenshot
  • Click Save and Close button

Now we are done with the SFDC connection and ready to use in our integration.

Oracle Integration Cloud Service(ICS)

In subsequent series of blogs, we will walk you through the concepts as well as running the demo.


Let's get started with the small concept of ICS.

What is Oracle Integration Cloud Service(ICS)?

Oracle Integration Cloud Service (ICS) is Oracle’s integration Platform as a Service (iPaaS). It provides a web-based interface to integrate Software as a Service (SaaS) and on-premise applications. It includes various technology and application adapters.

Oracle Integration Cloud Service (ICS) is a simple and powerful integration platform in the cloud to maximize the value of your investments in SaaS and on-premises applications.

Oracle Integration Cloud Service is Oracle's integration platform as a service (IPaaS) and includes an intuitive web-based integration designer for point and click integration between applications, a rich monitoring dashboard that provides real-time insight into the transactions, all of it running on a mature runtime platform on Oracle Cloud.

ICS will help customers accelerate their integration projects by pre-integrating with several SaaS Applications and will significantly shorten their time-to-market through a highly intuitive user interface and a large library of SaaS Adapters

Advantages of ICS
  • Fast
  • Enterprise-grade
  • Simple
  • Little knowledge of technologies required
What integration we can do with ICS?
  • Integration of SaaS to SaaS application
  • Integration of SaaS to on-premises application
  • Integration of on-premises to SaaS application
  • Integration of on-premises to on-premises application

Adapters available in ICS

Oracle provides a number of adapters for use with Oracle Integrated Cloud Service. Till ICS version 17.1.3, ICS contains 50 adapters. Below is the full list of available Adapters that can be used to directly integrate your SaaS and on-premises application.
  • Adobe eSign
  • AQ
  • Ariba
  • Cocnur
  • DB2
  • DocuSign
  • Eloqa
  • Eventbrite
  • Evernote
  • Facebook
  • File
  • FTP
  • Google Calendar
  • Google Mail
  • Google Task
  • JD Edwards EnterpriseOne
  • JMS
  • LinkedIn
  • Logistics
  • MailChimp
  • Microsoft Calendar
  • Microsoft Contact
  • Microsoft Email
  • Microsoft SQLServer
  • MySQL
  • NetSuite
  • Oracle Commerce Cloud
  • Oracle CPQ
  • Oracle Database
  • Oracle E-Business Suite
  • Oracle ERP Cloud
  • Oracle Field Service Cloud
  • Oracle HCM Cloud
  • Oracle Messaging Cloud Service
  • Oracle RightNow
  • Oracle Sales Cloud
  • Oracle Siebel
  • Oracle Utilities
  • Responsys
  • REST
  • Salesforce
  • SAP
  • ServiceNow
  • SOAP
  • SRM Cloud Adapter
  • Successfactors
  • SurveyMonkey
  • Trello
  • Twilio
  • Twitter

For more details about adapters please go through the link

Security capabilities in Integration Cloud Service?

There are several dimensions of security that Integration Cloud Service supports.
  • Physical/Data center security - provided by Oracle Cloud Data Centers.
  • ICS Product Security – ensuring that your ICS environment is secured from from external threats and also ensure security of any customer's data and metadata within ICS ecosystem.
  • ICS capabilities to securely integrate with Oracle's own SaaS apps on OPC seamlessly.
  • ICS capabilities to securely integrate with any third party Application (generic SOAP/REST API based interface).
  • ICS capabilities to securely integrate with on-premises applications

Oracle Integration Cloud Service Agent

Oracle ICS provides an agent framework that enables you to create integrations and exchange messages between on-premises applications and Oracle Integration Cloud Service. Message payloads of up to 5 MB are supported through the use of compression, which may bring the payload down to 512 KB in size. The on-premises agent provides multithreading support, which allows for multiple executors to perform downstream message processing.

This type of integration enables:

  • Access SOAP endpoints
  • Access non-SOAP endpoints (such as Oracle E-Business Suite and Oracle Siebel)
  • Send requests from a cloud application (for example, send a Create Service Order request from an Oracle RightNow Cloud application) to an on-premises E-Business Suite application


The agent framework consists of the following components:

SAAS agent: This agent is installed and runs in Oracle Integration Cloud Service and supports communication with on-premises applications. There is one SAAS agent per Oracle Integration Cloud Service environment.

On-premises agent: This agent is installed and runs in an on-premises environment on the same network as internal systems such as Oracle E-Business Suite, Oracle Database, and others. We download the on-premises agent installer from the Agents page in Oracle Integration Cloud Service to your on-premises environment for installation. There can be multiple host systems, each running one or more agents, in a cloud/on-premises topology. The on-premises agent does not permit any explicit inbound connections. All connections are established from the on-premises environment to Oracle Integration Cloud Service.



Once the agent is successfully installed and registered with ICS instance the count will get the increase to 1.

Oracle Integration Cloud Service Connections

Connection in Oracle ICS


A connection is an instance of an adapter, configured to use a particular endpoint and credentials.

Oracle Integration Cloud Service includes a set of predefined adapters, which are the types of applications on which you can base your connections, such as Oracle Sales Cloud, E-business suite, SOAP, REST, and others.

A connection is based on an adapter. A connection includes the additional information required by the adapter to communicate with a specific instance of an application (this can be referred to as metadata or as connection details).

For example, to create a connection to a Salesforce cloud application instance, you must select the Salesforce adapter and then specify the Enterprise WSDL URL, security policy, and security credentials to connect to it.


Types of Connection

ICS allows you to create three types of connection based on your requirement.

1) Trigger: Trigger is a source. If you want your connection to treat as a source of your integration then select Trigger.

2) Invoke: Invoke is like a target. If you want your connection to treat as a target in your integration then select Trigger.

3) Trigger and Invoke: Both source and target. If you want your connection to treat as a source as well as a target in your integration then select Trigger and Invoke.