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

[AKS] az aks: Support IP-based Load Balancer and Instance Level Public IP Tags #27910

Merged
merged 6 commits into from
Dec 11, 2023

Conversation

nilo19
Copy link
Member

@nilo19 nilo19 commented Nov 24, 2023

Related command

az aks create --load-balancer-backend-pool-type {nodeIPConfiguration|nodeIP}
az aks update --load-balancer-backend-pool-type {nodeIPConfiguration|nodeIP}
az aks create --enable-node-public-ip --node-public-ip-tags
az aks nodepool add --enable-node-public-ip --node-public-ip-tags

Description

Support the above commands. Ref: Azure/azure-cli-extensions#5536 and Azure/azure-cli-extensions#5355

Testing Guide

# create a cluster with load balancer backend pool type
az aks create --load-balancer-backend-pool-type {nodeIPConfiguration|nodeIP}
# update a cluster with load balancer backend pool type
az aks update --load-balancer-backend-pool-type {nodeIPConfiguration|nodeIP}
# create a cluster with node public ip tags
az aks create --enable-node-public-ip --node-public-ip-tags RoutingPreference=Internet
# create an agent pool with node public ip tags
az aks nodepool add --enable-node-public-ip --node-public-ip-tags RoutingPreference=Internet

History Notes

[AKS] az aks create/update: Add new parameter --load-balancer-backend-pool-type to define the Load Balancer backend pool type of managed inbound backend pool
[AKS] az aks create: Add parameter --node-public-ip-tags to specify the ipTags of the node public IPs
[AKS] az aks nodepool: Add parameter --node-public-ip-tags to specify the ipTags of the node public IPs


This checklist is used to make sure that common guidelines for a pull request are followed.

Copy link

azure-client-tools-bot-prd bot commented Nov 24, 2023

️✔️AzureCLI-FullTest
️✔️acr
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️acs
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️advisor
️✔️latest
️✔️3.11
️✔️3.9
️✔️ams
️✔️latest
️✔️3.11
️✔️3.9
️✔️apim
️✔️latest
️✔️3.11
️✔️3.9
️✔️appconfig
️✔️latest
️✔️3.11
️✔️3.9
️✔️appservice
️✔️latest
️✔️3.11
️✔️3.9
️✔️aro
️✔️latest
️✔️3.11
️✔️3.9
️✔️backup
️✔️latest
️✔️3.11
️✔️3.9
️✔️batch
️✔️latest
️✔️3.11
️✔️3.9
️✔️batchai
️✔️latest
️✔️3.11
️✔️3.9
️✔️billing
️✔️latest
️✔️3.11
️✔️3.9
️✔️botservice
️✔️latest
️✔️3.11
️✔️3.9
️✔️cdn
️✔️latest
️✔️3.11
️✔️3.9
️✔️cloud
️✔️latest
️✔️3.11
️✔️3.9
️✔️cognitiveservices
️✔️latest
️✔️3.11
️✔️3.9
️✔️config
️✔️latest
️✔️3.11
️✔️3.9
️✔️configure
️✔️latest
️✔️3.11
️✔️3.9
️✔️consumption
️✔️latest
️✔️3.11
️✔️3.9
️✔️container
️✔️latest
️✔️3.11
️✔️3.9
️✔️containerapp
️✔️latest
️✔️3.11
️✔️3.9
️✔️core
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️cosmosdb
️✔️latest
️✔️3.11
️✔️3.9
️✔️databoxedge
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️dla
️✔️latest
️✔️3.11
️✔️3.9
️✔️dls
️✔️latest
️✔️3.11
️✔️3.9
️✔️dms
️✔️latest
️✔️3.11
️✔️3.9
️✔️eventgrid
️✔️latest
️✔️3.11
️✔️3.9
️✔️eventhubs
️✔️latest
️✔️3.11
️✔️3.9
️✔️feedback
️✔️latest
️✔️3.11
️✔️3.9
️✔️find
️✔️latest
️✔️3.11
️✔️3.9
️✔️hdinsight
️✔️latest
️✔️3.11
️✔️3.9
️✔️identity
️✔️latest
️✔️3.11
️✔️3.9
️✔️iot
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️keyvault
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️kusto
️✔️latest
️✔️3.11
️✔️3.9
️✔️lab
️✔️latest
️✔️3.11
️✔️3.9
️✔️managedservices
️✔️latest
️✔️3.11
️✔️3.9
️✔️maps
️✔️latest
️✔️3.11
️✔️3.9
️✔️marketplaceordering
️✔️latest
️✔️3.11
️✔️3.9
️✔️monitor
️✔️latest
️✔️3.11
️✔️3.9
️✔️mysql
️✔️latest
️✔️3.11
️✔️3.9
️✔️netappfiles
️✔️latest
️✔️3.11
️✔️3.9
️✔️network
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️policyinsights
️✔️latest
️✔️3.11
️✔️3.9
️✔️privatedns
️✔️latest
️✔️3.11
️✔️3.9
️✔️profile
️✔️latest
️✔️3.11
️✔️3.9
️✔️rdbms
️✔️latest
️✔️3.11
️✔️3.9
️✔️redis
️✔️latest
️✔️3.11
️✔️3.9
️✔️relay
️✔️latest
️✔️3.11
️✔️3.9
️✔️resource
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️role
️✔️latest
️✔️3.11
️✔️3.9
️✔️search
️✔️latest
️✔️3.11
️✔️3.9
️✔️security
️✔️latest
️✔️3.11
️✔️3.9
️✔️servicebus
️✔️latest
️✔️3.11
️✔️3.9
️✔️serviceconnector
️✔️latest
️✔️3.11
️✔️3.9
️✔️servicefabric
️✔️latest
️✔️3.11
️✔️3.9
️✔️signalr
️✔️latest
️✔️3.11
️✔️3.9
️✔️sql
️✔️latest
️✔️3.11
️✔️3.9
️✔️sqlvm
️✔️latest
️✔️3.11
️✔️3.9
️✔️storage
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️synapse
️✔️latest
️✔️3.11
️✔️3.9
️✔️telemetry
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️util
️✔️latest
️✔️3.11
️✔️3.9
️✔️vm
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9

