How To and Troubleshooting
This article describes how to deploy Wyn Enterprise to run on Azure Kubernetes Service.
Create the following resources in the same resource group:
Please note that you should have an existing SQL Server, MySQL, Postgres, or Oracle database.
Follow the below steps to create the resources discussed above.
Create a 'wyn' Kubernetes cluster. Restrict the availability zones of the cluster because the cached database data is stored in the managed disks, which means the disk and the AKS node must be in the same availability zone.
Create a 'wyn' storage account. Set its performance to Standard as shown.
The Standard Performance is suitable for writing logs and reading the configuration file. Moreover, Wyn Enterprise uses the asynchronous non-blocking method to write logs, so it will not affect the performance.
a. Create a 'conf' and 'logs' file share in the wyn storage account.
b. Click here to download the zip file and later unzip it.
c. Update the database connection string in the 'conf/Wyn.conf' file.
d. Upload the 'Wyn.conf' file to the 'conf' file share you just created.
Enter the Kubernetes cluster and click Connect, and then click Open Cloud Shell to open the cloud shell.
Run the appropriate command to connect to the cluster.
//The following example gets the node resource group for the wyn AKS cluster in the wyn-aks resource group, and creates the disk in the node resource group.
az aks show --resource-group wyn-aks --name wyn --query nodeResourceGroup -o tsv
Then, create a 'wyn' managed disk. Select its availability zone and set the performance tier to P30. You can also choose a higher performance tier based on your requirements.
Use the following command in the cloud shell to get the zip file, and later unzip it.
Copy the Resource ID of the Managed Disk and use it to update the 'services/analysisdb.yaml' file.
Use the storage key to create the wyn-aks-secret. Get the storage key from the storage account Access Keys tab.
kubectl create secret generic wyn-aks-secret --from-literal=azurestorageaccountname=wyn --from-literal=azurestorageaccountkey=<STORAGE_KEY>
Use the following command to create volumes and services as shown.
# enter the wyn-aks folder
# create the volumes
kubectl apply -f pv
# create services
kubectl apply -f services
Run the following command to check the pods' status.
kubectl get pods
You can use the Application Gateway ingress controller to expose Wyn.
# create application-gateway ingress
kubectl apply -f ingress
Enable the Application Gateway ingress controller.
Enter the ingress-appgateway to get the public IP address to access Wyn Enterprise. (http://<public-IP-address>)