Skip to content

Commit 1f7a8cc

Browse files
gotsysdbaandytael
andauthored
Initial Upgrade (#837)
* Initial Upgrade * Linting etc * Change messaging --------- Co-authored-by: Andy Tael <andy.tael@yahoo.com>
1 parent 1600273 commit 1f7a8cc

File tree

9 files changed

+164
-0
lines changed

9 files changed

+164
-0
lines changed
Lines changed: 162 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
---
2+
title: "Upgrade"
3+
description: "Upgrade the Oracle Backend for Spring Boot and Microservices"
4+
keywords: "upgrade spring springboot spring development microservices development oracle backend"
5+
---
6+
The world of Microservices moves fast. In order to keep up with new software versions and provide additional features, regular updates and patches are provided for the Oracle Backend for Spring Boot and Microservices.
7+
8+
Depending on the original installation method and the state of your infrastructure, these patches and upgrades can either be preformed in-place or out-of-place. Oracle recommends, despite which option you choose, to have a backup of your applications and database in order to recover from any unintentional loss.
9+
10+
There are various methods to perform an upgrade including:
11+
12+
* [In-Place Marketplace Upgrade](#in-place-marketplace-upgrade)
13+
* [Out-of-Place Marketplace Upgrade](#out-of-place-marketplace-upgrade)
14+
* [In-Place Custom Upgrade](#custom-in-place-upgrade)
15+
* [Out-of-Place Custom Upgrade](#custom-out-of-place-upgrade)
16+
17+
# In-Place Marketplace Upgrade
18+
19+
The in-place Marketplace upgrade can be performed when there has been no external modifications of the infrastructure after the original installation of the Marketplace stack; or you wish to reconcile the infrastructure back to the delivered Marketplace infrastructure.
20+
21+
The in-place method will both modify the infrastructure and patch/upgrade the delivered Oracle Backend for Spring Boot and Microservices applications.
22+
23+
This method is recommended for development deployments, or after testing the upgrade using the [Out-of-Place Upgrade](#out-of-place-marketplace-upgrade) for production deployments.
24+
25+
> **Warning**: to ensure no unintentional outage or infrastructure destruction; do not directly apply the upgrade stack. Plan and review the actions that will be performed prior to its application. If in doubt about the potential loss of data or infrastructure, opt for the Out-of-Place method.
26+
27+
## Download the Marketplace Upgrade Stack
28+
29+
Visit the [Release](https://github.com/oracle/microservices-datadriven/releases/) page and download the `marketplace_upgrade.zip` file for the version you are upgrading to.
30+
31+
## Update the Current Stack
32+
33+
In Oracle Cloud Infrastructure, navigate to Developer Services -> Stacks. Ensure the region and compartment is set to the location where the Marketplace stack was first installed, and select the stack.
34+
35+
![Select Stack](images/upgrade_select_stack.png)
36+
37+
Edit the Stack, and upload the `marketplace_upgrade.zip` file.
38+
39+
![Edit Stack](images/edit_stack.png)
40+
![Upload Zip](images/upload_zip.png)
41+
42+
Click through the wizard and ensure the "Apply" checkbox is not ticked. Save Changes.
43+
44+
![Save Changes](images/save_changes.png)
45+
46+
## Plan the Upgrade
47+
48+
Run the plan Job and review the proposed actions.
49+
50+
![Plan](images/plan.png)
51+
52+
Generally, any proposed destruction of the Database or Kubernetes cluster should be avoided unless you are confident that you can recover both your applications and data. If the plan shows the destruction of these resources, the [Out-of-Place Upgrade](#out-of-place-marketplace-upgrade) should be used as an alternative.
53+
54+
![Plan Output](images/plan_output.png)
55+
56+
## Apply the Upgrade
57+
58+
![Apply](images/apply_upgrade.png)
59+
60+
# Out-of-Place Marketplace Upgrade
61+
62+
The out-of-place Marketplace upgrade can be used when manual changes to the original infrastructure have been made after the initial installation of the Oracle Backend for Spring Boot and Microservices. It is the recommended Marketplace method for production installations as it allows you to test the upgrade prior to go live, while leaving the old infrastructure in place for rollbacks.
63+
64+
> The out-of-place method deliver new infrastructure and Oracle Backend for Spring Boot and Microservices applications. You will need to migrate your applications to the new platform.
65+
66+
Follow the [instructions](../setup/) to install the latest Marketplace version.
67+
68+
## Clone Database
69+
70+
Depending on the Oracle Database that was used during the initial installation, the method of cloning the database will vary. For example:
71+
72+
* [Oracle Autonomous Database](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/clone-autonomous-database.html)
73+
* [Oracle BaseDB](https://docs.oracle.com/en-us/iaas/base-database/doc/clone-db-system.html)
74+
* On-Premises options include:
75+
* [PDB Clone](https://docs.oracle.com/en/database/oracle/oracle-database/21/multi/cloning-a-pdb.html)
76+
* [RMAN Duplicate](https://docs.oracle.com/en-us/iaas/Content/Database/Tasks/mig-rman-duplicate-active-database.htm)
77+
* [Datapump](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html)
78+
79+
## Load Custom Applications
80+
81+
Once the database has been cloned, re-load your applications into the new Kubernetes environment.
82+
83+
## Clean Up Old Installation
84+
85+
Follow the [uninstall guide](../uninstall/) to clean up the old Marketplace installation.
86+
87+
# Custom In-Place Upgrade
88+
89+
The Custom In-Place upgrade can be applied to any existing installation of the Oracle Backend for Spring Boot and Microservices. It will not modify any infrastructure and only apply changes to existing and install new Oracle Backend for Spring Boot and Microservices applications.
90+
91+
## Download the Latest Installation
92+
93+
Visit the [Release](https://github.com/oracle/microservices-datadriven/releases/) page and download the `custom-ebaas_latest.zip` file for the version you are upgrading to.
94+
95+
Unzip the `custom-ebaas_latest.zip` file.
96+
97+
## Define the Infrastructure
98+
99+
From the original installation source, copy the following infrastructure definitions, where they exist, to the new release source:
100+
101+
* ansible/roles/common/vars/main.yaml
102+
* ansible/roles/registry/vars/main.yaml
103+
* ansible/roles/database/vars/main.yaml
104+
* ansible/roles/oci/vars/main.yaml
105+
* ansible/roles/azure/vars/main.yaml
106+
107+
## Perform the Upgrade
108+
109+
From the unzipped source, run the following commands:
110+
111+
```bash
112+
./setup_ansible.sh
113+
source activate.env
114+
ansible-playbook ansible/k8s_apply.yaml -t full
115+
```
116+
117+
# Custom Out-of-Place Upgrade
118+
119+
The custom out-of-place upgrade assumes you have out-of-place infrastructure to install into. The existing Oracle Database should be cloned for use with the new version.
120+
121+
## Download the Latest Installation
122+
123+
Visit the [Release](https://github.com/oracle/microservices-datadriven/releases/) page and download the `custom-ebaas_latest.zip` file for the version you are upgrading to.
124+
125+
Unzip the `custom-ebaas_latest.zip` file.
126+
127+
## Clone Database
128+
129+
Depending on the Oracle Database that was used during the initial installation, the method of cloning the database will vary. For example:
130+
131+
* [Oracle Autonomous Database](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/clone-autonomous-database.html)
132+
* [Oracle BaseDB](https://docs.oracle.com/en-us/iaas/base-database/doc/clone-db-system.html)
133+
* On-Premises options include:
134+
* [PDB Clone](https://docs.oracle.com/en/database/oracle/oracle-database/21/multi/cloning-a-pdb.html)
135+
* [RMAN Duplicate](https://docs.oracle.com/en-us/iaas/Content/Database/Tasks/mig-rman-duplicate-active-database.htm)
136+
* [Datapump](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html)
137+
138+
## Update the Infrastructure
139+
140+
From the original installation source, copy the following infrastructure definitions, where they exist, to the new release source:
141+
142+
* ansible/roles/common/vars/main.yaml
143+
* ansible/roles/registry/vars/main.yaml
144+
* ansible/roles/database/vars/main.yaml
145+
* ansible/roles/oci/vars/main.yaml
146+
* ansible/roles/azure/vars/main.yaml
147+
148+
**Update the files to point to the new out-of-place infrastructure.**
149+
150+
## Perform the Upgrade
151+
152+
From the unzipped source, run the following commands:
153+
154+
```bash
155+
./setup_ansible.sh
156+
source activate.env
157+
ansible-playbook ansible/k8s_apply.yaml -t full
158+
```
159+
160+
## Load Custom Applications
161+
162+
Once the upgrade is complete, re-load your applications into the new Kubernetes environment.
Loading
Loading
Loading
Loading
Loading
Loading
Loading

docs-source/spring/data/menu/main.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ main:
7777
ref: "/cluster-access"
7878
- name: Sample Application
7979
ref: "/sampleapp"
80+
- name: Upgrade
81+
ref: "/upgrade"
8082
- name: Uninstall
8183
ref: "/uninstall"
8284
- name: "Release Notes"

0 commit comments

Comments
 (0)