Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions docs/AWS-EKS.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
id: setup-aws-eks-cluster
title: Set up Kubernetes cluster on AWS EKS
id: aws-eks
title: AWS with DynamoDB
---

The [Deployments guide](Deployments.md) uses minikube kubernetes cluster which is recommended only for learning and test purposes. Below are instructions for creating production ready kubernetes cluster on AWS using Amazon's managed kubernetes offering (AWS EKS) and DynamoDB backend.
Minikube kubernetes cluster is recommended only for learning and test purposes. Below are instructions for creating production ready kubernetes cluster on AWS using Amazon's managed kubernetes offering (AWS EKS) and DynamoDB backend.

For more details about EKS please visit [Getting Started with Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html)

Expand All @@ -15,9 +15,8 @@ We will use [eksctl](https://eksctl.io/) tool for a simple kubernetes setup on E

## Prerequisites

- Amazon AWS account
- [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html)
- [Amazon EKS-vended kubectl](https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html)
- [kubectl](https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html)
- [eksctl](https://eksctl.io/)

To install the latest version of eksctl locally:
Expand Down
5 changes: 4 additions & 1 deletion docs/Deployments.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ These instructions will let you deploy the Microkubes on Kubernetes.
minikube start
```

**Note:** Minikube is not recommended for production use. If you have an existing cluster or prefer production ready cluster such as [GCP GKE](GCP.md) or [AWS EKS](AWS-EKS.md), skip this command and look at those documents instead.
**Note:** Minikube is not recommended for production use. For a production ready cluster, please skip this command and follow the instructions at:

- [Set up microkubes on AWS EKS with DynamoDB](AWS-EKS.md) or
- [Set up microkubes on GCP GKE](GCP.md).

2. Create keys for authorization servers:

Expand Down
8 changes: 4 additions & 4 deletions docs/GCP.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
id: setup-gcp-cluster
title: Set up Google Kubernetes Engine cluster
id: gcp
title: GCP
---

The [installation and setup guide](Introduction-InstallationAndSetup.md) uses minikube kubernetes cluster which is recommended only for learning and test purposes. Below are instructions for creating production ready kubernetes cluster on Google Cloud Platform.
Minikube kubernetes cluster is recommended only for learning and test purposes. Below are instructions for creating production ready kubernetes cluster on Google Cloud Platform. Here, we are only going to create a GCP GKE cluster - the rest is the same as the official installation documentation, just make sure you skip the minikube start command.

# Set up Kubernetes cluster on GCP GKE

Expand Down Expand Up @@ -43,4 +43,4 @@ All clusters have a canonical endpoint. The endpoint is the IP address of the Ku
gcloud container clusters get-credentials [CLUSTER_NAME] [--zone=[COMPUTE_ZONE]] [--region=[COMPUTE_REGION]] [--project=[PROJECT_ID]]
```

Once you have a working cluster and kubectl is able to connect to it, you can continue following the [installation and setup guide](Introduction-InstallationAndSetup.md), just be sure you skip the `minikube start` command.
Once you have a working cluster and kubectl is able to connect to it, you can continue following the [installation and setup guide](Introduction-InstallationAndSetup.md) from the section Preparing step 2, just be sure you skip the `minikube start` command.
25 changes: 14 additions & 11 deletions docs/Introduction-InstallationAndSetup.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ If you don't have Docker installed on your machine please follow these instructi

The easiest way to have Kubernetes running on your machine is by installing Minikube version from Kubernetes following this [Minikube Install](https://kubernetes.io/docs/tasks/tools/install-minikube/) guide.

Minikube is not recommended for production use. For an example production ready cluster see [Set up Kubernetes cluster on AWS EKS with DynamoDB](AWS-EKS.md) or [Set up Google Kubernetes Engine cluster](GCP.md).

## Start Microkubes

Microkubes is an open source framework for building data management platforms using microservices. For deploying this framework you have to clone [this](https://github.com/microkubes/microkubes) repository on your local machine:
Expand All @@ -31,13 +29,18 @@ cd microkubes

### Preparing

We present a simple microkubes setup using minikube and mongodb for backend.

1. Run a single-node Kubernetes cluster via Minikube tool

```bash
minikube start
```

**Note:** If you use an existing cluster or prefer production ready cluster such as [GCP kubernetes cluster](GCP.md), then skip this command.
**Note:** Minikube is not recommended for production use. For a production ready cluster, please skip this command and follow the instructions at:

- [Set up microkubes on AWS EKS with DynamoDB](AWS-EKS.md) or
- [Set up microkubes on GCP GKE](GCP.md).

2. Create keys for authorization servers:

Expand All @@ -56,14 +59,14 @@ kubectl create -f kubernetes/manifests/serviceaccount.yaml

```bash
kubectl -n microkubes create secret generic microkubes-secrets \
--from-file=keys/default \
--from-file=keys/default.pub \
--from-file=keys/private.pem \
--from-file=keys/public.pub \
--from-file=keys/service.cert \
--from-file=keys/service.key \
--from-file=keys/system \
--from-file=keys/system.pub
--from-file=keys/default \
--from-file=keys/default.pub \
--from-file=keys/private.pem \
--from-file=keys/public.pub \
--from-file=keys/service.cert \
--from-file=keys/service.key \
--from-file=keys/system \
--from-file=keys/system.pub
```

5. Create a secret for the mongo objects creation
Expand Down
6 changes: 6 additions & 0 deletions website/i18n/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@
"previous": "Previous",
"tagline": "Scalable, Ready For Use Microservice Framework",
"docs": {
"aws-eks": {
"title": "AWS with DynamoDB"
},
"backends": {
"title": "Backends"
},
Expand All @@ -20,6 +23,9 @@
"external-services": {
"title": "External Services"
},
"gcp": {
"title": "GCP"
},
"installation": {
"title": "Installation"
},
Expand Down
4 changes: 3 additions & 1 deletion website/sidebars.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@
"security",
"backends",
"deployments",
"ci-cd"
"ci-cd",
"aws-eks",
"gcp"
]
}
}
2 changes: 2 additions & 0 deletions website/siteConfig.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ const siteConfig = {
ogImage: 'img/microkubes-post-photo.png',
headerLinks: [
{
doc: "gcp",
doc: "aws-eks",
doc: "ci-cd",
doc: "deployments",
doc: "backends",
Expand Down