diff --git a/drops/arc_video_indexer.json b/drops/arc_video_indexer.json index 0499cdd5..6f9b5f48 100644 --- a/drops/arc_video_indexer.json +++ b/drops/arc_video_indexer.json @@ -30,8 +30,8 @@ "Video Indexer", "Azure Container Storage enabled by Azure Arc" ], - "LastModified": "2024-08-08T12:10:43.511Z", - "CreatedDate": "2024-08-08T12:10:43.511Z", + "LastModified": "2025-07-03T12:10:43.511Z", + "CreatedDate": "2024-07-03T12:10:43.511Z", "Topics": [ "VI", "AI", diff --git a/drops/azure_edge_extensions_aio_iac_terraform.json b/drops/azure_edge_extensions_aio_iac_terraform.json index 1466b206..24a7c981 100644 --- a/drops/azure_edge_extensions_aio_iac_terraform.json +++ b/drops/azure_edge_extensions_aio_iac_terraform.json @@ -13,7 +13,7 @@ "Link": "https://github.com/bindsi" } ], - "Source": "https://github.com/Azure-Samples/azure-edge-extensions-aio-iac-terraform", + "Source": "https://github.com/Azure-Samples/azure-edge-extensions-aio-iac-terraform/blob/main", "Type": "script_automation", "Difficulty": "Medium", "ProgrammingLanguage": [ diff --git a/drops/azure_edge_extensions_polyglotnotebook_aio.json b/drops/azure_edge_extensions_polyglotnotebook_aio.json index c825fc14..468d37a1 100644 --- a/drops/azure_edge_extensions_polyglotnotebook_aio.json +++ b/drops/azure_edge_extensions_polyglotnotebook_aio.json @@ -13,7 +13,7 @@ "Link": "https://github.com/bindsi" } ], - "Source": "https://github.com/Azure-Samples/azure-edge-extensions-polyglotnotebook-aio", + "Source": "https://github.com/Azure-Samples/azure-edge-extensions-polyglotnotebook-aio/blob/main", "Type": "sample_app", "Difficulty": "Medium", "ProgrammingLanguage": [ diff --git a/drops/nvidia_omniverse_azure_operations_twin.json b/drops/nvidia_omniverse_azure_operations_twin.json index 08ab21a3..f21f8dab 100644 --- a/drops/nvidia_omniverse_azure_operations_twin.json +++ b/drops/nvidia_omniverse_azure_operations_twin.json @@ -21,7 +21,7 @@ "Link": "https://www.linkedin.com/in/rajesh-vasireddy-73551217/" } ], - "Source": "https://github.com/microsoft/NVIDIA-Omniverse-Azure-Operations-Twin", + "Source": "https://github.com/microsoft/NVIDIA-Omniverse-Azure-Operations-Twin/blob/main", "Type": "sample_app", "Difficulty": "Medium", "ProgrammingLanguage": [ diff --git a/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/README.md b/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/README.md index dc90fe5e..26d017a6 100644 --- a/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/README.md +++ b/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/README.md @@ -29,18 +29,18 @@ Use the following table to determine the values to be used in the export block b |Variable | Required Parameter | Example | |----------------|----------------------------------------------------------------|-----------------| -|YOUR-REGION | Azure Region you wish to deploy in | eastus | -|YOUR-RESOURCE-GROUP | The Resource Group you created with the storage account in it | myResourceGroup | -|YOUR-SUBSCRIPTION | The Azure Subscription ID you are using | nnnn-nnnnnnn-nnn| -|YOUR-CLUSTER-NAME | The name you would like your ARC cluster to be called in Azure | myArcClusterName| -|YOUR-STORAGEACCOUNT | The name of the storage account you created | myStorageAccount| +|REGION | Azure Region you wish to deploy in | eastus | +|RESOURCE_GROUP | The Resource Group you created with the storage account in it | myResourceGroup | +|SUBSCRIPTION | The Azure Subscription ID you are using | nnnn-nnnnnnn-nnn| +|ARCNAME | The name you would like your ARC cluster to be called in Azure | myArcClusterName| +|STORAGEACCOUNT | The name of the storage account you created | myStorageAccount| ```bash -export YOUR-REGION="eastus" -export YOUR-RESOURCE-GROUP="myResourceGroup" -export YOUR-SUBSCRIPTION="your-subscription-id-here" -export YOUR-CLUSTER-NAME="myArcClusterName" -export YOUR-STORAGEACCOUNT="myStorageAccountName" +export REGION="eastus" +export RESOURCE_GROUP="myResourceGroup" +export SUBSCRIPTION="your-subscription-id-here" +export ARCNAME="myArcClusterName" +export STORAGEACCOUNT="myStorageAccountName" ``` ### Apply inotify.max_user_instance increase @@ -55,26 +55,26 @@ sudo sysctl -p ### Arc Connect Kubernetes ```bash -az connectedk8s connect -n ${YOUR-CLUSTER-NAME} -l ${YOUR-REGION} -g ${YOUR-RESOURCE-GROUP} --subscription ${YOUR-SUBSCRIPTION} +az connectedk8s connect -n ${ARCNAME} -l ${REGION} -g ${RESOURCE_GROUP} --subscription ${SUBSCRIPTION} ``` ### Install package for certificate management ```bash -az k8s-extension create --cluster-name "${YOUR-CLUSTER-NAME}" --name "${YOUR-CLUSTER-NAME}-certmgr" --resource-group "${YOUR-RESOURCE-GROUP}" --cluster-type connectedClusters --release-train preview --extension-type microsoft.iotoperations.platform --scope cluster --release-namespace cert-manager +az k8s-extension create --cluster-name "${ARCNAME}" --name "${ARCNAME}-certmgr" --resource-group "${RESOURCE_GROUP}" --cluster-type connectedClusters --release-train preview --extension-type microsoft.iotoperations.platform --scope cluster --release-namespace cert-manager ``` ### Install Azure Container Storage enabled by Azure Arc Extension with Config CRD creation ```bash -az k8s-extension create --resource-group "${YOUR-RESOURCE-GROUP}" --cluster-name "${YOUR-CLUSTER-NAME}" --cluster-type connectedClusters --name "acsa-`mktemp -u XXXXXX`" --extension-type microsoft.arc.containerstorage --config feature.diskStorageClass="default,local-path" --config edgeStorageConfiguration.create=true +az k8s-extension create --resource-group "${RESOURCE_GROUP}" --cluster-name "${ARCNAME}" --cluster-type connectedClusters --name "acsa-`mktemp -u XXXXXX`" --extension-type microsoft.arc.containerstorage --config feature.diskStorageClass="default,local-path" --config edgeStorageConfiguration.create=true ``` ### Assign role to storage account ```bash -export pid=`az k8s-extension list --cluster-name "${YOUR-CLUSTER-NAME}" --resource-group "${YOUR-RESOURCE-GROUP}" --cluster-type connectedClusters | jq --arg extType "microsoft.arc.containerstorage" 'map(select(.extensionType == $extType)) | .[] | .identity.principalId' -r` -az role assignment create --assignee $pid --role "Storage Blob Data Owner" --scope "/subscriptions/${YOUR-SUBSCRIPTION}/resourceGroups/${YOUR-RESOURCE-GROUP}/providers/Microsoft.Storage/storageAccounts/${YOUR-STORAGEACCOUNT}" +export pid=`az k8s-extension list --cluster-name "${ARCNAME}" --resource-group "${RESOURCE_GROUP}" --cluster-type connectedClusters | jq --arg extType "microsoft.arc.containerstorage" 'map(select(.extensionType == $extType)) | .[] | .identity.principalId' -r` +az role assignment create --assignee $pid --role "Storage Blob Data Owner" --scope "/subscriptions/${SUBSCRIPTION}/resourceGroups/${RESOURCE_GROUP}/providers/Microsoft.Storage/storageAccounts/${STORAGEACCOUNT}" ``` ### Configure ACSA with an SFTP Front End @@ -122,4 +122,4 @@ You'll have to enter your password here. ### Confirm your file is uploaded Finally, we can go to the Azure Portal and check our specified storage account container in our specified storage account. Our testfile1.txt should be there. -Note: Please keep in mind that we have set up this system with the default Ingest Policy, which waits 5 minutes after a file is written before it will upload it to the cloud. So if you don't see your file right away, just wait a few minutes. Policies can also be altered according to [these instructions](https://learn.microsoft.com/azure/azure-arc/container-storage/cloud-ingest-edge-volume-configuration?tabs=portal#optional-modify-the-ingestpolicy-from-the-default). +Note: Please keep in mind that we have set up this system with the default Ingest Policy, which waits 5 minutes after a file is written before it will upload it to the cloud. So if you don't see your file right away, just wait a few minutes. Policies can also be altered according to [these instructions](https://learn.microsoft.com/azure/azure-arc/container-storage/cloud-ingest-edge-volume-configuration?tabs=portal#optional-modify-the-ingestpolicy-from-the-default). \ No newline at end of file diff --git a/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/acsaedgevolarch.png b/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/acsaedgevolarch.png index 3cafd028..231b07d7 100644 Binary files a/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/acsaedgevolarch.png and b/script_automation/arc_edge_volumes_cloudsync_ubuntu_k3s_single_sftp/acsaedgevolarch.png differ