Search

Exploring GridGain Nebula: Cloud-Native Service for Apache Ignite

You embraced Apache Ignite’s high-performance distributed database for your projects. Then, you convinced your managers to invest in GridGain Control Center to help manage your clusters with time-saving administrative tools.

Now, GridGain Nebula, our newest solution, combines the Apache Ignite cluster and GridGain Control Center setup in a single offering. Nebula is a fully managed, cloud-native, in-memory computing platform service for Apache Ignite. It facilitates the provisioning and running of clusters, providing high-performance infrastructure and operations.

In this article, we’ll show you Nebula’s core features. We’ll demonstrate a demo setup and walk you through Nebula’s capabilities.

Nebula Product Overview

Nebula is an end-to-end solution for running Apache Ignite clusters. With Nebula, you can run scalable, performing application workloads without the hassle of operating the environment. The Nebula hosted solution offers operations as a service. The back-end team manages and operates the clusters, performs software upgrades. It also handles patching, monitoring, and provisioning.

The Nebula team watches over your deployed Ignite clusters, reviewing performance demand before it hits your application’s response level. As a Nebula customer, you access metrics to track necessary insights.

Nebula enables deploying Apache clusters as cloud services, dramatically reducing the deployment time from days to minutes. It provides out-of-the-box configuration wizards for your team to follow. 

Since the Apache Ignite infrastructure deploys to the Amazon Web Services (AWS) public cloud, it enables organizations to take their first steps into hybrid cloud architectures and provides an easy installation process for those already in the cloud. Later, Nebula will add other public cloud providers, such as Microsoft Azure and Google Cloud Platform (GCP), to the list of options.

Nebula in Action

Now we’ll guide you through the onboarding process and get Nebula going. Onboarding to Nebula involves the following steps:

  1. Creating a GridGain Nebula account
  2. Deploying Apache Ignite cluster infrastructure
  3. Connecting to the cluster and running database commands
  4. Monitoring and managing the cluster

Let’s get started.

Creating a GridGain Nebula Account

First, authenticate to GridGain Cloud Portal using an existing account or by creating a new account:

After logging in, you’ll see the Nebula portal.

Deploying Apache Ignite Cluster Infrastructure

Let’s create a new cluster. In the Nebula portal, navigate to Clusters in the left menu. Then, click the CREATE NEBULA CLUSTER button. Note that you can also immediately integrate an existing cluster from that screen.

Since Nebula runs in the public cloud, it has a consumption cost (expressed per hour of instance runtime). At the time of writing, you get a $500 credit to explore Nebula for free.

You can choose from three sizes for your Apache Ignite cluster nodes: Small, Medium, and Large. You can also specify an AWS region of your choice.

Now, specify the number of nodes you want your Apache Ignite cluster to have in the Nodes Count field. Note that each node in the cluster is based on the same specified size, and can‘t mix with other sizes. Click CONTINUE for the next step.

Specify the public IP address(es) where you allow Nebula portal access on the next screen. Configure an Apache Ignite cluster-specific administrator account. Then, click CONTINUE to move to the next step of the configuration wizard.

Verify the summary overview of the cluster you are about to create. Finally, add your credit card details and confirm the cluster deployment by clicking CREATE CLUSTER.

When you confirm the cluster creation, a progress window appears.

Wait for the deployment to complete successfully. After only a few minutes, the status should update in the Cluster Management view, showing the cluster and the corresponding nodes as Active.

The base setup of your Apache Insight cluster nodes — automated by Nebula — is now complete. Next, you’ll work on connecting to your cluster nodes and establishing a connection.

Connecting to the Running Cluster

The Nebula portal provides a few sample templates, enabling connectivity to your running Apache Ignite cluster. To view the templates, select your cluster from Cluster Management, click the ellipsis (three vertical dots) to the right, and notice Connection Templates in the context menu.

Click Connection Templates. This action brings up a popup window with various connectivity options.

Depending on your application language, the list might be slightly different, though the process is identical overall. This example uses a Java database connectivity (JDBC) connection, using our SQLLine solution — a Java-based command-line tool to — connect to a relational database.

Select JDBC from the Client Type list box. Open the sample template and become familiar with its contents.

The most relevant information to establish the cluster connectivity is between the quotation marks in lines 24 to 25 in the sample script. This text shows the gridgain-nebula subdomain and corresponding hostname for your AWS-running cluster, as well as a placeholder for the admin user and password. Copy this information and set it aside for now. You’ll need it later.

If you haven’t yet deployed the GridGain management solution in your environment, you can use the SQLLine command tool from the GridGain Community Edition bin folder. You can download this folder for free from our trial software download page. Click on Software (not Cloud), then click the Community Edition DOWNLOAD NOW button.

Note: ensure your admin workstation already has the Java JDK installed. You can check this by running Java --version from the command line. If you don’t have it, install Java JDK.

