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

Add Azure support #110

Closed
wants to merge 21 commits into from
Closed

Add Azure support #110

wants to merge 21 commits into from

Conversation

justaugustus
Copy link
Contributor

@justaugustus justaugustus commented Jan 24, 2018

Adds support for instantiating Typhoon clusters on Microsoft Azure.

@justaugustus
Copy link
Contributor Author

@dghubble functionally, everything works, but I still need to update docs for this.
I figured I'd toss it up here so you could take a peep!

# TODO: Add Scale Sets implementation once support exists: https://github.com/kubernetes/kubernetes/issues/43287

# Discrete DNS records for each controller's private IPv4 for etcd usage
resource "azurerm_dns_a_record" "etcds" {

Choose a reason for hiding this comment

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

Why are separate etcd records needed? (aka, why not just use static IPs?)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@colemickens These etcd records are used as SANs in the etcd TLS asset generation process.

docs/azure.md Outdated
@@ -0,0 +1,268 @@
# AWS

Choose a reason for hiding this comment

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

s/AWS/Azure/g

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@colemickens Ya, still working the docs. This is just copy pasta for now.

docs/azure.md Outdated

| Name | Description | Default | Example |
|:-----|:------------|:--------|:--------|
| controller_count | Number of controllers (i.e. masters) | 1 | 1 |

Choose a reason for hiding this comment

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

More Amazon stuff in here, plus I think you require an extra thing or two for Azure.

Choose a reason for hiding this comment

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

Actually there's quite a bit above two in the examples, even in places other than example outputs.

@colemickens
Copy link

Looks like it requires a full DNS zone to donate to the cluster? Or it just has to be present so that this can poke records into it? (Is it safe to assume the records have the cluster_name in it, or something to preserve uniqueness?)

@dghubble
Copy link
Member

This gets the same answer VMWare and OVH did.

Writing a module isn't the issue, its the maintenance, validation, testing, and support that goes into each platform, for Typhoon releases, for the foreseeable future. Typhoon clusters are run continuously on each platform, with workloads (simmer tests, not just "does it launch"). Platforms get independently tested and certified for conformance. Addons are verified to play nicely and provide a good admin experience.

A priority ranked roadmap does include new platforms (further out), with QEMU/KVM support as the next platform planned, after other priorities. Azure is a good contender for another platform in my mind, but at a minimum we'd need to get Azure non-profit sponsorship to fund clusters. And preferably get a solid, trusted point of contact there.

We can revisit this in the future.

@justaugustus
Copy link
Contributor Author

@colemickens I've updated the docs for Azure, if you'd like to take a look.
w.r.t. DNS records, you can delegate a domain or subdomain for usage in Azure.
We'd simply be putting records into a pre-delegated zone.

While cluster_name is used to generate the records, it's not truly possible to ensure uniqueness if someone decides to create another cluster in that zone with the same name.

@justaugustus
Copy link
Contributor Author

justaugustus commented Feb 21, 2018

(for anyone driving by this PR...)
@dghubble and I have discussed this offline and there's some legwork to do before this might be considered for use in Typhoon, so I'm going to close the PR out.

In the meantime, if you're itching to use Typhoon on Azure, you can check out typhoon-azure!

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.

3 participants