OCI ScaleGrid requirements
ScaleGrid Overview
ScaleGrid is a requirement for OCI installations. ScaleGrid offers a fully-managed MongoDB system running within your own private cloud. The service deploys, upgrades, manages backups/restores, and monitors the service.
This page describes how to set up ScaleGrid and refers to some of the ScaleGrid documentation available on their website.
Setting up ScaleGrid
The main steps in setting up ScaleGrid are as follows:
- Create a ScaleGrid Account
- Set up the ScaleGrid Cloud Profile for OCI
- Create the ScaleGrid MongoDB Cluster
- Connect to the ScaleGrid MongoDB Cluster
Create a ScaleGrid Account
To create a ScaleGrid account refer to Bring Your Own Cloud Plans in the "Getting Started with ScaleGrid" section on the ScaleGrid website.
Set up the ScaleGrid Cloud Profile for OCI
To set up the OCI Cloud Profile, follow the Setup and OCI Cloud Profile section on the ScaleGrid website.
Create the ScaleGrid MongoDB Cluster
Using your OCI Cloud Profile set up earlier, create a ScaleGrid MondoDB cluster by referring to the Bring Your Own Cloud Plans section on the ScaleGrid website.
Connect to the ScaleGrid MongoDB Cluster
To connect to the ScaleGrid MongoDB Cluster, do the following:
- Using the client of your choice, follow the steps in Connecting to MongoDB Cluster with ScaleGrid on the ScaleGrid website.
- You now need to create the necessary users and roles. First, connect to the MongoDB client.
- Enter the commands listed in the code sample below. Replace the placeholder
XXXXXwith a password meeting your security guidelines for database users. All other usernames and database names match the default values from the Platform Helm Chart.
db.createUser(
{
user: "itemsvc_app",
pwd: "XXXXX",
roles: [
{
role: "readWrite",
db: "itemsvcdb"
}
]
}
);
db.createUser(
{
user: "metricssvc_app",
pwd: "XXXXX",
roles: [
{
role: "readWrite",
db: "metricssvcdb"
}
]
}
);
db.createUser(
{
user: "graphicssvc_app",
pwd: "XXXXX",
roles: [
{
role: "readWrite",
db: "graphicssvcdb"
}
]
}
);
db.createRole(
{
role: "collModItemsDB",
privileges: [
{
resource: {
db: "itemsvcdb",
collection: ""
},
actions: [
"collMod"
]
}
],
roles: []
}
);
db.updateUser("itemsvc_app",
{
roles: [
{
role: "readWriteAnyDatabase",
db: "admin"
},
{
role: "collModItemsDB",
db: "admin"
}
]
}
);