When you have downloaded GridGain Community Edition (or if you are a current GridGain customer), extract the ZIP file to a new folder, then browse to the bin folder. Notice the sqlline.sh file in the bin folder.

To use this shell script to connect to the cluster, use the following syntax:

				
					./sqlline.sh -u &ldquo;jdbc:ignite://thin://<gridgain cluster name>:10800;user=<admin>;password=<password>;sslMode=require&rdquo;
				
			
Replace the <gridgain cluster name>, <admin>, and <password> fields with the information you set aside earlier. In your setup, the full syntax looks as follows (redacted for security):
				
					./sqlline.sh -u "jdbc:ignite:thin://e99c9aabc-9a99-9999-9bce-e999c3fd5ffb.gridgain-nebula-test.com:10800;user=admin;password=
Passw0rd123;sslMode=require"
				
			
To validate the connection to the cluster, run this command: !list This command shows a successful JDBC connection as an answer.

Now that you have a successful connection to the cluster, run an SQL command to create a new table structure. This structure will store names of cities and people:

				
					CREATE TABLE City (id LONG PRIMARY KEY, name VARCHAR) WITH "template=replicated";

CREATE TABLE Person (id LONG, name VARCHAR, city_id LONG, PRIMARY KEY (id, city_id))
WITH "backups=1, affinityKey=city_id";
				
			

Then, run another SQL command to populate both tables with some sample data:

				
					INSERT INTO City (id, name) VALUES (1, 'Forest Hill');
INSERT INTO City (id, name) VALUES (2, 'Denver');
INSERT INTO City (id, name) VALUES (3, 'St. Petersburg');
INSERT INTO Person (id, name, city_id) VALUES (1, 'John Doe', 3);
INSERT INTO Person (id, name, city_id) VALUES (2, 'Jane Roe', 2);
INSERT INTO Person (id, name, city_id) VALUES (3, 'Mary Major', 1);
INSERT INTO Person (id, name, city_id) VALUES (4, 'Richard Miles', 2);
				
			

Lastly, validate the database contents by running the following SQL statement:

				
					SELECT * From Person; 
				
			
As expected, this command shows a list of people in your Person database, together with each person’s City_ID. You’ve now completed connecting to the running Apache Ignite cluster instance in Nebula and creating a JDBC and SQL connection using the SQLLine shell tool. Now it’s time to return to the Nebula Portal and cover other helpful features for managing your Apache Ignite environment.

Monitoring and Managing the Cluster

Since Apache Ignite’s core function provides a powerful interaction with your application databases, the portal directly integrates this capability.

SQL Management

Nebula provides a workable interface to execute SQL query statements. From the main Nebula portal, navigate to SQL.
In the QUERY field, enter the following sample query: SELECT * from CITY Notice the IntelliSense when entering queries manually here. IntelliSense helps admins provide context-specific parameters, code completion, or quick information, based on the characters you type. For example, when you start typing “C,” a list of possible options appears.

Press Execute to run the query. The contents of the table display immediately. This example shows a basic query, but there’s no limit to the query operations you can run from here. Technically, you don’t even need the SQLLine shell tool anymore. You can rely on a more user-friendly interface.

Managing Cluster Health and Status

It’s vital to monitor your cluster’s health status. Nebula shares insights on performance, each node’s IP address, CPU load, heap size (physical memory), and more.

From the main Nebula portal view, click Dashboard. This action brings up the following view for your cluster.

Select a node and click the ellipsis, then select <Inspect Configuration>. This action provides a JSON output of all configuration settings and parameters for the cluster node.

If needed, you can customize the dashboard view and metric details. To do this, create a new blade by clicking + next to the Default tab, then add Widgets to your blade. You can customize each widget from the context menu.

You can also quickly find other cluster operations if needed. For example, you can add administrative users, share the dashboard with your admins, or get general information about your cluster. From the Dashboard menu option, select your cluster and click the ellipsis. In the context menu that appears, notice the Share with Team, Manage Cluster Users, and Cluster Info options.

These actions help you optimize your cluster management.

Summary

You now know more about GridGain Nebula, the cloud-native operations and management solution for your Apache Ignite clusters, running in a public cloud environment (AWS). You can get a fully workable Apache cluster up and running in just a few minutes, then start managing it directly from within the Nebula portal. Instead of spending time on infrastructure operations, your team can immediately focus on application integration and fine-tuning database interactions.

Explore more Nebula capabilities in our YouTube video series. Then, focus on creating your own highly-performant, scalable apps in Java, C#, or other programming languages—not on operations. To learn more and try it yourself, head over to the GridGain Nebula website and sign up for a free trial.

If you’re interested in developing expert technical content that performs, let’s have a conversation today.

Facebook
Twitter
LinkedIn
Reddit
Email

POST INFORMATION

If you work in a tech space and aren’t sure if we cover you, hit the button below to get in touch with us. Tell us a little about your content goals or your project, and we’ll reach back within 2 business days. 

Share via
Copy link
Powered by Social Snap