Vinod Borole

Vinod Borole

Vinod Borole is Lead Software Engineer at GS Lab.

Posted by on in Technology

Trove Overview

OpenStack Trove is a DBaaS (Database as a service) solution. It offers IT organizations the ability to operate a complete DBaaS platform within the enterprise. IT organizations can offer a rich variety of databases to their internal customers with the same ease of use that Amazon offers with its AWS cloud and the RDS product. Openstack trove supports both RDBMS as well as NoSQL databases.

DBAAS

Database as a service on cloud intends to reduce complex and repetitive administrative tasks related to database management and maintenance. Tasks involve operations such as - Database instance deployments, database creation, configuration, periodic backups of database instances, patching. It also involves continuous health monitoring for database instances.

Trove Architecture

trove-arch1

API’s for Trove

APIs are exposed to manage following service constructs -

  • Database instances
  • Database instance actions
  • User management
  • Databases
  • Flavors
  • Data stores
  • Configuration groups
  • Clusters
  • Backups

Openstack4j Popularity

OpenStack4j is an open source Openstack client which allows provisioning and control of an OpenStack system. This library has gained quite popularity in the open source/java community for the simple reason that it has the most fluent API’s available to interact with Openstack.

It also lists in the Openstack official wiki as the Java library to interact with Openstack

https://wiki.openstack.org/wiki/SDKs

Support for Trove in Openstack4j

Openstack4j being popular and most preferred Java library has immense requirement for having trove API support. With its simplistic fluent API and intelligent error handling the experience of interacting Openstack has been made easy.

Example code snippets to interact with trove:

Create Database Instance:

createDbinst

Create Database:

createDb

Create Database User:

createDbUser

 For more document visit - http://www.openstack4j.com/learn/trove

 

Contributors: Shital Patil - shital.patil@gslab.com & Sumit Gandhi - sumit.gandhi@gslab.com

 

Last modified on
Hits: 689
Rate this blog entry:

Posted by on in Technology

This project was started with a thought of having an easy automation tool to interact with Openstack. Considering the challenges one has with existing Openstack CLI, this tool offers a very good starting point in overcoming those challenges

Setup

Unlike the existing Openstack CLI, this tool does not require any pre-requisite software to be installed. Openstack4j CLI is completely written in Java and consumes the API from openstack4j library; to run, it just needs JRE 6+ installed which in most operating systems is by default available. It comprises of a single executable jar that is portable on any Java or OS platform.

All-in-one

It’s an all in one solution - Single client for all the Openstack services. Openstack4j CLI is all in one, it bundles all primary Openstack service clients into one; mainly glance, nova, neutron, cinder etc.

Easy to use

Fluent CLI's, easy to use and understand CLI commands to do precisely what is needed. With Fluent and easy to understand commands, it takes care of dependent resource creation for the particular cases where resources from other Openstack services (neutron, cinder) are needed that encourages automation and abstracts out unnecessary complexity from user so that he can focus on intent of operation.

Smart

Inbuilt memory feature that remembers the output of the command. Openstack4j CLI comes with an inbuilt memory feature, that saves all the resource Ids generated from previously executed command and automatically replaces the values in subsequent command as and when needed.

More Info: http://vinodborole.github.io/openstack4j-shell/

Last modified on
Hits: 982
Rate this blog entry:

Group-Based Policy Overview

With the popularity of Openstack and growing community-based initiative in more than hundred countries; there is a major community-based initiative by thousands of contributors. It's time to focus on real challenges that involve deployment and delivery of applications and services with flexibility, security, speed and scale rather than just orchestration of infrastructure components. In order to achieve this there is a need for a declarative policy engine. One such project is Group Based policy.

The advantage we get in using Group-Based Policy (GBP) framework is the abstraction that it has which reduces the complexity for any developer to configure network, security for its infrastructure. More over these abstractions are general enough to apply to computing and storage resources as well.

The different sets of components that form GBP are elaborated in the figure below.

 

VB

Openstack4j Popularity

OpenStack4j is an open source Openstack client which allows provisioning and control of an OpenStack system. This library has gain quite popularity in the open source/java community for the simple reason that it has the most fluent API’s available to interact with Openstack.

It also lists in the Openstack official wiki as the java library to interact with Openstack

https://wiki.openstack.org/wiki/SDKs

Support for GBP in Openstack4j

As openstack4j was the most widely used library amongst the developer community it was a good idea to have the support for GBP as well. With its simplistic fluent API and intelligent error handling the experience of interacting Openstack has been made its easy.

Example code to interact with GBP:

Policy Actions

PolicyAction policyAction = Builders.policyAction()

.name("all-action")

.actionType(PolicyActionProtocol.ALLOW)

.description("all-action")

.build();

policyAction=osClientv2.gbp().policyAction().create(policyAction);

Reference:

  1. http://www.openstack4j.com/
  2. https://github.com/ContainX/openstack4j
Last modified on
Hits: 987
Rate this blog entry:
Very low screen size go to mobile site instead

Click Here