If you want to deploy Moodle on OCI, you can use Ampere compute instances as application server and MySQL HeatWave Database Service to store the data.
Depending on your requirements, MySQL HeatWave can provide High Availability and Query Acceleration.
In this post, we will see the easiest and fasted way to deploy the following basic architecture:
In OCI to quickly deploy an architecture and all the required resources, it’s recommended to use a Stack (Terraform recipes and modules).
So deploy all the resources we need (VCN, Subnets, Security Lists, Internet Gateways, Compute Instances…) we just need to click on the following button:
When you click on it, if you are already connected to OCI, you will be redirected directly to Resource Manager Stack where you need to accept the Oracle Terms of Use and use the latest available Terraform version:
Then on the next screen, you can specify the required credentials and select the shapes. By default, the Always Free Ampere Compute Instance is selected and you can manually specify the amount of OCPUs and Memory to use:
You can click on next and create. All resources will be deployed on OCI. After some time, the Stack Job will finish and if all went well, it should turn green:
Using the Application Information tab, you will find all the relevant information to reach the new deployed Moodle and finish the installation:
Click on the url (1) and finish the installation:
We need to choose Improved MySQL (mysqli) as database driver:
And we provide the information related to the MySQL HeatWave Instance deployed:
Finally, after having finished the installation, Moodle’s dashboard is available:
As you can see, using OCI’s Resource Manager via a Stack is very easy to deploy Moodle. You can also use an Ampere Shape as application server.
If you connect to the Compute Instance hosting Moodle, you can verify the architecture and the version of the Operating System:
[opc@moodleserver1 ~]$ lscpu
Architecture: aarch64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 1
On-line CPU(s) list: 0
Vendor ID: ARM
Model name: Neoverse-N1
Model: 1
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1
Stepping: r3p1
BogoMIPS: 50.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp
asimdhp cpuid asimdrdm lrcpc dcpop asimddp ssbs
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0
Vulnerabilities:
Itlb multihit: Not affected
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Mmio stale data: Not affected
Retbleed: Mitigation; CSV2, BHB
Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Spectre v1: Mitigation; __user pointer sanitization
Spectre v2: Mitigation; CSV2, BHB
Srbds: Not affected
Tsx async abort: Not affected
[opc@moodleserver1 ~]$ cat /etc/oracle-release
Oracle Linux Server release 9.1
This is a video with all the steps:
Enjoy Moodle on MySQL HeatWave !
[…] the previous post, we saw how to quickly deploy Moodle to Oracle Cloud Infrastructure on Ampere compute instances and […]
[…] on Oracle Cloud Infrastructure using Ampere compute instances and MySQL HeatWave Database Service [1] [2], in this article we will see how to scale our architecture using multiple Moodle instances, […]