Skip to content

Conversation

@zhiying-lin
Copy link
Contributor

What type of PR is this?

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #

Requirements:

How has this code been tested

Special notes for your reviewer

@zhiying-lin zhiying-lin marked this pull request as draft August 12, 2024 09:58
@zhiying-lin zhiying-lin marked this pull request as ready for review August 16, 2024 10:00
Copy link

@circy9 circy9 left a comment

Choose a reason for hiding this comment

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

As discussed, we should provide MultiClusterSerivce v1beta to program traffic manager.

MultiClusterSerivce {
  ServiceClass: "TrafficManager"
  Backends {
     {
       ServiceImport: X1
       Weight: 20
     }
     {
       ServiceImport: X2
       Weight: 80
     }
  }
}

Traffic manager should will be auto-created by Fleet under FL_* with reasonable defaults. Users only need to config dns-prefix (== the name of the traffic manager) or we can auto create dns-prefix based on certain patterns.

If needed later, we can allow customers to bring their own traffic manager by allowing an annotation like: trafficmanagerresourceid=x

Here is a traffic manager created via portal where I only specified name, sub, resource group, and routing method:

{
    "id": "/subscriptions/2b03bfb8-e885-4566-a62a-909a11d71692/resourceGroups/liqian-fleet-ga/providers/Microsoft.Network/trafficManagerProfiles/liqian-traffic-manager",
    "name": "liqian-traffic-manager",
    "type": "Microsoft.Network/trafficManagerProfiles",
    "location": "global",
    "tags": {},
    "properties": {
        "profileStatus": "Enabled",
        "trafficRoutingMethod": "Weighted",
        "dnsConfig": {
            "relativeName": "liqian-traffic-manager",
            "fqdn": "liqian-traffic-manager.trafficmanager.net",
            "ttl": 60
        },
        "monitorConfig": {
            "profileMonitorStatus": "Inactive",
            "protocol": "HTTP",
            "port": 80,
            "path": "/",
            "intervalInSeconds": 30,
            "toleratedNumberOfFailures": 3,
            "timeoutInSeconds": 10
        },
        "endpoints": [],
        "trafficViewEnrollmentStatus": "Disabled",
        "maxReturn": 0,
        "recordType": null
    }
}

@zhiying-lin zhiying-lin merged commit 7c5b6bf into Azure:main Sep 6, 2024
@zhiying-lin zhiying-lin deleted the interface branch September 6, 2024 03:06
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.

4 participants