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

pkg/asset/machines/worker: Structured workers #1481

Merged
merged 4 commits into from
Mar 28, 2019

Commits on Mar 28, 2019

  1. data/aws/vpc/common: Drop data.aws_region

    The final consumer was removed in 361c082 (govcloud: remove
    terraform configs, 2018-03-23, coreos/tectonic-installer#3134).
    wking committed Mar 28, 2019
    Configuration menu
    Copy the full SHA
    8181502 View commit details
    Browse the repository at this point in the history
  2. pkg/asset/machines/master: Rename (*Master).StructuredMachines -> Mac…

    …hines
    
    Since f2eacf3 (asset/machines/master: allow adding MachineConfigs
    for control-plane machinepool, 2019-03-25, openshift#1150), we no longer need
    to filter a File slice to get a Master object's Machine files.  Drop
    the obsoleted Machines() implemenation and rename the previous
    StructuredMachines implmentation to take its place.
    wking committed Mar 28, 2019
    Configuration menu
    Copy the full SHA
    6691d6a View commit details
    Browse the repository at this point in the history
  3. pkg/asset/machines/worker: Convert Worker to a WriteableAsset

    Like the earlier 7a396d9 (pkg/asset/machines: Convert Master to a
    WriteableAsset, 2019-02-07, openshift#1211), but for Worker.  This is
    groundwork for extracting configured availability zones when
    generating AWS Terraform variables, which will in turn allow us to
    avoid provisioning availability zones unless we are going to populate
    them with machines.
    wking committed Mar 28, 2019
    Configuration menu
    Copy the full SHA
    6da4cbe View commit details
    Browse the repository at this point in the history
  4. data/aws/vpc: Only create subnet infrastucture for zones with Machine…

    …(Set)s
    
    This commit updates our Terraform variables to include the worker
    subnets, and then switches on that (and the master zones) in Terraform
    to avoid creating subnet infrastructure (NAT gateways, routes, etc.)
    in zones that have no Machine(Set)s.  This helps address limit issues
    in high-zone regions like us-east-1, as seen in the limits.md change.
    Note that without a reduction in our default MachineSet creation, the
    installer defaults will still not work on us-east-1 without a limit
    bump.
    
    The drawback is that users are now on the hook to provision their own
    subnets in other zones if they decide that they want to grow into a
    new zone as a day-2 Machine(Set) operation.  For now, they'll have to
    provide their own infrastructure for that, and our
    user-provided-infrastructure docs should give them sufficient
    grounding to do so.  It's possible that in the future the machine-API
    or other infrastructure operator could dynamically provision subnets
    in zones that were not populated at install-time, but I can't hazard a
    guess as to how likely that will be.
    
    The HCL functions for combining the zone lists are documented in [1,2].
    
    [1]: https://www.terraform.io/docs/configuration-0-11/interpolation.html#concat-list1-list2-
    [2]: https://www.terraform.io/docs/configuration-0-11/interpolation.html#distinct-list-
    wking committed Mar 28, 2019
    Configuration menu
    Copy the full SHA
    644f705 View commit details
    Browse the repository at this point in the history