Skip to content
Merged
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
8 changes: 8 additions & 0 deletions docs-source/site/docs/deploy/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"label": "Deploy",
"position": 2,
"link": {
"type": "generated-index",
"description": "Deploy applications to OBaaS."
}
}
15 changes: 15 additions & 0 deletions docs-source/site/docs/deploy/buildapp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: Build and Deploy the application
sidebar_position: 2
---
## Build and Deploy the application

:::important
This content is TBD
:::

These are the steps to deploy the application to ak8s cluster using Helm.

- Obtain the deployment Helm chart from [here](hhtp://where)
- Edit `Values.yaml` to refelct your application
- Install the Helm chart.
9 changes: 9 additions & 0 deletions docs-source/site/docs/deploy/deployapp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
title: Deploy the Application
sidebar_position: 4
---
## Deploy the application

:::important
This content is TBD
:::
31 changes: 31 additions & 0 deletions docs-source/site/docs/deploy/introflow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
title: Introduction and Installation Flow
sidebar_position: 1
---
## Introduction and Installation flow

:::important
This content is TBD
:::

This guide explains how to deploy an application to OBaaS using Eclipse [Eclipse JKube](https://eclipse.dev/jkube/) to build and push a container image, and Helm to install and configure the application on a Kubernetes cluster.

### Prerequisites

- Access to a container image repository (e.g., OCIR or another approved registry).
- Kubernetes cluster access with the correct context set.
- Helm installed locally.
- Maven build configured for your project.

### High Level Installation Flow

Too deploy an application to OBaaS, you will follow this high-level flow:

- Obtain Image Repository metadata or Create the repository needed for the deployment.
- Add [Eclipse JKube](https://eclipse.dev/jkube/) to the pom.xml file.
- Build the Application using Maven.
- Obtain the deployment Helm chart.
- If you're using a database, create a secret with database credentials etc.
- Create the database application user using the 'sqljob.yaml' file. **Add to Helm dir with 'if' statement**
- Edit the `Chart.yaml` file to reflect the application name.
- Install the Helm chart.
23 changes: 23 additions & 0 deletions docs-source/site/docs/deploy/sqljob.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: Run the SQL Job
sidebar_position: 3
---
## Run the SQL Job

:::important
This content is TBD
:::

:::note
This step is only necessary if your application is connecting to a database.
:::

Open the `sqljob.yaml` file and edit the section .....

Execute `kubectl -f sqljob.yaml`. You can verify that the job executed properly by running the following commands (get the pod, look at the log) `l log -n .... <podname>`

```log
asdasd
asdasd
asd
```
2 changes: 0 additions & 2 deletions docs-source/site/docs/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,3 @@ sidebar_position: 1
# Oracle Backend for Microservices and AI

Oracle Backend for Microservices and AI allows developers to build microservices in Helidon and/or Spring Boot and provisions a “backend as a service” with Oracle Database and other infrastructure components that operate on multiple clouds. Oracle Backend for Microservices and AI vastly simplifies the task of building, testing, and operating microservices platforms for reliable, secure, and scalable enterprise applications.

**Content TBD**
8 changes: 8 additions & 0 deletions docs-source/site/docs/platform/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"label": "Platform Services",
"position": 3,
"link": {
"type": "generated-index",
"description": "Oracle Backend for Microservices and AI includes a number of Spring platform components that provide services to applications deployed to the platform."
}
}
8 changes: 8 additions & 0 deletions docs-source/site/docs/platform/platform.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Platform Services
sidebar_position: 1
---

:::important
This content is TBD
:::
2 changes: 1 addition & 1 deletion docs-source/site/docs/setup/_category_.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@
"position": 1,
"link": {
"type": "generated-index",
"description": "OBaaS setup and installation."
"description": "Oracle Backend for Microservices and AI (OBaaS) setup and installation."
}
}
64 changes: 64 additions & 0 deletions docs-source/site/docs/setup/database.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
title: Prepare and Install the OBaaS Database Helm chart
sidebar_position: 9
---
## Prepare and Install the OBaaS Database Helm chart

For this step, you will need the **obaas-db** directory in which you will see the following files:

```bash
cd obaas-db/
ls
Chart.yaml scripts templates values.yaml
```

You must edit the **values.yaml** file as follows:

- If you are using a private repository, you must update each **image** entry to point to your private repository instead of the public repositories.

- You must update the values in the **database.oci_config** section as follows:

- The **oke** setting must be **false**. Setting this to true is not supported in 2.0.0-M3.

- Supply your **tenancy**, **user** ocid, **fingerprint** and **region**. These must match the details you provided when you created the OCI configuration secret earlier. This information can be found in the OCI configuration file.

- (Optional) If you want to install any components in this chart into their own separate namespace, you can override the global namespace by setting a value in the **namespace** property inside the section for that component.

**Important note**: Please pause to double check all of the values are correct. If there are any errors here, the database provisioning will fail.

Install the Helm chart using the following command:

```bash
helm --debug install obaas-db --set global.obaasName="obaas-dev" --set global.targetNamespace="obaas-dev" ./
NAME: obaas-db
LAST DEPLOYED: Sun Aug 17 13:09:20 2025
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
```

When the installation has completed, you can use `helm ls` command to view the installed charts:

```text
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
obaas-db default 1 2025-09-12 13:51:23.751199 -0500 CDT deployed OBaaS-db-0.1.0 2.0.0-M3
obaas-observability default 1 2025-09-12 13:45:43.113298 -0500 CDT deployed OBaaS-observability-0.1.0 2.0.0-M3
obaas-prereqs default 1 2025-09-12 13:37:16.026781 -0500 CDT deployed OBaaS-Prerequisites-0.0.1 2.0.0-M3
```

If you overrode the namespace for this component, you will see a new namespace called **oracle-database-operator-system** (for example) and the following pods. Otherwise the pods will be in the **obaas-dev** namespace (or whatever name you chose).

![DB Operator pods](media/image6.png)

**Note**: If you are installing multiple OBaaS instances in your cluster, each one MUST have a different release name, `obaasName` and `targetNamespace`. For example:

```bash
# for obaas-dev:
helm install obaas-db --set global.obaasName="obaas-dev"
--set global.targetNamespace="obaas-dev" ./

# for obaas-prod
helm install obaas-prod-db --set global.obaasName="obaas-prod"
--set global.targetNamespace="obaas-prod" ./
```
6 changes: 0 additions & 6 deletions docs-source/site/docs/setup/go-runtime.md

This file was deleted.

Binary file added docs-source/site/docs/setup/media/image6.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions docs-source/site/docs/setup/namespace.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: Create Namespace(s) for OBaaS
sidebar_position: 6
---
## Create the namespace(s) for the OBaaS installation(s)

EACH instance of OBaaS must be installed in its own dedicated/unique namespace.

**Note**: You will only install the **obaas-prereqs** chart once per cluster, all other charts are installed once per OBaaS instance. The **obaas-prereqs** chart contains items that are cluster-wide and shared by all OBaaS instances in a cluster. If you are going to install multiple OBaaS instances (which is not supported in 2.0.0-M3) we recommend that you put the **obaas-prereqs** chart in its own namespace, separate from all OBaaS instances.

To create the namespace(s), use the following command(s). For example, to create two installations called `obaas-dev` and `obbas-prod`:

```bash
kubectl create ns obaas-dev
kubectl create ns obaas-prod
```

Change the value to the desired name(s).
101 changes: 101 additions & 0 deletions docs-source/site/docs/setup/obaas.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
---
title: Prepare and Install the OBaaS Helm chart
sidebar_position: 10
---
## Prepare and Install the OBaaS Helm chart

For this step, you will need the **obaas** directory in which you will see the following files:

```bash
cd obaas/
ls
Chart.yaml LICENSE README.md crds templates values.yaml
```

You must edit the **values.yaml** file as follows:

- If you are using a private repository, you must update each **image** entry to point to your private repository instead of the public repositories.

- Optional. Each component listed in the file (e.g., apisix, kafka, coherence, etc.) has an **enabled: true** entry. If you want to omit a component, you must change the setting to **false**.

- (Optional) If you want to install any components in this chart into their own separate namespace, you can override the global namespace by setting a value in the **namespace** property inside the section for that component.

- You must provide the OCID of your ADB-S instance in the setting **database.oci_db.ocid.**

- You must update the values in the **database.oci_config** section as follows:

- The **oke** setting must be **false**. Setting this to true is not supported in 2.0.0-M3.

- Supply your **tenancy**, **user** **ocid**, **fingerprint** and **region**. These must match the details you provided when you created the OCI configuration secret earlier.

**Important note**: Please pause to double check all of the values are correct. If there are any errors here, the OBaaS provisioning will fail.

Install the Helm chart using the following command:

```bash
helm --debug install obaas --set global.obaasName="obaas-dev" --set global.targetNamespace="obaas-dev" ./
I0817 13:21:41.363368 5981 warnings.go:110\] "Warning: unknown field
"spec.serviceName""
I0817 13:21:41.439521 5981 warnings.go:110\] "Warning: unknown field
"spec.serviceName""
I0817 13:21:41.439531 5981 warnings.go:110\] "Warning: unknown field
"spec.serviceName""
NAME: obaas
LAST DEPLOYED: Sun Aug 17 13:21:15 2025
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
```

You may see some warnings, as shown above, and they can be ignored in 2.0.0-M3.

If you overrode the component namespaces, you will now see several new namespaces as requested (see example below). Otherwise all of the pods will be in the **obaas-dev** namespace (or whatever name you chose):

```bash
kubectl get ns
NAME STATUS AGE
admin-server Active 32s
apisix Active 32s
application Active 32s
azn-server Active 32s
cert-manager Active 33m
coherence Active 32s
conductor-server Active 32s
config-server Active 32s
default Active 107m
eureka Active 32s
external-secrets Active 33m
ingress-nginx Active 34m
kafka Active 32s
kube-node-lease Active 107m
kube-public Active 107m
kube-state-metrics Active 33m
kube-system Active 107m
metrics-server Active 33m
obaas-admin Active 32s
observability Active 22m
oracle-database-exporter Active 32s
oracle-database-operator-system Active 12m
otmm Active 32s
```

And many new pods. Note that these will take about 5 minutes for them all to get to ready/running status:

```bash
kubectl get pod -A
```

**Note**: If you are installing multiple OBaaS instances in your cluster, each one MUST have a different release name, `obaasName` and `targetNamespace`. For example:

```bash
# for obaas-dev:
helm install obaas --set global.obaasName="obaas-dev"
--set global.targetNamespace="obaas-dev" ./

# for obaas-prod
helm install obaas-prod --set global.obaasName="obaas-prod"
--set global.targetNamespace="obaas-prod" ./
```

**Note**: You MUST set different host names and/or ports for the APISIX ingress if you choose to install APISIX in both instances.
73 changes: 73 additions & 0 deletions docs-source/site/docs/setup/observability.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
title: Prepare and Install the OBaaS Observability Helm Chart
sidebar_position: 8
---
## Prepare and Install the OBaaS Observability Helm Chart

**Note**: This step is **optional**.

For this step, you will need the **obaas-observability** directory in
which you will see the following files:

```bash
cd obaas-observability/
ls
Chart.yaml LICENSE README.md admin dashboards templates values.yaml
```

You must edit the **values.yaml** file as follows:

- If you are using a private repository, you must update each
**image** entry to point to your private repository instead of the
public repositories.

- (Optional) If you want to install any components in this chart into
their own separate namespace, you can override the global namespace
by setting a value in the **namespace** property inside the section
for that component.

Install the Helm chart using the following command:

```bash
helm install obaas-observability --set global.obaasName="obaas-dev"
--set global.targetNamespace="obaas-dev" ./
NAME: obaas-observability
LAST DEPLOYED: Sun Aug 17 13:00:00 2025
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
```

When the installation has completed, you can use this command to view the installed charts:

```bash
helm ls
```

```text
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
obaas default 1 2025-09-12 13:57:55.859836 -0500 CDT deployed OBaaS-0.0.1 2.0.0-M3
obaas-db default 1 2025-09-12 13:51:23.751199 -0500 CDT deployed OBaaS-db-0.1.0 2.0.0-M3
obaas-observability default 1 2025-09-12 13:45:43.113298 -0500 CDT deployed OBaaS-observability-0.1.0 2.0.0-M3
```

If you overrode the namespace, you will see a new namespace, e.g., **observability**, and the following pods. Otherwise these pods will be in the **obaas-dev** namespace (of whatever name you chose). Note that it will take 5 to 10 minutes for all of these to reach ready/running status:

```bash
kubectl get pods --n observability # or whatever namespace name you chose
```

Please wait for all of the pods to be ready before continuing to the next step.

**Note**: If you are installing multiple OBaaS instances in your cluster, each one MUST have a different release name, `obaasName` and `targetNamespace`. For example:

```bash
# for obaas-dev:
helm --debug install obaas-observability --set global.obaasName="obaas-dev"
--set global.targetNamespace="obaas-dev" ./

# for obaas-prod
helm --debug install obaas-prod-observability --set global.obaasName="obaas-prod"
--set global.targetNamespace="obaas-prod" ./
```
Loading