Copy link

Hi @nilo19,
Since the current milestone time is less than 7 days, this pr will be reviewed in the next milestone.

Copy link

azure-client-tools-bot-prd bot commented Nov 24, 2023

❌AzureCLI-BreakingChangeTest
❌acs
rule cmd_name rule_message suggest_message
1010 - ParaPropUpdate aks nodepool add cmd aks nodepool add update parameter spot_max_price: updated property default from nan to nan please change property default from nan to nan for parameter spot_max_price of cmd aks nodepool add
⚠️ 1006 - ParaAdd aks create cmd aks create added parameter load_balancer_backend_pool_type
⚠️ 1006 - ParaAdd aks create cmd aks create added parameter node_public_ip_tags
⚠️ 1006 - ParaAdd aks nodepool add cmd aks nodepool add added parameter node_public_ip_tags
⚠️ 1006 - ParaAdd aks update cmd aks update added parameter load_balancer_backend_pool_type

@yonzhan
Copy link
Collaborator

yonzhan commented Nov 24, 2023

AKS

@microsoft-github-policy-service microsoft-github-policy-service bot added Auto-Assign Auto assign by bot AKS az aks/acs/openshift labels Nov 24, 2023
@nilo19 nilo19 changed the title [AKS] feat: support az aks create --load-balancer-backend-pool-type, `az … [AKS] feat: support az aks create --load-balancer-backend-pool-type, aks update --load-balancer-backend-pool-type, az aks create --node-public-ip-tags andaz aks nodepool add --node-public-ip-tags Nov 26, 2023
@nilo19 nilo19 changed the title [AKS] feat: support az aks create --load-balancer-backend-pool-type, aks update --load-balancer-backend-pool-type, az aks create --node-public-ip-tags andaz aks nodepool add --node-public-ip-tags [AKS] feat: support az aks create --load-balancer-backend-pool-type, aks update --load-balancer-backend-pool-type, az aks create --node-public-ip-tags and az aks nodepool add --node-public-ip-tags Nov 26, 2023
@nilo19 nilo19 closed this Nov 26, 2023
@nilo19 nilo19 reopened this Nov 26, 2023
@nilo19 nilo19 changed the title [AKS] feat: support az aks create --load-balancer-backend-pool-type, aks update --load-balancer-backend-pool-type, az aks create --node-public-ip-tags and az aks nodepool add --node-public-ip-tags [AKS] feat: support az aks create --load-balancer-backend-pool-type, aks update --load-balancer-backend-pool-type, az aks create --node-public-ip-tags and az aks nodepool add --node-public-ip-tags Nov 26, 2023
@nilo19 nilo19 changed the title [AKS] feat: support az aks create --load-balancer-backend-pool-type, aks update --load-balancer-backend-pool-type, az aks create --node-public-ip-tags and az aks nodepool add --node-public-ip-tags [AKS] feat: add --load-balancer-backend-pool-type, to az aks create and az aks update, add --node-public-ip-tags to az aks create and az aks nodepool add` Nov 26, 2023
@nilo19 nilo19 changed the title [AKS] feat: add --load-balancer-backend-pool-type, to az aks create and az aks update, add --node-public-ip-tags to az aks create and az aks nodepool add` [AKS] feat: Add --load-balancer-backend-pool-type, to az aks create and az aks update, add --node-public-ip-tags to az aks create and az aks nodepool add` Nov 26, 2023
@nilo19 nilo19 closed this Nov 26, 2023
@nilo19 nilo19 reopened this Nov 26, 2023
@nilo19 nilo19 force-pushed the feat/node-ip branch 2 times, most recently from ed2e76e to 3ff8f04 Compare November 27, 2023 00:32
@nilo19 nilo19 closed this Nov 27, 2023
@FumingZhang
Copy link
Member

