Skip to content

Commit

Permalink
odpi#116 dojo day 1 updates
Browse files Browse the repository at this point in the history
Signed-off-by: Nigel Jones <nigel.l.jones+git@gmail.com>
  • Loading branch information
planetf1 committed Jan 14, 2022
1 parent 3967673 commit 4b22637
Show file tree
Hide file tree
Showing 11 changed files with 203 additions and 155 deletions.
10 changes: 10 additions & 0 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ site/docs/connectors/repository/ibm-information-server/ @cmgrote

site/docs/frameworks/ @mandy-chessell

site/docs/education/egeria-dojo @davidradl
site/docs/education/egeria-dojo/running-egeria/ @planetf1
site/docs/education/egeria-dojo/developer/ @mandy-chessell

site/docs/getting-started/ @mandy-chessell
site/docs/getting-started/hands-on-lab/ @mandy-chessell @planetf1

Expand All @@ -32,6 +36,8 @@ site/docs/guides/cts/ @cmgrote

site/docs/introduction/ @mandy-chessell

site/docs/operations/kubernetes/ @planetf1

site/docs/release-notes/ @mandy-chessell @planetf1

site/docs/services/ @mandy-chessell
Expand All @@ -53,3 +59,7 @@ site/docs/services/omas/asset-lineage/ @lcpopa @popa-raluca
site/docs/services/omvs/ @davidradl

site/docs/types/ @mandy-chessell

site/docs/tutorials/docker-tutorial / @planetf1
site/docs/tutorials/open-metadata-labs/ @planetf1
site/docs/tutorials/postman-tutorial / @mandy-chessell @planetf1
34 changes: 20 additions & 14 deletions site/docs/education/egeria-dojo/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,24 +29,30 @@ The schedule also includes estimated times needed to complete each session. Do t

## Running Egeria day summary

The following outline is still in development.

To continue to see the day's content as it's being developed please [go directly to the 'running egeria' content](running-egeria/introduction.md)

!!! education "Running Egeria Day"
After completing this day of the dojo you should feel comfortable with setting up and running the Egeria technology. It includes sessions on the prerequisite technology that Egeria uses, how to configure Egeria, how to start and stop various capabilities and well as diagnosing any problems you may come across.


!!! beginner "Egeria introduction (30 mins)"

!!! beginner "Egeria project introduction (30 mins)"
- *Audience*: Anyone who wants to run Egeria
- *Objectives*: This day provides an introduction to running Egeria.
- *Prerequisites*: none.
- *Required skills*: Familarity with *nix shell environment & editing files
- *Topics*
- Introduction to Egeria
- Installing prereq tools - Kubernetes & Postman
- Installing a pre-configured Egeria environment
- Configuring Egeria servers
- Running Egeria jupyter based labs
- Using the Egeria React UI
- *Time to complete* - 7 hours
- *Outline*
- Installing Kubernetes & Postman (1 hour)
- Simple pre-built egeria configuration" (0.5 hours)
- Configuring Servers (2 hours)
- Coco Pharmaceutical labs (1.5 hours)

???+ intermediate "Running Egeria on your machine, step-by-step (5 hrs)"
!!! intermediate "Platform setup and configuration (90 mins)"
!!! intermediate "Running metadata servers (2 hours)"
!!! advanced "Running metadata ecosystems (90 mins)"
!!! beginner "Summary (30 mins)"

!!! beginner "Participating in the community (30 mins)"
[go directly to the 'running egeria' content](running-egeria/introduction.md)

## Developer day summary

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
The final session in day one of the Egeria Dojo is to use our Kubernetes helm charts to set up the infrastructure for Egeria's hands on labs. These labs attempt to show a rich metadata environment in action, allowing you to experiment with different concepts and APIs.

First, delete the Helm chart you used in the last part of the tutorial.
```
```console
$ helm delete base
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ In this session we are going to configure the servers via the Egeria platform's

We are first going to clean up the Egeria environment you have already created:

