Upgrade Multi-server Architecture
To migrate from Styx Styx v1.11.8/Styx v1.11.9/Styx v1.11.10 to Styx v1.11.11, follow below steps:
Additional configurations will be reverted on upgrade to the Styx v1.11.11.
1. Preparing Master and Agent Nodes:
- Ensure both Master and Agent nodes are set up and ready.
- Download the build file (k8sopinstaller) and extract it on both nodes.
Downloading and Importing Offline Images:
- Download offline images from the SureMDM package to your local machine.
- Import these images into all SureMDM Server where SureMDM will be deployed.
If you've previously deployed /suremdm with Styx v1.11.8/Styx v1.11.9/Styx v1.11.10, adhere to the steps below to configure /suremdm for compatibility with Styx v1.11.11 before initiating the upgrade process:
a. Navigate to the k8sopinstaller Directory.
b. Open Super_install.sh to edit:
- Locate (dns_name), enclose it within curly brackets{}, add "/suremdm," and Save the file.
For example: ip=$(echo [https://${dns_name}/suremdm](about:blank))
c. After a successful upgrade, execute the following command in the Manifests \ ingress-nginx directory to run the ingress-suremdm.yaml file:
sudo kubectl apply -f ingress-suremdm.yaml
d. Navigate to the k8sopinstaller\manifests\deployment and execute the following command to run the Deployment.suremdmhtmlhydra.yaml:
sudo kubectl apply -f Deployment.suremdmhtmlhydra.yaml
2. Navigate to the k8sopinstaller folder and run the following command in the terminal to start the upgrade process:
sudo bash Super_install.sh
3. Now, for SureMDM SQL server setup, enter the necessary credentials and connection string:
Enter SQL Server Path:
Enter SQL Server Username:
Enter SQL Server Password:
Use the format 192.168.x.xx for the SQL DB Server path (Private IP Address of the machine).
4. MongoDB Server Configuration:
MongoDB will automatically retrieve its details; wait until the following message appears:
"You are successfully connected to MongoDB Server. Connection String: mongodb://192.168.x.xx:27017."
Would you like to proceed with the mentioned MongoDB Server Connection String?
Press 1 to proceed.
Press 2 to change.
Press 1 to continue with the same MongoDB connection string, or press 2 to change the connection string.
5. Proceed with the Storage Configuration setup:
The storage data will be automatically fetched; wait until the message below is displayed.
Your \storage type\ bucket is \bucket name. Would you like to proceed with the same \storage type\ bucket?
Press 1 to Proceed.
Press 2 to Change.
Press 1 to continue with the same storage credentials, or press 2 to change the storage.
6. Messaging system configuration will be done.
7. Input the mapped DNS without the HTTPS protocol:
Enter your SureMDM Account URL:
The system admins must provide the DNS without the subpath extension (/suremdm), but they can specify the port on which the SureMDM server will be running.
8. SSL Certificate Configuration:
Ensure that the SSL Certificate and Private Key are available in the 'appdata/certs' folder.
Enter the file name of the SSL Certificate (Example: file_name.extension):
Enter the file name of the Private Key associated with the Certificate (Example: file_name.extension):
9. Choose the FCM configuration based on your requirements. If you have already deployed a previous build with FCM values, wait until it automatically fetches the details.
Your FCM Project ID is nxxxxxxxxx.
Do you wish to change FCM Configuration? Yes[y] or No[n]:
During the upgrade, if the FCM is already configured, please re-configure the FCM by pressing Yes[y] to proceed further.
FCM Project ID:
FCM Server API Key:
FCM Application ID:
FCM Sender ID:
Please enter the name of .json file present in the appdata/pluto directory.(Example:[file_name.json]):
10. Choose the Google API key configuration.
If you used a Google API key in a previous deployment, wait until it automatically fetches the details.
Google Maps Configuration:
Your Google API Key is AxxxxxxxxxxxxxxxxxxxxxxxxxxQ.
Do you want to change the Google Maps Configuration? Press 'y' for yes or 'n' for no.
If the system admin wishes to continue with the existing Google API key configuration, they can enter "y"; otherwise, they can enter "n".
11. iOS and macOS Configuration:
Choose the iOS and macOS configurations based on your requirements.
Do you want to proceed with iOS and macOS Configuration? Press 'y' for yes or 'n' for no.
If system admin wishes to continue with the iOS and macOS configuration, they can enter "y" by providing the DefaultPush certificate password; otherwise, they can enter "n".
Enter Default Push Certificate Password
12. Configure Android Enterprise based on your requirements.
Android Enterprise Configuration:
Do you want to proceed with the Android Enterprise configuration? Press 'y' for yes or 'n' for no.
If the system admin wishes to continue with the Android Enterprise configuration, they can enter "y" and provide the following details, otherwise, they can enter "n":
Enter the name of the MSA Account Certificate in the appdata/api/appdata directory (Example: [file_name.p12]):
Enter the name of the ESA Account Certificate in the appdata/api/appdata directory (Example: [file_name.p12]):
Enter MSA Account Email:
Enter ESA Account Email:
ESA configuration is optional, system admins can press Enter to skip as per the requirement.
13. Choose the Mail configuration based on your requirements.
Mail server configuration:
Do you want to proceed with Mail server configuration? Press 'y' for yes or 'n' for no.
If system admin wishes to continue with the Mail configuration, they can enter "y" and provide the following details, otherwise, they can enter "n":
Enter Mail server:
Enter Mail user:
Enter Mail password:
Enter Mail Server Backup:
The Mail Server Backup field is optional.
14. Choose the Windows Push Notification Configuration based on your requirements.
Windows Push Notification Configuration:
Do you want to proceed with the Windows Push Notification Configuration? Press 'y' for yes or 'n' for no.
If the system admin wishes to continue with the Windows Push Notification configuration, they can enter "y" and provide the following details, otherwise, they can enter "n".
Enter Package Family Name:
Enter SID:
Enter Client Secret:
15. Choose the MQTT Gateway (Things enrollment) configuration based on your requirements.
MQTT gateway (IoT/Things enrollment) configuration:
Do you want to proceed with MQTT gateway configuration? Press 'y' for yes or 'n' for no.
If the system admin wishes to continue with the MQTT Gateway (Things enrollment) configuration, they can enter "y", otherwise, they can enter "n."
Port 1883 should be allowed to configure Things QR enrollment. Click here to learn how to configure Things QR enrollment (CamLock and CamLock Sentry).
16. Select the SureMDM Hub configuration based on the requirements.
SureMDM Hub configuration:
Do you wish to continue with SureMDM Hub configuration? Press 'y' for yes or 'n' for no.\ If the system admin wants to continue with the SureMDM Hub configuration, they can enter "y" by providing the following details; otherwise, the system admin can enter "n".
Enter SureMDM Hub Email-ID:
Enter SureMDM Hub Company Name:
The username "Administrator" will be the default admin user for SureMDM Hub.
17. After a successful deployment, the system admins will receive the following message:
SureMDM Setup Successful! Please wait for some time and then access SureMDM Web Console.
18. Post-upgrade, get the list of Styx v1.11.8/Styx v1.11.9/Styx v1.11.10 images by running following command:
sudo k3s ctr images ls
19. System admins need to delete Styx v1.11.8/Styx v1.11.9/Styx v1.11.10 images using the command:
sudo k3s ctr images rm <image name>;
For Example:
sudo k3s ctr images rm docker.io/onpremise/reportservice:1.11.8
The system admins can check the status of the pods by running the command:
kubectl get pods -n suremdm
Mongo version 7 is supported in Styx v 1.11.11 and above.