Deployment Slots Explained | Azure Web App Deployment Slots
HTML-код
- Опубликовано: 10 сен 2024
- Azure Deployment Slots are useful to do Blue Green Deployment. It gives us a flexibility to test the application in production and release it to the users if the test results are satisfactory.
When you deploy your web app, web app on Linux, mobile back end, or API app to Azure App Service, you can use a separate deployment slot instead of the default production slot when you're running in the Standard, Premium, or Isolated App Service plan tier. Deployment slots are live apps with their own host names. App content and configurations elements can be swapped between two deployment slots, including the production slot.
The app must be running in the Standard, Premium, or Isolated tier in order for you to enable multiple deployment slots.
The staging slot has a management page just like any other App Service app. You can change the slot's configuration. To remind you that you're viewing the deployment slot, the app name is shown as {app-name}/{slot-name}, and the app type is App Service (Slot). You can also see the slot as a separate app in your resource group, with the same designations.
Swapping the slots
-------------------------------
Swap operation steps
When you swap two slots (usually from a staging slot into the production slot), App Service does the following to ensure that the target slot doesn't experience downtime:
Apply the following settings from the target slot (for example, the production slot) to all instances of the source slot:
Slot-specific app settings and connection strings, if applicable.
Continuous deployment settings, if enabled.
App Service authentication settings, if enabled.
Any of these cases trigger all instances in the source slot to restart. During swap with preview, this marks the end of the first phase. The swap operation is paused, and you can validate that the source slot works correctly with the target slot's settings.
Wait for every instance in the source slot to complete its restart. If any instance fails to restart, the swap operation reverts all changes to the source slot and stops the operation.
If local cache is enabled, trigger local cache initialization by making an HTTP request to the application root ("/") on each instance of the source slot. Wait until each instance returns any HTTP response. Local cache initialization causes another restart on each instance.
If auto swap is enabled with custom warm-up, trigger Application Initiation by making an HTTP request to the application root ("/") on each instance of the source slot.
If applicationInitialization isn't specified, trigger an HTTP request to the application root of the source slot on each instance.
If an instance returns any HTTP response, it's considered to be warmed up.
If all instances on the source slot are warmed up successfully, swap the two slots by switching the routing rules for the two slots. After this step, the target slot (for example, the production slot) has the app that's previously warmed up in the source slot.
Now that the source slot has the pre-swap app previously in the target slot, perform the same operation by applying all settings and restarting the instances.
Brilliant demo!. I'm studying for my AZ-104 and have never used App Services at all so it's all new to me. The clarity and detail of your video that starts rights from the beginning of the process including what problem deployment slots are meant solve was really helpful. Thanks for sharing
sir, i am impressed. It was so neat clear and proper.
Thanks for the tutorial. It really straightforward and easy to understand
Thanks for the feedback. Please subscribe to the channel if you have not subscribed yet. Thanks
very good nice tutorial
Thank you
How to manage database connection string in deployment swap for staging and prod env?
ideally both should point to the same database.
good content
Thank you. If you have not subscribed to the channel, Please subscribe. There are more videos on Azure in the channel. Thanks
Nice one... short and sweet. but wondering why did you create testing slot which you never used anywhere?
Thanks for the feedback. Just to show that we can create more than 2 slots.
please subscribe to the channel if you did not subscribe to the channel yet. There are more videos in the channel on azure and .net
Agur