Presented by Patrick Labbett for NAEO
Follow the presentation live!
Visit https://portal.azure.com and create a new account or login using your Microsoft account.
Microsoft has stepped-up it's documentation game over the last 5 years.
https://docs.microsoft.com/en-us/learn/
https://docs.microsoft.com/en-us/learn/modules/fundamental-azure-concepts/categories-of-cloud-services
https://docs.microsoft.com/en-us/learn/modules/fundamental-azure-concepts/categories-of-cloud-services
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/overview
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/regions-availability-zones
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/regions-availability-zones
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/regions-availability-zones
Additional advantages of region pairs/geographies:
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/resources-resource-manager
Group items around their function, like web, or database. You can also use a single resource group if you choose.
If you delete a resource group, all resources contained within it are also deleted. Resource groups make it easy to remove a set of resources all at once. Good for non-production environments/dev/test setups.
Resource groups are also a scope for applying role-based access control (RBAC) permissions. (Ease of administration.)
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/management-groups-subscriptions
Organize invoice sections by subscriptions
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/management-groups-subscriptions
Create management hierarchy using
Azure Management Groups
https://docs.microsoft.com/en-us/learn/modules/azure-architecture-fundamentals/management-groups-subscriptions
(When you have lots of subscriptions)
https://docs.microsoft.com/en-us/learn/modules/intro-to-azure-fundamentals/tour-of-azure-services
https://docs.microsoft.com/en-us/learn/modules/intro-to-azure-fundamentals/get-started-with-azure-accounts
If you are growing talent internally for technical roles, make sure you give them time for ongoing skills development.
Maybe one day. For now, we need IIS.
Newer versions of .NET framework include better and better support for hosting web applications using Azure's App Services or on Linux servers using nginx/Apache.
https://docs.microsoft.com/en-us/azure/azure-sql/database/features-comparison
Microsoft SQL Server on VM
https://docs.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/pricing-guidance
My current recommendations for application high-availability:
Genesis is an Ubuntu-linux based environment that leverages Asterisk open-source telecom engine to provide widely supported telephony to Intelligent Series.
https://github.com/microsoft/WSL2-Linux-Kernel
How does failover even work with Linux, Genesis, and SIP?
Use a VIP to manually move traffic between your primary and backup Genesis servers.
(use Standard SKU for availability zone support)
https://docs.microsoft.com/en-us/azure/communication-services/concepts/telephony/certified-session-border-controllers
Standard HDD was the original storage offering on Azure and offers cost-effective storage for non-I/O intensive workloads.
Standard SSDs do offer guaranteed performance levels where the Standard HDD disks do not.
Premium SSD is the most commonly used type of disk for SQL Server workloads.
Ultra SSD provides the lowest latency (submillisecond) and the highest potential IOPs.
TempDB can optionally go into its own pool, or using the VM’s temporary disk, which offers low latency since it is physically attached to the physical server where the VMs are running.
Properly configured Premium SSD will see latency in single digit milliseconds.
A single VM's high-availability SLA
https://docs.microsoft.com/en-us/learn/modules/deploy-sql-server-virtual-machine/4-explain-high-availability-options
https://docs.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-overview
It's unlikely you will be using this due to the cost...
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
sudo apt-get update
sudo apt-get install -y mssql-server
sudo apt-get install mssql-tools
sudo /opt/mssql/bin/mssql-conf setup
sudo ufw allow 1433
sudo systemctl status mssql-server --no-pager
SQL Server support through open-source Postgres database
SQL Server running natively on Ubuntu
https://docs.microsoft.com/en-us/learn/modules/introduction-sql-server-linux/5-containers
https://docs.microsoft.com/en-us/learn/modules/configure-azure-application-gateway/2-implement
When Amtelco makes the jump to .NET CORE, we should be able to start using Azure App Services for serverless hosting.
https://docs.microsoft.com/en-us/learn/modules/protect-virtual-machines-with-azure-backup/
https://docs.microsoft.com/en-us/learn/modules/load-balancing-https-traffic-azure/
https://docs.microsoft.com/en-us/learn/modules/improve-app-scalability-resiliency-with-load-balancer/