From 80e39ee565d6150eefd1ce65bcb1899b73843506 Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Mon, 6 Jan 2025 16:04:09 -0500 Subject: [PATCH 1/7] initial commit for EKS to AKS guide part 2 --- .vscode/ltex.dictionary.en-US.txt | 2 ++ .vscode/ltex.hiddenFalsePositives.en-US.txt | 1 + .../2025-01-06-eks-to-aks-series-part2.md | 25 +++++++++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 .vscode/ltex.dictionary.en-US.txt create mode 100644 .vscode/ltex.hiddenFalsePositives.en-US.txt create mode 100644 blog/_posts/2025-01-06-eks-to-aks-series-part2.md diff --git a/.vscode/ltex.dictionary.en-US.txt b/.vscode/ltex.dictionary.en-US.txt new file mode 100644 index 00000000..1cc2feda --- /dev/null +++ b/.vscode/ltex.dictionary.en-US.txt @@ -0,0 +1,2 @@ +WAF +EKS diff --git a/.vscode/ltex.hiddenFalsePositives.en-US.txt b/.vscode/ltex.hiddenFalsePositives.en-US.txt new file mode 100644 index 00000000..771ec59b --- /dev/null +++ b/.vscode/ltex.hiddenFalsePositives.en-US.txt @@ -0,0 +1 @@ +{"rule":"MORFOLOGIK_RULE_EN_US","sentence":"^\\QThis sample uses a WAF to protect a Yelb web-based application running in a Kubernetes cluster.\\E$"} diff --git a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md new file mode 100644 index 00000000..30bb2fe5 --- /dev/null +++ b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md @@ -0,0 +1,25 @@ +--- +title: "Mastering the Move: EKS to AKS by Example - Part 2" +description: "Learn how to replicate an Amazon Elastic Kubernetes Service (EKS) web application with AWS Web Application Firewall (WAF) using Azure Web Application Firewall (WAF) and Azure Application Gateway in Azure Kubernetes Service (AKS)" +date: 2024-08-01 +author: Kenneth Kilty +categories: general +--- + +## Introduction + +Welcome back to our series on migrating Amazon EKS workloads to Azure Kubernetes Service (AKS). In [Part 1](https://learn.microsoft.com/azure/aks/eks-edw-overview) we explored migrating and Event Driven Workload using Karpenter and KEDA from EKS to AKS. Next, we look into a more complex migration scenario with a common Kubernetes workload the [n-tier web application](https://learn.microsoft.com/azure/architecture/guide/architecture-styles/n-tier). + +## EKS to AKS - Web Application Scenario + +This new [article](https://learn.microsoft.com/azure/aks/eks-web-overview) guides you through replicating an Amazon Elastic Kubernetes Service (EKS) web application with AWS Web Application Firewall (WAF) using Azure Web Application Firewall (WAF) and Azure Application Gateway in Azure Kubernetes Service (AKS). This sample uses a WAF to protect a [Yelb](https://github.com/mreferre/yelb/) web-based application running in a Kubernetes cluster. + +In this guide, we explore the deployment process, starting with understanding the conceptual differences between EKS and AKS for the web application workload infrastructure. We then move on to architecting the workload for Azure, updating the app code for compatibility with Azure APIs, and preparing for deployment using the Azure CLI. Finally, we deploy the replicated workload in AKS and test it to ensure it functions as expected. + +The guide also includs detailed AWS service by Azure service discussion and details alternative solutions for managing ingress including [Application Gateway Ingress Controller (AGIC)](https://learn.microsoft.com/azure/application-gateway/ingress-controller-overview), [Azure Application Gateway for Containers](https://learn.microsoft.com/azure/application-gateway/for-containers/overview), [Azure Front Door (AFD)](https://learn.microsoft.com/azure/frontdoor/front-door-overview), and a [NGINX ingress controller](https://github.com/kubernetes/ingress-nginx) with end-to-end TLS configured using [Azure Key Vault](https://learn.microsoft.com/azure/key-vault/general/basic-concepts). + +## Looking Forward + +Our next article will explore migrating an EKS AI/ML workload to AKS. We'll look at migration challenges common with AI/ML workloads like cost optimization, efficient scaling, and GPU usage. + +As always, we are interested to hear about the migration challenges and scenarios you encounter, so we can continue to enhance the features and documentation for AKS to ease the transition from on-premises or other clouds to Azure. Please share your ideas using one of the contact methods below. From 159952ca6c370350a458f33e8b886ec009ed249c Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Mon, 6 Jan 2025 16:24:01 -0500 Subject: [PATCH 2/7] remove .vscode artifacts --- .gitignore | 1 + .vscode/ltex.dictionary.en-US.txt | 2 -- .vscode/ltex.hiddenFalsePositives.en-US.txt | 1 - .vscode/settings.json | 11 ----------- 4 files changed, 1 insertion(+), 14 deletions(-) delete mode 100644 .vscode/ltex.dictionary.en-US.txt delete mode 100644 .vscode/ltex.hiddenFalsePositives.en-US.txt delete mode 100755 .vscode/settings.json diff --git a/.gitignore b/.gitignore index e43b0f98..2608ec26 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .DS_Store +.vscode \ No newline at end of file diff --git a/.vscode/ltex.dictionary.en-US.txt b/.vscode/ltex.dictionary.en-US.txt deleted file mode 100644 index 1cc2feda..00000000 --- a/.vscode/ltex.dictionary.en-US.txt +++ /dev/null @@ -1,2 +0,0 @@ -WAF -EKS diff --git a/.vscode/ltex.hiddenFalsePositives.en-US.txt b/.vscode/ltex.hiddenFalsePositives.en-US.txt deleted file mode 100644 index 771ec59b..00000000 --- a/.vscode/ltex.hiddenFalsePositives.en-US.txt +++ /dev/null @@ -1 +0,0 @@ -{"rule":"MORFOLOGIK_RULE_EN_US","sentence":"^\\QThis sample uses a WAF to protect a Yelb web-based application running in a Kubernetes cluster.\\E$"} diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100755 index cb720b7f..00000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "markdownlint.config": { - "MD028": false, - "MD025": { - "front_matter_title": "" - } - }, - "githubPullRequests.ignoredPullRequestBranches": [ - "master" - ] -} \ No newline at end of file From 36a7fd67b0fe345b7f04c8576aab2ac64b6d0438 Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Mon, 6 Jan 2025 16:54:36 -0500 Subject: [PATCH 3/7] spelling correction --- blog/_posts/2025-01-06-eks-to-aks-series-part2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md index 30bb2fe5..e3daabca 100644 --- a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md +++ b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md @@ -16,7 +16,7 @@ This new [article](https://learn.microsoft.com/azure/aks/eks-web-overview) guide In this guide, we explore the deployment process, starting with understanding the conceptual differences between EKS and AKS for the web application workload infrastructure. We then move on to architecting the workload for Azure, updating the app code for compatibility with Azure APIs, and preparing for deployment using the Azure CLI. Finally, we deploy the replicated workload in AKS and test it to ensure it functions as expected. -The guide also includs detailed AWS service by Azure service discussion and details alternative solutions for managing ingress including [Application Gateway Ingress Controller (AGIC)](https://learn.microsoft.com/azure/application-gateway/ingress-controller-overview), [Azure Application Gateway for Containers](https://learn.microsoft.com/azure/application-gateway/for-containers/overview), [Azure Front Door (AFD)](https://learn.microsoft.com/azure/frontdoor/front-door-overview), and a [NGINX ingress controller](https://github.com/kubernetes/ingress-nginx) with end-to-end TLS configured using [Azure Key Vault](https://learn.microsoft.com/azure/key-vault/general/basic-concepts). +The guide also include detailed AWS service by Azure service discussion and details alternative solutions for managing ingress including [Application Gateway Ingress Controller (AGIC)](https://learn.microsoft.com/azure/application-gateway/ingress-controller-overview), [Azure Application Gateway for Containers](https://learn.microsoft.com/azure/application-gateway/for-containers/overview), [Azure Front Door (AFD)](https://learn.microsoft.com/azure/frontdoor/front-door-overview), and a [NGINX ingress controller](https://github.com/kubernetes/ingress-nginx) with end-to-end TLS configured using [Azure Key Vault](https://learn.microsoft.com/azure/key-vault/general/basic-concepts). ## Looking Forward From 99a41e527a6fe81b71ea84a8a5a960b3dd57a713 Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Mon, 6 Jan 2025 17:18:45 -0500 Subject: [PATCH 4/7] updated blog publish date --- blog/_posts/2025-01-06-eks-to-aks-series-part2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md index e3daabca..00ec8b79 100644 --- a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md +++ b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md @@ -1,7 +1,7 @@ --- title: "Mastering the Move: EKS to AKS by Example - Part 2" description: "Learn how to replicate an Amazon Elastic Kubernetes Service (EKS) web application with AWS Web Application Firewall (WAF) using Azure Web Application Firewall (WAF) and Azure Application Gateway in Azure Kubernetes Service (AKS)" -date: 2024-08-01 +date: 2025-01-06 author: Kenneth Kilty categories: general --- From 58e95330b2a8bd32dd59a17f0cb9378bd2f0b553 Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Tue, 7 Jan 2025 15:12:11 -0500 Subject: [PATCH 5/7] removed settings.json --- blog/_posts/2025-01-13-ray-on-aks.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 blog/_posts/2025-01-13-ray-on-aks.md diff --git a/blog/_posts/2025-01-13-ray-on-aks.md b/blog/_posts/2025-01-13-ray-on-aks.md new file mode 100644 index 00000000..12f49887 --- /dev/null +++ b/blog/_posts/2025-01-13-ray-on-aks.md @@ -0,0 +1,23 @@ +--- +title: "Ray on AKS" +description: "" +date: 2025-01-13 +author: Kenneth Kilty +categories: ai +--- + +We've released new guidance for running Ray on AKS! + +## Open Source Ray on AKS + +Ray is an open-source project developed at UC Berkeley's RISE Lab that provides a unified framework for scaling AI and Python applications. It consists of a core distributed runtime and a set of AI libraries designed to accelerate machine learning workloads. Ray may be run on Kubernetes via the KubeRay operator which simplifies the process of deploying and managing Ray clusters on Kubernetes. + +Check out our new guide, "[Deploy a Ray cluster on Azure Kubernetes Service (AKS)](https://learn.microsoft.com/azure/aks/ray-overview)," which walks you through deploying the necessary AKS infrastructure using Terraform to support a Ray cluster. This guide also includes a sample CPU-based project that demonstrates distributed training of a PyTorch model on Fashion MNIST with Ray Train on AKS. + +## RayTurbo by Anyscale on AKS + +For customers requiring commercial support, [RayTurbo](https://www.anyscale.com/product/platform/rayturbo) by [Anyscale](https://www.anyscale.com/) is supported by Anyscale on Azure Kubernetes Service (AKS). As a [launch partner](https://www.anyscale.com/blog/announcing-Anyscale-on-kubernetes-k8s), AKS is compatible with the [Anyscale Operator for Kubernetes](https://docs.anyscale.com/administration/cloud-deployment/kubernetes/), providing support by Anyscale for your AI workloads on AKS. + +Ray is the AI Compute Engine powering workloads with leading performance. RayTurbo, Anyscale's optimized Ray engine, delivers better performance, scale, reliability, and efficiency for AI workloads. + +We look forward to seeing what amazing Ray and RayTurbo workloads you run on AKS! From 896fcb928937c3906a40e406817dc722a8426981 Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Tue, 7 Jan 2025 15:21:36 -0500 Subject: [PATCH 6/7] added Ray and RayTurbo blog --- blog/_posts/2025-01-13-ray-on-aks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/_posts/2025-01-13-ray-on-aks.md b/blog/_posts/2025-01-13-ray-on-aks.md index 12f49887..699ed3a8 100644 --- a/blog/_posts/2025-01-13-ray-on-aks.md +++ b/blog/_posts/2025-01-13-ray-on-aks.md @@ -16,7 +16,7 @@ Check out our new guide, "[Deploy a Ray cluster on Azure Kubernetes Service (AKS ## RayTurbo by Anyscale on AKS -For customers requiring commercial support, [RayTurbo](https://www.anyscale.com/product/platform/rayturbo) by [Anyscale](https://www.anyscale.com/) is supported by Anyscale on Azure Kubernetes Service (AKS). As a [launch partner](https://www.anyscale.com/blog/announcing-Anyscale-on-kubernetes-k8s), AKS is compatible with the [Anyscale Operator for Kubernetes](https://docs.anyscale.com/administration/cloud-deployment/kubernetes/), providing support by Anyscale for your AI workloads on AKS. +For customers requiring commercial support, [RayTurbo](https://www.anyscale.com/product/platform/rayturbo) by [Anyscale](https://www.anyscale.com/) is supported on Azure Kubernetes Service (AKS). For more information regarding RayTurbo on AKS, reach out [directly to AnyScale](https://www.anyscale.com/book/demo?utm_source=azure&utm_medium=blog&utm_campaign=aks_rayturbo_blog). Ray is the AI Compute Engine powering workloads with leading performance. RayTurbo, Anyscale's optimized Ray engine, delivers better performance, scale, reliability, and efficiency for AI workloads. From 25dfeb21fa9191426c01951e51fd8a6b32ed48aa Mon Sep 17 00:00:00 2001 From: Kenneth Kilty Date: Wed, 8 Jan 2025 09:59:45 -0500 Subject: [PATCH 7/7] updates to link and casing --- blog/_posts/2025-01-06-eks-to-aks-series-part2.md | 2 +- blog/_posts/2025-01-13-ray-on-aks.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md index 00ec8b79..938eb0c7 100644 --- a/blog/_posts/2025-01-06-eks-to-aks-series-part2.md +++ b/blog/_posts/2025-01-06-eks-to-aks-series-part2.md @@ -8,7 +8,7 @@ categories: general ## Introduction -Welcome back to our series on migrating Amazon EKS workloads to Azure Kubernetes Service (AKS). In [Part 1](https://learn.microsoft.com/azure/aks/eks-edw-overview) we explored migrating and Event Driven Workload using Karpenter and KEDA from EKS to AKS. Next, we look into a more complex migration scenario with a common Kubernetes workload the [n-tier web application](https://learn.microsoft.com/azure/architecture/guide/architecture-styles/n-tier). +Welcome back to our series on migrating Amazon EKS workloads to Azure Kubernetes Service (AKS). In [Part 1](https://azure.github.io/AKS/2024/08/01/eks-to-aks-series-part1) we explored migrating and Event Driven Workload using Karpenter and KEDA from EKS to AKS. Next, we look into a more complex migration scenario with a common Kubernetes workload the [n-tier web application](https://learn.microsoft.com/azure/architecture/guide/architecture-styles/n-tier). ## EKS to AKS - Web Application Scenario diff --git a/blog/_posts/2025-01-13-ray-on-aks.md b/blog/_posts/2025-01-13-ray-on-aks.md index 699ed3a8..94a93c51 100644 --- a/blog/_posts/2025-01-13-ray-on-aks.md +++ b/blog/_posts/2025-01-13-ray-on-aks.md @@ -16,7 +16,7 @@ Check out our new guide, "[Deploy a Ray cluster on Azure Kubernetes Service (AKS ## RayTurbo by Anyscale on AKS -For customers requiring commercial support, [RayTurbo](https://www.anyscale.com/product/platform/rayturbo) by [Anyscale](https://www.anyscale.com/) is supported on Azure Kubernetes Service (AKS). For more information regarding RayTurbo on AKS, reach out [directly to AnyScale](https://www.anyscale.com/book/demo?utm_source=azure&utm_medium=blog&utm_campaign=aks_rayturbo_blog). +For customers requiring commercial support, [RayTurbo](https://www.anyscale.com/product/platform/rayturbo) by [Anyscale](https://www.anyscale.com/) is supported on Azure Kubernetes Service (AKS). For more information regarding RayTurbo on AKS, reach out [directly to Anyscale](https://www.anyscale.com/book/demo?utm_source=azure&utm_medium=blog&utm_campaign=aks_rayturbo_blog). Ray is the AI Compute Engine powering workloads with leading performance. RayTurbo, Anyscale's optimized Ray engine, delivers better performance, scale, reliability, and efficiency for AI workloads.