Access Oracle Event Hub Kafka from External Kafka Client or Tool

Access Oracle Event Hub from external Tool or Command-Line Client

Oracle Event Hub provides a managed Kafka PaaS solution. To access it from an on-premises client you have to make sure to enable the ports to Event Hub Zookeeper and the Kafka broker.

Access to Kafka Broker

First lets enable access to Kafka broker. To do so, check the OPC Event Hub service for the connect string.

Create Event Hub Broker Access Rule

Then create a new access rule. Warning: In general you should not allow public access to access your Event Hub service! This is just for demo purposes to make the tool work. In case of doubt create a rule with your own IP address and talk your friendly security officer first of all.

The creation of the rule might take a few seconds:

Create Zookeeper Access Rule

Once the rule for the Kafka broker is created, we need to create a rule for Zookeeper which is using port 2181:

Explore Kafka Tool (or other)

Now lets start our Kafka tool (for demonstration purpose) only, configure the connection details for the Zookeeper IP and port, and then try to connect to Oracle Event Hub Service:

Voila, it is working 🙂 You can explore your topics or even create new ones. Note that  Oracle Event Hub uses a special naming convention for topics.

Oracle Event Hub Cloud Service: What you need to know about Topic Names

There are a number of things related to topics in Oracle Event Hub service that everybody should be aware of:

  • Oracle Event Hub topics created with the web console are automatically prefixed with the OPC ID domain.
  • Event hub topics can be created via the Kafka command-line from any host (assuming you allow the clients to access Event Hub CS). These topics are not prefixed with the OPC ID domain.
  • Topics created with the CLI (without ID domain prefix) are not shown in the service console.

IMHO, this is behaviour is not very useful for various reasons:

  • If you are planning to use Event Hub as a drop in replacement for another Kafka installation you won’t be able to create the proper topic names for already existing topics with the service console.
  • You have to add the ID domain prefix in every client. This is particularly bad e.g. for a Java producer. Hard-coded ID domains will show up sooner or later in the source code.
  • Being forced to use the ID domain prefix in every client might turn out to be a security issue. Did you note that most bloggers blacken their ID domains in screenshots when writing about OPC?

 

The 2016 Leap Second in the Cloud: It’s spread out for Oracle DBs on RDS

The 27th leap second will be officially applied December 31, 2016 at 23:59:60 UTC. For Oracle DB instances on RDS the following applies:

  • RDS will spread out the leap second equally in the 24h surrounding the timestamp above.
  • After this period RDS time will be in sync with  Cordinated Universal Time.
  • This applies for Oracle DB instances with versions 11.2.0.2, 11.2.0.3, and 12.1.0.1. They will follow AWS Adjusted Time that is applied to RDS.

Oracle Container Cloud Service (OCCS)

Docker has undergone a dramatic evolution in only the last couple of years. From virtually unknown in 2014, it still seemed to be a exotic, niche open source solution when WebLogic was certified on Docker in early 2015.

Nowadays this is different. End of 2016 it has become very common to explore new software by just running an official Docker image from Docker hub. CI / CD pipelines are often built on Docker for repeatability. Docker is one of the key building blocks for runtime environments of those wandering down the microservices alley.

However, you need much more than just a starting a Docker container or two. You need infrastructure, networking, private and public registries, containers have to be scaled and restarted if they fail. All this needs to be installed, configured, and operated. On premises this is not an easy task.

There is a huge difference between spinning up a Docker container and operating a Kubernetes cluster for enterprise critical applications 24/7 in production. So the the obvious choice is often the cloud with a PaaS based container cloud service.

Oracle Container Cloud Service (OCCS) is the newest addition in the Oracle Cloud portfolio. It was built to solve the issues discussed in this posting. The following webcast helps you to understand the key components of OCCS. If you follow it, you can have a worldwide monitoring of your own domain running in some 5 minutes on a hosted Docker container.

Those who know my WebLogic Distinctive Recipes book understand that I am not a big fan of those click here, screenshot, then click there, screenshot articles – therefore I created the webcast for you with a working example that is not already in OCCS. Make sure to read the OCCS documentation anyway.

 

Let me know if you like it!