```
```console
$ helm list
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
base default 1 2022-01-11 18:50:08.591645 +0000 UTC deployed egeria-base-3.4.1-prelease.3 3.4
Expand All @@ -28,7 +28,7 @@ Keep repeating this last command until we finally see no pods remaining (may tak
Now we'll install the same demo again, but this time we are going to set a parameter
which prevents the servers being automatically configured, so that we can walk through
this in the tutorial:
```
```console
$ helm install base egeria/egeria-base --devel --set egeria.config=false
LAST DEPLOYED: Fri Jan 7 16:36:20 2022
NAMESPACE: default
Expand Down Expand Up @@ -64,7 +64,7 @@ join us on slack via https://http://slack.lfai.foundation

As before, we must check everything is running ok before we continue, so repeat getting
the status of the pods until all the pods are ready:
```
```console
jonesn:~/ $ kubectl get pods [16:38:23]
NAME READY STATUS RESTARTS AGE
egeria-base-presentation-d4c97645d-gm925 1/1 Running 0 2m12s
Expand All @@ -80,7 +80,7 @@ so now we'll do it by issuing REST API calls to configure.
All of the containers were are running above are configured to output regular log messages to stdout.

In order to view these logs from the command line with Kubernetes try commands such as:
```
```console
$ kubectl logs egeria-base-platform-0
Starting the Java application using /opt/jboss/container/java/run/run-java.sh ...
INFO exec java -XX:+UseParallelGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:+ExitOnOutOfMemoryError -XX:MaxMetaspaceSize=1g -cp "." -jar /deployments/server/server-chassis-spring-3.4.jar
Expand Down Expand Up @@ -116,7 +116,7 @@ This is done by a technique known as **port forwarding**. We can target either p
mostly for simplicity as the names are more simple and stable.

So first, let's see what services we have:
```
```console
$ kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.43.0.1 <none> 443/TCP 2d2h
Expand All @@ -130,7 +130,7 @@ base-platform ClusterIP 10.43.169.147 <none> 9443/TCP

We could query these further to see which pods they point to, but for now let's carry on and setup a port forward:

```
```console
$ kubectl port-forward service/base-platform 9443:9443
Forwarding from 127.0.0.1:9443 -> 9443
Forwarding from [::1]:9443 -> 9443
Expand All @@ -141,7 +141,7 @@ You'll note that this command does not terminate. It is only forwarding data whe
If you are using a *nix type shell, you could run in the background (add '&' to the invocation). Alternatively just run in a new window

We also want to do the same with the UI:
```
```console
$ kubectl port-forward service/base-presentation 8091:8091
Forwarding from 127.0.0.1:8091 -> 8091
Forwarding from [::1]:8091 -> 8091
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ Follow these steps from our [Kubernetes Documentation](/egeria-docs/guides/opera
* [Setting up Kubernetes](/egeria-docs/guides/operations/kubernetes/k8s) - follow the instruction for **Rancher Desktop**
* [Setting up Helm](/egeria-docs/guides/operations/kubernetes/helm)

**Do not continue in the above sections & install any of the charts at this point** - we will do this later.

## Setting up Postman

Follow these steps to setup Postman
Expand Down
12 changes: 6 additions & 6 deletions site/docs/education/egeria-dojo/running-egeria/simple-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ confirm you have connectivity to your Kubernetes cluster.

`helm` becomes `microk8s helm3`

```
```console
$ kubectl get all
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.43.0.1 <none> 443/TCP 2d19h
Expand All @@ -50,7 +50,7 @@ charts - effectively application bundles - setup with the code you need to run t

You may have performed this step previously, but it is harmless to repeat, and is included
here just in case you missed the instruction earlier.
```
```console
$ helm repo add egeria https://odpi.github.io/egeria-charts
"egeria" already exists with the same configuration, skipping
$ helm repo update
Expand All @@ -65,7 +65,7 @@ First we'll look at what charts are available:
You'll see we use `--devel` on these commands. This retrieves the very latest, unreleased, versions of our charts.
We're using this as they are still being written and updated. Very soon the charts will be published
as new versions, and this parameter will be removed from the documentation.
```
```console
$ helm search repo egeria --devel
NAME CHART VERSION APP VERSION DESCRIPTION
egeria/egeria-base 3.4.1-prelease.3 3.4 Egeria simple deployment (platform, react UI)
Expand All @@ -81,7 +81,7 @@ This list will change as the Egeria team continue to develop these charts

We'll now install a simple Egeria configuration:

```
```console
$ helm install base egeria/egeria-base --devel
NAME: base
LAST DEPLOYED: Tue Jan 11 18:44:18 2022
Expand Down Expand Up @@ -113,7 +113,7 @@ join us on slack via https://http://slack.lfai.foundation

We can see what pods we are running:

```
```console
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
egeria-base-presentation-76997fb899-r2fkj 0/1 ContainerCreating 0 3s
Expand All @@ -126,7 +126,7 @@ We can see from this output, that not all of our pods are ready. Before we conti
all the pods are in **Running** state - this may take up to 10 minutes ie wait until
everything is ready. After several minutes (up to 5), the output should look
like this:
```
```console
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
egeria-base-presentation-76997fb899-r2fkj 1/1 Running 0 2m27s
Expand Down
Loading

0 comments on commit 4b22637

Please sign in to comment.