GitHub releases golang library for Elasticsearch – Meet Vulcanizer a focused Go API

Share
  • March 6, 2019

Elasticsearch is used as the backend of GitHub searches and has been a fan favorite since its inception. It is a distributed, RESTful search and analytics engine that packs a lot of power under its belt. Not only does it perform searches quickly, but also features impressive scalability for individual use or running on a multitude of servers.

A new library for operating Elasticsearch from GitHub Engineering hit the scene a couple of days ago It offers new features and improvements to the infrastructure. Meet Vulcanizer – the focused Elasticsearch library! While there are already plenty of libraries for Elasticsearch available, let’s see what makes this new addition special.

Unraveling the Vulcanizer API

Vulcanizer is a golang library that interacts with an Elastsearch cluster. Its name is a clever take on the vulcanization chemical process (and it also helps that its name reminds us of Spock).

SEE ALSO: Get yourself a smart and flexible keptn for running cloud-native apps on Kubernetes

While it is not a full-fledged API client, it will help you with common tasks while operating a cluster. These tasks include querying health status, migrating data off of nodes, and updating cluster settings.

Its initial goals were simple: Access the REST endpoints on a single host; Perform an action; Provide results of the action.

You can perform custom operations in your Go application:

import "github.com/github/vulcanizer"

v = vulcanizer.NewClient("localhost", 9200)
oldSetting, newSetting, err := v.SetSetting("indices.recovery.max_bytes_per_sec", "1000mb")

Find some helpful examples on the GitHub Engineering announcement blog.

Currently, Integration tests are set up to run against the latest v5 and v6 versions of Elasticsearch.

Find the repo on GitHub and get up and running.

Future plans

Currently, the project is still under active development, so expect to see some issues and changes in the future. View the roadmap for a more in-depth look of the current version features and proposed future development plans.

Proposed ideas include shard allocation and much more. While the GitHub Engineering blog details some of the pitfalls that the team initially ran into, things are going much more smoothly and promise a bright future for Vulcanizer.

Will this API suit any of your needs and make operating clusters better for you?

Elasticsearch happenings

The news of this library also coincides with a new announcement from Elastic.co. There is now a new private Elasticsearch subscription tier. This addresses the growing needs in their already existing subscription plan. (Of course, the free open source version is still available.) Is this new subscription tier right for your environment?

SEE ALSO: Audit API security based on their OpenAPI contract

Meanwhile, the most recent version of Elasticsearch arrived in mid-February with version 7.0.0 Beta 1.

This new version came packaged with faster queries, smooth zoom on maps, and better integration with Stack features.

Check out the repo on GitHub and see what the buzz is all about.

The post GitHub releases golang library for Elasticsearch – Meet Vulcanizer a focused Go API appeared first on JAXenter.

Source : JAXenter