Coder Social home page Coder Social logo

aiex's Introduction

aiex

Apache Ignite Extensions

Summary

Apache Ignite Extensions is a modular system to create user interface modules for interacting with application deployed in Apache Ignite.

Current Features

aeix can currently shows a basic view of topology and supports invocation of all caching related operations.
  • Topology Viewer
  • Cache Operations

Topology Viewer

  • List of nodes searchable by nodeid
  • Summary, Metrics and Attribute information
  • Searchable metrics and attribute names and values

Cache Operations

How To Install

The application requires node runtime. If you are familiar with node and npm standard deployment/development workflow, you can skip to the Quick Setup section below. Otherwise read on..

Setup

Given below is the overall setup process:
  • Install nodejs and npm
  • Install git
  • Install bower for ui dependency management
  • install all bower packages
  • Install all npm packages
  • Start the server

Ubuntu

Following instructions were tested on freshly provisioned EC2 server ubuntu-trusty-14.04-amd64. Your mileage may vary depending on your OS.

Step 1: Install git

sudo apt-get update
sudo apt-get install git

For information on how to install git for your operating system please refer to: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git.

Step 2: Install nodejs

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

For information on how to install nodejs for your operating system please refer to: https://nodejs.org/en/download/package-manager/

Step 3: Clone the repo

git clone https://github.com/sumeet70/aiex.git

Step 4: Install bower

sudo npm install bower -g

Step 5: Install all npm packages

Change the current directory to project root and install npm dependencies

cd aiex
npm install

Step 6: Install all bower packages

bower install

Step 7: Start the server

Although it is recommended that you run the next command as is, but it can fail under certain circumstance. If that is the case, try running it as a sudoer. One of the conditions under which it is likely to fail is if you set the default port to be port 80 in /config.json, since port 80 access is blocked by some OS builds it only runs as sudo. There can be other permissions issues along the way that might prevent you from starting up a node process without sudo.

npm start

If you run into security problems run sudo npm start

Windows

Following instructions were tested on freshly provisioned EC2 windows machine. Your mileage may vary depending on your OS.

Step 1: Install git

http://git-scm.com/download/win

For information on how to install git for your operating system please refer to: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git.

Step 2: Install nodejs

https://nodejs.org/en/download/

For information on how to install nodejs for your operating system please refer to: https://nodejs.org/en/download/package-manager/

Step 3: Clone the repo

Open command prompt or your favorite shell as admin

git clone https://github.com/sumeet70/aiex.git

Step 4: Install bower

This step will usually fail if you don't run the following command as admin

npm install bower -g

Step 5: Install all npm packages

Change the current directory to project root and install npm dependencies

cd aiex
npm install

Step 6: Install all bower packages

bower install

Step 7: Start the server

npm start

Quick Setup

Follow these instructions if you are already setup with node, npm, bower and git.
These instructions assume that you already have npm and git on your path
  • Clone the repo
  • Open your favorite shell and navigate to the root of the project
  • Run the following commands:
       npm install
       bower install
       npm start
  • Navigate to http://localhost:8081

The application backend runs in node using expressjs as middleware. The front end of the application has been written in Angularjs 1.4.

Usage Guide

The current version assumes that the ignite rest api is running on default localhost:8080 location. Additionally, if you want to run cache operations, you need to run ignite with caching enabled.

Enable REST Interface

In order to run ignite with REST api you need to load an optional library called ignite-rest-http
Simply go to /libs/optional folder in the root directory of your install and copy ignite-rest-http folder to /libs and then restart ignite.

Please visit ignite docs for additional information on ignite setup: https://apacheignite.readme.io/docs/getting-started

Enable Caching

To enable caching in ignite cluster you need to supply some basic configurations. When starting up your cluster, use one of the example configuration that already ships with ignite code: /examples/config/example-cahce.xml

Please visit ignite docs for additional information on ignite setup: https://apacheignite.readme.io/docs/getting-started

You need to supply this configuration path as a command line parameter to ignite startup script ignite.sh (ignite.bat in windows command prompt). This script is located in /bin directory of your installation root.

You start up command should look like:

<b>[Install Dir]/bin/ignite.sh [Install Dir]/examples/config/example-cahce.xml</b><br/>
replace [Install Dir] with path to your installation directory.

Startup aiex

  • Run npm start (refer to how to install section)
  • Simply open your browser and navigate to http://localhost:8081
  • If you started the webpage before starting the cluster simply refresh the page or navigate to another tab and come back to topology tab to see the updated topology view.

Upcoming Features

  • Log viewer
  • Detailed topology and node information
  • Ability to connect to multiple clusters

This project is under active development. Stay tuned for more.

aiex's People

Contributors

sumeet70 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.