Deploying to Alliance Business Cloud 🌩️

Introduction

Welcome, engineers of the Alliance Business Suite! This guide will walk you through the process of deploying your applications to our infrastructure, the Alliance Business Cloud (ABC). Our ABC infrastructure is built on top of Plesk and Azure Cloud to offer a robust, secure, and scalable environment for our services.

Objectives 🎯

  • Understand ABC infrastructure components.
  • Learn to deploy applications using Plesk and Azure.
  • Grasp best practices for deployments.

Technology Stack 🛠️

  • Plesk: For managing web operations.
  • Azure Cloud: For cloud resources and services.
  • Azure DevOps: For CI/CD pipelines.
  • PowerShell: For scripting and automation.

Before You Start 🚦

  • Check Dependencies: Ensure that your application's dependencies match the technology stack mentioned.
  • Configuration Files: Keep your configuration files ready, including database credentials from HashiCorp Vault.
  • Test, Test, Test: Make sure all automated tests (MSTest, ABS.SnapBind, SpecFlow) are successful.

Deployment Steps 🛠️

Pre-Deployment Checklist ✔️

  1. Backup: Always take a backup of the current production environment.
  2. Update Plesk: Ensure that Plesk is updated to the latest version.
  3. Resource Allocation: Check CPU, memory, and disk usage in Azure to ensure sufficient resources.

Using Plesk for Deployment 🖥️

  1. Login: Access ABC through the official link.
  2. Select Subscription: Go to Websites & Domains and select your subscription.
  3. Git Deployment: Under the Git section, choose Pull to get the latest version from your repository.
  4. Database Configuration: Navigate to Databases and set up the database connection using credentials from HashiCorp Vault.
  5. Deployment Script: Use the Plesk Deployment Script option to run custom PowerShell scripts, if necessary.

Using Azure App Services for Deployment ☁️

  1. Azure Portal: Log in to the Azure Portal.
  2. Navigate: Go to App Services and find your project.
  3. Deployment Center: Use Azure DevOps as the source and configure build and release pipelines.
  4. Resource Checks: Monitor the resource usage, scale up or down as needed.

Post-Deployment ✔️

  1. Verify: Ensure that the application is working as expected in the production environment.
  2. Monitoring: Set up necessary alerts and monitoring through New Relic and Grafana.

Best Practices 🎩

  • Zero Downtime: Aim for zero downtime during deployments.
  • Rollback Plan: Always have a rollback plan.
  • Documentation: Document any custom configurations or settings.

Common Troubleshooting 🚨

  1. 500 Internal Server Error: Check server logs in Plesk.
  2. Resource Limits: If the application is slow, you might need to allocate more resources in Azure.
  3. Database Connection Issues: Ensure that HashiCorp Vault is up and running.

Conclusion 🏁

Congrats! You're now equipped to deploy applications to the Alliance Business Cloud. Remember, the cloud is not in the sky; it's in our data centers, and it’s our shared responsibility to keep it nimble and secure.

Think you can enhance this guide? Your contributions are always welcome! 😄

For more details, please refer to our official documentation.

Happy Deploying! 🚀