Tracing Kafka applications

Tracing is one of the hardest time in integration or microservice development: knowing how a request impact your different components, and if your components have behave as expected. This could be fairly easy if we have monolith where we have one database and with some queries or checking one log file you can validate everything went well. Once you introduce distributed components and asynchronous communication this starts to get more complex and tedious.
Read more

Rewind Kafka Consumer Offsets

One of the most important features from Apache Kafka is how it manages Multiple Consumers. Each consumer group has a current offset, that determine at what point in a topic this consumer group has consume messages. So, each consumer group can manage its offset independently, by partition. This offers the possibility to rollback in time and reprocess messages from the beginning of a topic and regenerate the current status of the system. But how to do it (programmatically)?
Read more

Scaling Kafka with Docker Containers

In this post I will show how to use Docker containers to create and scale a Kafka cluster, and also how to create, scale and move topics inside the cluster.
Read more

Speed up your Oracle Database provisioning with Docker and Ansible

Warming up before AMIS 25th Conference event where I will be presenting with my friend and colleague Arturo Viveros (@gugalnikov) about Oracle SOA Suite provisioning, I want to share some practices that help us to provide Oracle Database instances between developers and improve our productivity.
Read more

Ansible - an agentless provisioning

Ansible is an automation tool that is recognized for be simple and powerful at the same time. From my experience, I can say this is mainly because of its scripting language: YAML, and its agentless architecture.
Read more

Oracle SOA Suite 12c Docker Image

After find some limitations on building SOA Docker image using Dockerfile (as volume access, default size image) I researched on how to improve building process and I found Packer (from the same guy that creates Vagrant).
Read more

Integrate Java EE 7 and Kafka using Avro and RxJava

I decided to implement a naive integration between Java EE applications and RxJava/Kafka/Avro, to publish and subscribe to events. You can go directly to that code, or check my approach:
Read more

Oracle Fusion Middleware Chef Cookbook - New Release!

Yesterday, I released a new version (0.2.0) of my Oracle Fusion Middleware Cookbook hosted on Chef Supermarket
Read more

Docker image for Oracle SOA Suite 12c

Cool news came from Oracle a couple of weeks ago: Oracle WebLogic Server is now supported on Docker!.
Read more

Running Oracle BPM 12c on AWS using Vagrant and Chef

In this post, I will show how to create an AWS EC2 Instance with an Oracle BPM 12c Quickstart Domain created. And I will use previous post for related tasks.
Read more

Chef Cookbook for Oracle Fusion Middleware 12c

Provisioning tools have change the way we create software environments: How much time we spend installing OS, databases, configuring platforms, applications? Now you can translate this steps into code, getting the software development benefits and challenges into infrastructure: versioning, reuse, continuous improvement.
Read more

Create a NFS instance on AWS using Vagrant and Chef

I was creating AWS EC2 instances to install Oracle Fusion Middleware products, and I found an issue: How to download Oracle’s installers if I want to use installers on several instances? This could consume a lot of network bandwith and I want to make this process repeatable, so I don’t want to wait 1 hour each installation only downloading files.
Read more

Book Review - Applied SOA Patterns on the Oracle Platform

I’ve had the opportunity to present a review of this book Applied SOA Patterns on the Oracle Platform.
Read more

Vagrant and Chef Quickstart

I have some months working with Vagrant and I think it’s owesome! Integration with almost all kind of virtualization platforms: VirtalBox, VMware, Docker, AWS EC2, Hyper-V and so on. Also it’s able to use differente Provisioners: Chef, Puppet, bash, Docker, Ansible. I really like it.
Read more