Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/aml managed vnet #43

Open
wants to merge 144 commits into
base: main
Choose a base branch
from
Open

Conversation

yogitasrivastava
Copy link

Add automation for managed-vnet AML workspace (allow internet outbound) to Azure recipes

  • ...

Does this introduce a breaking change?

[ ] Yes
[x ] No

Pull Request Type

What kind of change does this Pull Request introduce?

[ ] Bugfix
[x ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

  • Get the code
git clone [repo-address]
cd [repo-name]
git checkout [branch-name]
npm install
  • Test the code
Please follow the test instructions in the Readme.md for test cases.

What to Check

Verify that the following are valid

  • ...

Other Information

Please follow the Readme.md to install the code for automation.

Copy link
Contributor

@promisinganuj promisinganuj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More to come!

src/az-aml-managed-vnet/README.md Outdated Show resolved Hide resolved
src/az-aml-managed-vnet/README.md Outdated Show resolved Hide resolved
src/az-aml-managed-vnet/README.md Outdated Show resolved Hide resolved
src/az-aml-managed-vnet/README.md Outdated Show resolved Hide resolved
### Architecture

<!-- Include a high-level architecture diagram of the components used in this recipe. -->
![architecture](./media/AML_ManagedVNet_Secure_Architecture.png)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest removing the Azure services if they are not deployed as part of the recipe.

Also, suggest using a different font "helvetica" or "tahoma" for the text.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest providing a brief description (few paragraphs) of what's happening in this architecture diagram.

In addition to adding a private endpoint for the AML workspace, a private endpoint should be created for the AML dependant resources such as Azure Blob Storage and Key Vault inside your chosen VNet to enable connectivity to these resources.

### Testing Solution
To test Azure Machine Learning (AML) end-to-end, you can follow these steps using the **AzureML in a day notebook** from the **Samples** folder within the Notebooks section of Azure Machine Learning:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where is the notebook? If it's just one notebook, I suggest copying it in the repo and add reference to it. That way, user doesn't have to go to another repo.

Having said that, please feel free to add link to the "AML rep" for reference.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oloomi Can you pls have a look?


In addition to adding a private endpoint for the AML workspace, a private endpoint should be created for the AML dependant resources such as Azure Blob Storage and Key Vault inside your chosen VNet to enable connectivity to these resources.

### Testing Solution
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general, please following the markdown linting rules. For example, leaving spaces before and after the headers. "markdownlint" VS Code extension can help with this.

### Testing Solution
To test Azure Machine Learning (AML) end-to-end, you can follow these steps using the **AzureML in a day notebook** from the **Samples** folder within the Notebooks section of Azure Machine Learning:
- Create a Compute Instance:
- On the left navigation, select Compute and then Compute Instance. Create a new compute instance and supply a name. Keep all the defaults, expect under networking select No Public IP. Select Review & Create and wait for the deployment to be completed.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a GIF image to show this?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oloomi can you please have a look?

name = "sa${random_string.sa_prefix.result}${var.environment}"
location = azurerm_resource_group.default.location
resource_group_name = azurerm_resource_group.default.name
account_tier = "Standard"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any particular reason for not deploying "ADLS Gen2" account? (is_hns_enabled=true).

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oloomi can you look into it?

- Sign in to the Azure Machine Learning studio.
- Navigate to Notebooks and select the Samples tab.
- Look for the AzureML in a day notebook.
- Open the notebook and clikc on 'Clone' to create a copy in your workspace file share.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am getting the following error:

image

I have already created "blob" PE for the storage account and AKV in the customer VNet.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oloomi can you pls have a look?

@promisinganuj
Copy link
Contributor

promisinganuj commented May 6, 2024

Hi @yogitasrivastava / @oloomi / @RenSilvaAU ,

Overall, this is looking really good. Well done!

The recipes in this repo also deploys the "customer VNet" and that's missing from this sample. Suggest you add the following Azure resources:

  • A customer VNet.
  • Private Endpoint from storage account to this VNet.
  • Private Endpoint from key vault to this VNet.
  • Private Endpoint from AML workspace to this VNet.
  • Grant get/set access policy on AKV to the deployer.
  • You would also need to create private DNS Zones for storage, key vault, and AML workspace.

@promisinganuj
Copy link
Contributor

Hi @yogitasrivastava / @oloomi / @RenSilvaAU ,

Overall, this is looking really good. Well done!

The recipes in this repo also deploys the "customer VNet" and that's missing from this sample. Suggest you add the following Azure resources:

  • A customer VNet.
  • Private Endpoint from storage account to this VNet.
  • Private Endpoint from key vault to this VNet.
  • Private Endpoint from AML workspace to this VNet.
  • Grant get/set access policy on AKV to the deployer.
  • You would also need to create private DNS Zones for storage, key vault, and AML workspace.

Refer https://github.com/Azure-Samples/virtual-network-integration-recipes/pull/27/files?short_path=64a62a4#diff-64a62a4611883e924d833faeb925f4339bb201c9a3b2df284c1446b9db30f94b for additional guidance. Happy to chat about the details.

yogitasrivastava and others added 17 commits July 31, 2024 16:35
Addressed first comment in review
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
Co-authored-by: Anuj Parashar <promisinganuj@gmail.com>
@mluker
Copy link
Member

mluker commented Dec 10, 2024

@yogitasrivastava @oloomi This PR has been stale for a while and has a few unresolved comments. Are we still looking to get this merged in?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants