You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/1-migrate-linux-postgresql-workloads.md
+51-17Lines changed: 51 additions & 17 deletions
Original file line number
Diff line number
Diff line change
@@ -18,13 +18,13 @@ The application and its associated data are provided for you in the GitHub repos
18
18
19
19
As we consider this migration effort, you might wonder about the benefits of migrating this workload to the cloud. There are many, but some of the value propositions include:
20
20
21
-
*Security and compliance.* When you bring compute and data workloads to the cloud, they benefit from increased security capabilities. Virtual Machines in Azure benefit from a vast array of security and compliance features, including firewalls, virtual networks, just-in-time virtual machine access, encryption, RBAC, and confidential computing. Azure Database for PostgreSQL supports many similar features as well, such as [encryption with customer-managed keys](/azure/postgresql/flexible-server/concepts-data-encryption), [compliance certifications](/azure/postgresql/flexible-server/concepts-compliance), and support for [Microsoft Defender for Cloud](/azure/postgresql/flexible-server/concepts-security#microsoft-defender-for-cloud-support).
21
+
*Security and compliance.* When you bring compute and data workloads to the cloud, they benefit from increased security capabilities. Virtual Machines in Azure benefit from a vast array of security and compliance features, including firewalls, virtual networks, just-in-time virtual machine access, encryption, RBAC, and confidential computing. Azure Database for PostgreSQL supports many similar features as well, such as [encryption with customer-managed keys][docs-url-1], [compliance certifications][docs-url-2], and support for [Microsoft Defender for Cloud][docs-url-3].
22
22
23
-
*Secure connections between your Virtual Machines and Databases.* As we integrate these two services, it's critical that they can connect to each other in a secure manner that reduces the risk of data loss. [Microsoft Entra ID authentication](/azure/postgresql/flexible-server/concepts-azure-ad-authentication) enables you to connect to your Azure Database for PostgreSQL without traditional passwords, but instead using Microsoft Entra ID identities for both your application workload (Managed Identity), users, and administrators, via their Microsoft Entra ID user accounts. This approach mitigates the risk of long-lived credentials being compromised and allowing bad actors to access your data. Entra ID, Managed Identities, and fine-grained Role-Based Access Control (RBAC) can enable your application workload to access data and manage resources in Azure securely, following the principle of least privilege.
23
+
*Secure connections between your Virtual Machines and Databases.* As we integrate these two services, it's critical that they can connect to each other in a secure manner that reduces the risk of data loss. [Microsoft Entra ID authentication][docs-url-4] enables you to connect to your Azure Database for PostgreSQL without traditional passwords, but instead using Microsoft Entra ID identities for both your application workload (Managed Identity), users, and administrators, via their Microsoft Entra ID user accounts. This approach mitigates the risk of long-lived credentials being compromised and allowing bad actors to access your data. Microsoft Entra ID, Managed Identities, and fine-grained Role-Based Access Control (RBAC) can enable your application workload to access data and manage resources in Azure securely, following the principle of least privilege.
24
24
25
-
*Access to high-performance and cost-effective compute across multiple regions.* Whether you need cost-effective compute for test-dev or the most recent, highest performance, or largest compute types available in the cloud today, Azure has a broad selection of compute options for both [Virtual Machines](/azure/virtual-machines/sizes/overview) and [Azure Database for PostgreSQL](/azure/postgresql/flexible-server/concepts-compute), which can be scaled up and down as needed, and are available across [over 60 regions](https://azure.microsoft.com/explore/global-infrastructure/products-by-region) in Azure. Compute can be scaled both vertically and horizontally, including via [database replicas](/azure/postgresql/flexible-server/concepts-read-replicas) and [distributed options](/azure/cosmos-db/postgresql/introduction) such as Azure Cosmos DB for PostgreSQL, a managed service for PostgreSQL extended with the Citus open source superpower of distributed tables. This compute is paired with some of the [fastest cloud storage options](/azure/virtual-machines/disks-types) to tailor your compute and storage I/O requirements to your workload.
25
+
*Access to high-performance and cost-effective compute across multiple regions.* Whether you need cost-effective compute for test-dev or the most recent, highest performance, or largest compute types available in the cloud today, Azure has a broad selection of compute options for both [Virtual Machines][docs-url-5] and [Azure Database for PostgreSQL][docs-url-6], which can be scaled up and down as needed, and are available across [over 60 regions][7] in Azure. Compute can be scaled both vertically and horizontally, including via [database replicas][docs-url-8] and [distributed options][docs-url-9] such as Azure Cosmos DB for PostgreSQL, a managed service for PostgreSQL extended with the Citus open source superpower of distributed tables. This compute is paired with some of the [fastest cloud storage options][docs-url-10] to tailor your compute and storage I/O requirements to your workload.
26
26
27
-
*Cost management and cost-effectiveness.* You can optimize for cost management and cost-effectiveness on both the Linux and PostgreSQL sides. When compared with on-premises solutions, the cost can often be significantly more tailored and appropriate for your situation. You can right-size your compute in comparison to an on-prem solution. You can also easily manage your entire fleet to optimize for only the compute and storage you need, and pay only for what you use in a utility billing model. Utility billing enables customers to handle periods of high demand without having to pay the cost of over-provisioning and allows migration to faster and more efficient generations of compute as they become available. Customers can also take advantage of the Azure Hybrid Benefit to save on licensing costs for specific Linux distributions (learn more about the [Azure Hybrid Benefit for Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES) virtual machines](/azure/virtual-machines/linux/azure-hybrid-benefit-linux)). Customers can also reduce costs—up to 72 percent compared to pay-as-you-go pricing—with one-year or three-year terms for virtual machines (VMs) and Azure Reserved Virtual Machine Instances (learn [How the Azure reservation discount is applied to virtual machines](/azure/cost-management-billing/manage/understand-vm-reservation-charges)). Azure pricing is transparent and predictable, and you can use the [Azure Pricing Calculator](https://azure.microsoft.com/pricing/calculator/) to estimate your costs before you deploy.
27
+
*Cost management and cost-effectiveness.* You can optimize for cost management and cost-effectiveness on both the Linux and PostgreSQL sides. When compared with on-premises solutions, the cost can often be significantly more tailored and appropriate for your situation. You can right-size your compute in comparison to an on-premises solution. You can also easily manage your entire fleet to optimize for only the compute and storage you need, and pay only for what you use in a utility billing model. Utility billing enables customers to handle periods of high demand without having to pay the cost of over-provisioning and allows migration to faster and more efficient generations of compute as they become available. Customers can also take advantage of the Azure Hybrid Benefit to save on licensing costs for specific Linux distributions (learn more about the [Azure Hybrid Benefit for Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES) virtual machines][docs-url-11]). Customers can also reduce costs—up to 72 percent compared to pay-as-you-go pricing—with one-year or three-year terms for virtual machines (VMs) and Azure Reserved Virtual Machine Instances (learn [How the Azure reservation discount is applied to virtual machines][docs-url-12]). Azure pricing is transparent and predictable, and you can use the [Azure Pricing Calculator][13] to estimate your costs before you deploy.
28
28
29
29
*Day 2 operations.* Operations across the board become more efficient through automation, the ability to upgrade easily with potentially zero downtime, monitoring, security patching, backups, and disaster recovery. Additionally, you can manage your infrastructure end-to-end with industry-standard toolchains.
30
30
@@ -36,7 +36,7 @@ However, we won't be focusing on how to export the data from your source databas
36
36
37
37
What you are provided with is a sample application, Postgres data, binary files, and infrastructure as code that you can use to simulate the migration process. Once you complete the simulated migration, you can use the knowledge gained to apply the same principles to your own workload.
38
38
39
-
You use our sample application, [Azure-Samples/tailwind-traders-go](https://github.com/Azure-Samples/tailwind-traders-go) as the stand-in for the application code to be migrated. The Bicep infrastructure as code, sample Postgres and binary data, and other resources to support the hands-on portion of this module are available in the [Azure-Samples/linux-postgres-migration](https://github.com/Azure-Samples/linux-postgres-migration).
39
+
You use our sample application, [Azure-Samples/tailwind-traders-go][14] as the stand-in for the application code to be migrated. The Bicep infrastructure as code, sample Postgres and binary data, and other resources to support the hands-on portion of this module are available in the [Azure-Samples/linux-postgres-migration][15].
40
40
41
41
In order to apply this approach to your own workload, you'll need to map your source application and data to the following structure:
42
42
@@ -78,20 +78,54 @@ However, this often requires code changes in your application. We show how to us
78
78
79
79
## Create an Azure account and install the Azure CLI
80
80
81
-
If you don't have an Azure account, you can create a [free account](https://azure.microsoft.com/free/) today. You get credits that can be used to try out paid Azure services. Even after you use the credits, you can keep the account and use free Azure services.
81
+
If you don't have an Azure account, you can create a [free account][16] today. You get credits that can be used to try out paid Azure services. Even after you use the credits, you can keep the account and use free Azure services.
82
82
83
-
In order to run the commands in the following modules you need access to a bash shell. This can be on your local machine such as macOS, Linux, Windows Subsystem for Linux (WSL), Docker, a virtual machine such as Multipass, or in the cloud such as [Azure Cloud Shell](/azure/cloud-shell/overview), [GitHub Codespaces](https://github.com/features/codespaces), or an Azure Virtual Machine.
83
+
In order to run the commands in the following modules you need access to a bash shell. This can be on your local machine such as macOS, Linux, Windows Subsystem for Linux (WSL), Docker, a virtual machine such as Multipass, or in the cloud such as [Azure Cloud Shell][docs-url-17], [GitHub Codespaces][18], or an Azure Virtual Machine.
84
84
85
85
86
-
To complete this module, you need the Azure CLI. You can install the Azure CLI on your local machine by following the instructions in the [Install the Azure CLI](/cli/azure/install-azure-cli) article. You also need to install [Git](https://git-scm.com/).
86
+
To complete this module, you need the Azure CLI. You can install the Azure CLI on your local machine by following the instructions in the [Install the Azure CLI][docs-url-19] article. You also need to install [Git][20].
87
87
88
88
## Resources
89
-
-[Create a Free Azure account](https://azure.microsoft.com/free/)
90
-
-[How to Install the Azure CLI](/cli/azure/install-azure-cli)
-[Azure Hybrid Benefit for Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES) virtual machines](/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
93
-
-[How the Azure reservation discount is applied to virtual machines](/azure/cost-management-billing/manage/understand-vm-reservation-charges)
0 commit comments