From cae22fb02335117816df644ffdcd277d0109091d Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Wed, 7 Aug 2024 17:32:07 -0400 Subject: [PATCH 1/8] remove nginx --- .../artifacts/DevOpsLogonScript.ps1 | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 index d41b6a9fbb..55de0c5070 100644 --- a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 +++ b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 @@ -288,18 +288,18 @@ foreach ($namespace in @('bookstore', 'bookbuyer', 'bookwarehouse')) { Write-Header "Applying GitOps Configs" -# Create GitOps config for NGINX Ingress Controller -Write-Host "Creating GitOps config for NGINX Ingress Controller" -az k8s-configuration flux create ` - --cluster-name $Env:k3sArcDataClusterName ` - --resource-group $Env:resourceGroup ` - --name config-nginx ` - --namespace $ingressNamespace ` - --cluster-type connectedClusters ` - --scope cluster ` - --url $appClonedRepo ` - --branch main --sync-interval 3s ` - --kustomization name=nginx path=./nginx/release +# # Create GitOps config for NGINX Ingress Controller +# Write-Host "Creating GitOps config for NGINX Ingress Controller" +# az k8s-configuration flux create ` +# --cluster-name $Env:k3sArcDataClusterName ` +# --resource-group $Env:resourceGroup ` +# --name config-nginx ` +# --namespace $ingressNamespace ` +# --cluster-type connectedClusters ` +# --scope cluster ` +# --url $appClonedRepo ` +# --branch main --sync-interval 3s ` +# --kustomization name=nginx path=./nginx/release # Create GitOps config for Bookstore application Write-Host "Creating GitOps config for Bookstore application" @@ -309,7 +309,7 @@ az k8s-configuration flux create ` --name config-bookstore ` --cluster-type connectedClusters ` --url $appClonedRepo ` - --branch arcbox_3.0 --sync-interval 3s ` + --branch "arcbox_3.0" --sync-interval 3s ` --kustomization name=bookstore path=./bookstore/yaml # Create GitOps config for Bookstore RBAC From 13235a683a38297fbc7df3c14b3f9d66f5a7e79a Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Wed, 7 Aug 2024 22:01:42 -0400 Subject: [PATCH 2/8] update k3s script output --- azure_jumpstart_arcbox/artifacts/installK3s.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/azure_jumpstart_arcbox/artifacts/installK3s.sh b/azure_jumpstart_arcbox/artifacts/installK3s.sh index 5dc316a06f..e60763d3aa 100644 --- a/azure_jumpstart_arcbox/artifacts/installK3s.sh +++ b/azure_jumpstart_arcbox/artifacts/installK3s.sh @@ -198,6 +198,7 @@ fi echo "" echo "Uploading the script logs to staging storage" echo "" +exec > /dev/tty 2>&1 # Redirecting output to terminal to upload logs to storage sleep 60 log="/home/$adminUsername/jumpstart_logs/installK3s-$vmName.log" storageContainerNameLower=$(echo $storageContainerName | tr '[:upper:]' '[:lower:]') From d48ef52a5754d68f3830895bb5860526c7790b47 Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Wed, 7 Aug 2024 22:13:12 -0400 Subject: [PATCH 3/8] update k3s script output --- azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 index 55de0c5070..7d4594c118 100644 --- a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 +++ b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 @@ -257,18 +257,12 @@ $kubeVipDaemonset | kubectl apply -f - kubectl create configmap -n kube-system kubevip --from-literal range-global=$lowestServiceIp-$highestServiceIp Start-Sleep -Seconds 30 - Write-Header "Creating longhorn storage on K3scluster" + Write-Header "Creating longhorn storage on $($cluster.clusterName)" kubectl apply -f "$Env:ArcBoxDir\longhorn.yaml" --kubeconfig $cluster.kubeConfig Start-Sleep -Seconds 30 Write-Host "`n" } -# # Longhorn setup for RWX-capable storage class -# Write-Header "Creating longhorn storage" -# kubectl apply -f "$Env:ArcBoxDir\longhorn.yaml" -# Start-Sleep -Seconds 30 - - # Create Kubernetes Namespaces Write-Header "Creating K8s Namespaces" foreach ($namespace in @('bookstore', 'bookbuyer', 'bookwarehouse', 'hello-arc', 'ingress-nginx')) { From c4dba9a191f0abdf1381f61847ff1030ae3d8114 Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Wed, 7 Aug 2024 22:24:38 -0400 Subject: [PATCH 4/8] Fix kubeconfig for k3s arc data cluster --- azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 index 7d4594c118..69cac609b1 100644 --- a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 +++ b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 @@ -263,6 +263,9 @@ $kubeVipDaemonset | kubectl apply -f - Write-Host "`n" } +# Set the KUBECONFIG environment variable to the K3s Arc Data Cluster +$Env:KUBECONFIG="C:\Users\$Env:adminUsername\.kube\config" + # Create Kubernetes Namespaces Write-Header "Creating K8s Namespaces" foreach ($namespace in @('bookstore', 'bookbuyer', 'bookwarehouse', 'hello-arc', 'ingress-nginx')) { @@ -275,7 +278,6 @@ foreach ($namespace in @('bookstore', 'bookbuyer', 'bookwarehouse')) { kubectl label namespace $namespace istio-injection=enabled } - ############################# # - Apply GitOps Configs ############################# From 6015ee5eaa4d4153658edadce06a30f7a2965d32 Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Wed, 7 Aug 2024 22:55:35 -0400 Subject: [PATCH 5/8] add condition to kubeconfig --- azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 index 69cac609b1..493b577c4a 100644 --- a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 +++ b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 @@ -263,8 +263,12 @@ $kubeVipDaemonset | kubectl apply -f - Write-Host "`n" } -# Set the KUBECONFIG environment variable to the K3s Arc Data Cluster -$Env:KUBECONFIG="C:\Users\$Env:adminUsername\.kube\config" +foreach ($cluster in $clusters) { + if ($cluster.context -like '*-datasvc-k3s') { + $Env:KUBECONFIG=$cluster.kubeConfig + kubectx + } +} # Create Kubernetes Namespaces Write-Header "Creating K8s Namespaces" From a108425fe9a86fb92b3ee4e2a2fdc3a503cb1f3d Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Wed, 7 Aug 2024 23:34:44 -0400 Subject: [PATCH 6/8] update gitops config --- azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 index 493b577c4a..3e40202cdd 100644 --- a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 +++ b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 @@ -309,7 +309,7 @@ az k8s-configuration flux create ` --name config-bookstore ` --cluster-type connectedClusters ` --url $appClonedRepo ` - --branch "arcbox_3.0" --sync-interval 3s ` + --branch arcbox_3.0 --sync-interval 3s ` --kustomization name=bookstore path=./bookstore/yaml # Create GitOps config for Bookstore RBAC @@ -322,7 +322,7 @@ az k8s-configuration flux create ` --scope namespace ` --namespace bookstore ` --url $appClonedRepo ` - --branch main--sync-interval 3s ` + --branch main --sync-interval 3s ` --kustomization name=bookstore path=./bookstore/rbac-sample # Create GitOps config for Hello-Arc application From b8cc2d92a29b1d9ab6588d295cfb4e8778a020fd Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Thu, 8 Aug 2024 00:48:04 -0400 Subject: [PATCH 7/8] restore orginal stdout --- azure_jumpstart_arcbox/artifacts/installK3s.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/azure_jumpstart_arcbox/artifacts/installK3s.sh b/azure_jumpstart_arcbox/artifacts/installK3s.sh index e60763d3aa..78d8b87d73 100644 --- a/azure_jumpstart_arcbox/artifacts/installK3s.sh +++ b/azure_jumpstart_arcbox/artifacts/installK3s.sh @@ -29,6 +29,9 @@ sed -i '10s/^/export k3sControlPlane=/' vars.sh export vmName=$3 +# Save the original stdout and stderr +exec 3>&1 4>&2 + exec >installK3s-${vmName}.log exec 2>&1 @@ -198,7 +201,9 @@ fi echo "" echo "Uploading the script logs to staging storage" echo "" -exec > /dev/tty 2>&1 # Redirecting output to terminal to upload logs to storage +# Restore the original stdout and stderr +exec 1>&3 2>&4 # Further commands will now output to the original stdout and stderr and not the log file + sleep 60 log="/home/$adminUsername/jumpstart_logs/installK3s-$vmName.log" storageContainerNameLower=$(echo $storageContainerName | tr '[:upper:]' '[:lower:]') From 04878bdb18bee284f48313c1025115d3135048f3 Mon Sep 17 00:00:00 2001 From: Zaid Mohammad Date: Thu, 8 Aug 2024 01:15:14 -0400 Subject: [PATCH 8/8] uncomment ingress --- .../artifacts/DevOpsLogonScript.ps1 | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 index 3e40202cdd..7f15d1fc5a 100644 --- a/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 +++ b/azure_jumpstart_arcbox/artifacts/DevOpsLogonScript.ps1 @@ -288,18 +288,18 @@ foreach ($namespace in @('bookstore', 'bookbuyer', 'bookwarehouse')) { Write-Header "Applying GitOps Configs" -# # Create GitOps config for NGINX Ingress Controller -# Write-Host "Creating GitOps config for NGINX Ingress Controller" -# az k8s-configuration flux create ` -# --cluster-name $Env:k3sArcDataClusterName ` -# --resource-group $Env:resourceGroup ` -# --name config-nginx ` -# --namespace $ingressNamespace ` -# --cluster-type connectedClusters ` -# --scope cluster ` -# --url $appClonedRepo ` -# --branch main --sync-interval 3s ` -# --kustomization name=nginx path=./nginx/release +# Create GitOps config for NGINX Ingress Controller +Write-Host "Creating GitOps config for NGINX Ingress Controller" +az k8s-configuration flux create ` + --cluster-name $Env:k3sArcDataClusterName ` + --resource-group $Env:resourceGroup ` + --name config-nginx ` + --namespace $ingressNamespace ` + --cluster-type connectedClusters ` + --scope cluster ` + --url $appClonedRepo ` + --branch main --sync-interval 3s ` + --kustomization name=nginx path=./nginx/release # Create GitOps config for Bookstore application Write-Host "Creating GitOps config for Bookstore application"