The PR title is a little messy, would you split it into several notes and put it under section History Notes in PR description?

@nilo19 nilo19 changed the title [AKS] feat: Add --load-balancer-backend-pool-type, to az aks create and az aks update, add --node-public-ip-tags to az aks create and az aks nodepool add` [AKS] feat: Support IP-based Load Balancer and Instance Level Public IP Tags Nov 27, 2023
@nilo19
Copy link
Member Author

nilo19 commented Nov 27, 2023

The PR title is a little messy, would you split it into several notes and put it under section History Notes in PR description?

Changed. Would this be acceptable?

@FumingZhang
Copy link
Member

please keep the formatting, taking az aks create --load-balancer-backend-pool-type {nodeIPConfiguration|nodeIP} as an example,

  • [AKS] az aks create: Add option --load-balancer-backend-pool-type

would be better

@nilo19
Copy link
Member Author

nilo19 commented Nov 28, 2023

please keep the formatting, taking az aks create --load-balancer-backend-pool-type {nodeIPConfiguration|nodeIP} as an example,

  • [AKS] az aks create: Add option --load-balancer-backend-pool-type

would be better

done

- name: --load-balancer-backend-pool-type
type: string
short-summary: Load balancer backend pool type.
long-summary: Load balancer backend pool type, supported values are nodeIP and nodeIPConfiguration.
Copy link
Contributor

Choose a reason for hiding this comment

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

If the value of this parameter is enumerable, it is suggested to use arg_type=get_enum_type() to define the param. After that, it is not necessary to manually specify the available options.

Copy link
Member Author

Choose a reason for hiding this comment

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

Fixed, please take a look.

- name: --load-balancer-backend-pool-type
type: string
short-summary: Load balancer backend pool type.
long-summary: Load balancer backend pool type, supported values are nodeIP and nodeIPConfiguration.
Copy link
Contributor

Choose a reason for hiding this comment

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

The same as above.

Comment on lines 229 to 230
c.argument('load_balancer_backend_pool_type', arg_type=get_enum_type(backend_pool_types),
validator=validate_load_balancer_backend_pool_type)
Copy link
Contributor

Choose a reason for hiding this comment

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

After defined with arg_type=get_enum_type(backend_pool_types), it is not necessary to validate the input manually.

Suggested change
c.argument('load_balancer_backend_pool_type', arg_type=get_enum_type(backend_pool_types),
validator=validate_load_balancer_backend_pool_type)
c.argument('load_balancer_backend_pool_type', arg_type=get_enum_type(backend_pool_types))

Copy link
Member Author

Choose a reason for hiding this comment

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

removed

@nilo19
Copy link
Member Author

nilo19 commented Nov 29, 2023

@FumingZhang can we get this merged?

yanzhudd
yanzhudd previously approved these changes Nov 29, 2023
@nilo19
Copy link
Member Author

nilo19 commented Nov 29, 2023

@jsntcy @kairu-ms @zhoxing-ms can we merge this today?

@yanzhudd
Copy link
Contributor

@jsntcy @kairu-ms @zhoxing-ms can we merge this today?

Sorry, PRs cannot be merged during our release process. Once the release is complete, we would merge it.

@nilo19
Copy link
Member Author

nilo19 commented Dec 6, 2023

@yanzhudd when will the release process be done?

@yanzhudd
Copy link
Contributor

yanzhudd commented Dec 6, 2023

@yanzhudd when will the release process be done?

It seems that approval from the core module owner is required.
Hi @zhoxing-ms, could you please help approve this PR as well?

Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>
Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>
@zhoxing-ms zhoxing-ms changed the title [AKS] feat: Support IP-based Load Balancer and Instance Level Public IP Tags [AKS] az aks: Support IP-based Load Balancer and Instance Level Public IP Tags Dec 6, 2023
Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>
@nilo19
Copy link
Member Author

nilo19 commented Dec 6, 2023

@zhoxing-ms any other comments?

@wangzelin007 wangzelin007 merged commit e45f1a0 into Azure:dev Dec 11, 2023
53 checks passed
@nilo19 nilo19 deleted the feat/node-ip branch December 11, 2023 04:35
MaxHorstmann pushed a commit to MaxHorstmann/azure-cli that referenced this pull request Jan 19, 2024
…lic IP Tags (Azure#27910)

* feat: support `az aks create --load-balancer-backend-pool-type`, `az aks update --load-balancer-backend-pool-type`, `az aks create --node-public-ip-tags` and `az aks nodepool add --node-public-ip-tags`.

* chore: set arg type to enum for backend_pool_type

* chore: remove backend pool type validator

* Update src/azure-cli/azure/cli/command_modules/acs/_help.py

Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>

* Update src/azure-cli/azure/cli/command_modules/acs/_help.py

Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>

* Update src/azure-cli/azure/cli/command_modules/acs/_help.py

Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>

---------

Co-authored-by: Xing Zhou <Zhou.Xing@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AKS az aks/acs/openshift Auto-Assign Auto assign by bot
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants