Skip to content

Commit 33b72fe

Browse files
committed
add core services and platform services details
1 parent 84b23db commit 33b72fe

File tree

1 file changed

+26
-11
lines changed

1 file changed

+26
-11
lines changed

README.md

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,26 @@
11
[![Build Status](https://travis-ci.org/IBM/GameOn-Java-Microservices-on-Kubernetes.svg?branch=master)](https://travis-ci.org/IBM/GameOn-Java-Microservices-on-Kubernetes)
22

3-
# GameOn! Java microservices deployment on Kubernetes Cluster
3+
# GameOn! Java Microservices deployment on Kubernetes Cluster
44

5-
This project demonstrates deployment of a Microservices based application Game On! on to Kubernetes cluster service from Bluemix. Game On! is a throwback text-based adventure built to help you explore microservice architectures and related concepts. GameOn! users start by creating a simple room, the building block of any adventure game. With the tutorials available at the [GameOn! website](https://book.gameontext.org), a user can create in text a simple room in any one of various languages in just a few minutes.
5+
This project demonstrates deployment of a Microservices based application Game On! on to Kubernetes cluster. Game On! is a throwback text-based adventure built to help you explore microservice architectures and related concepts. GameOn! users start by creating a simple room, the building block of any adventure game. A user can create in text a simple room in any one of various languages in just a few minutes.
66

7-
There are several microservices used in this app ranging from **couchdb, redis, to frontend tier services**. Everything would be hosted on a Kubernetes Cluster where you can access your own GameOn app from anywhere.
7+
There are several microservices used in this app
8+
9+
Core MicroServices:
10+
11+
Proxy: HAProxy based, and is responsible for surfacing the collection of APIs as a single facade for the entire application.
12+
WebApp: Webapp is a simple nginx process that serves the static files that comprise the front-end of the UI.
13+
Player: Players, are represented by the player Java microservice service, which provides a public API for CRUD operations, and for managing API tokens.
14+
Auth: Java microservice to allow players to connect and identify themselves via a selected "social login"
15+
Mediator: The Mediator service is implemented in Java using WebSphere Liberty, and connects players to rooms over Websockets
16+
Map: The Map service is a Java EE application running on WebSphere Liberty that provides a public REST API using JAX-RS. It stores data in a NoSQL data store, either couchdb or Cloudant
17+
Room:
18+
19+
Platform Services:
20+
Amalgam8: Amalgam8 supplies Registry, and a Controller, via which it implements the Service Discovery, and Service Proxying
21+
Kafka: Publish/Subscribe solution used by Amalgam8
22+
23+
Everything would be hosted on a Kubernetes Cluster where you can access your own GameOn app from anywhere.
824

925
![kube-gameon](images/kube-gameon.png)
1026

@@ -22,16 +38,15 @@ If you want to deploy GameOn! directly to Bluemix, click on 'Deploy to Bluemix'
2238
Please follow the [Toolchain instructions](https://github.com/IBM/container-journey-template/blob/master/Toolchain_Instructions.md) to complete your toolchain and pipeline.
2339

2440
## Steps
25-
1. [Modify the yaml files](#1-modify-the-yaml-files)
26-
2. [Create Volumes in your Cluster](#2-create-volumes-in-your-cluster)
41+
1. [Modify the Core services yaml files](#1-modify-the-core-services-yaml-files)
42+
2. [Create volumes in your Cluster](#2-create-volumes-in-your-cluster)
2743
3. [Create the Platform Services](#3-create-the-platform-services)
2844
4. [Create the Core Services](#4-create-the-core-services)
2945
5. [Explore your GameOn App](#5-explore-your-gameon-app)
46+
- 5.1 [Add Social Logins](#51-add-social-logins)
47+
- 5.2 [Add Rooms](#52-add-rooms)
3048

31-
A. [Adding Social Logins](#a-adding-social-logins)
32-
B. [Adding Rooms](#b-adding-rooms)
33-
34-
# 1. Modify the yaml files
49+
# 1. Modify the Core services yaml files
3550
First, you'll need to update the yaml files for the **core services** and **setup.yaml**.
3651
You will need to get the Public IP address of your cluster.
3752
```bash
@@ -169,7 +184,7 @@ Now that you have successfully deployed your own app in the Bluemix Kubernetes C
169184
![Game](images/game.png)
170185
* **Congratulations! You now have your own GameOn app running on Bluemix! You may now wish to explore on creating new rooms and adding social logins.**
171186

172-
# A. Adding Social Logins
187+
# 5.2 Add Social Logins
173188
You may want to add social logins so you and your friends can explore the rooms together.
174189
To add social logins you would need to have developer accounts on the social app you want to use.
175190

@@ -222,7 +237,7 @@ You will need to add this in the environment variables on the yaml files of your
222237
```
223238
> The application uses the keys(name) **TWITTER_CONSUMER_KEY** and **TWITTER_CONSUMER_SECRET** and must exactly match these in the core yaml files.
224239
225-
# B. Adding Rooms
240+
# 5.1 Add Rooms
226241

227242
You can build your own rooms by following [**this guide**](https://gameontext.gitbooks.io/gameon-gitbook/content/walkthroughs/createRoom.html) by the GameOn team. They have some sample rooms written in Java, Swift, Go, and more.
228243

0 commit comments

Comments
 (0)