Skip to content

Instantly share code, notes, and snippets.

@sjenning
Last active November 10, 2022 17:24
Show Gist options
  • Save sjenning/769cf95b43a2e1755b54141cf789e822 to your computer and use it in GitHub Desktop.
Save sjenning/769cf95b43a2e1755b54141cf789e822 to your computer and use it in GitHub Desktop.

hypershift create cluster aws --endpointAccess=PublicAndPrivate --external-dns-domain=service.ci.hypershift.devcluster.openshift.com

  services:
  - service: APIServer
    servicePublishingStrategy:
      route:
        hostname: api-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
  - service: OAuthServer
    servicePublishingStrategy:
      route:
        hostname: oauth-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
  - service: Konnectivity
    servicePublishingStrategy:
      type: Route
  - service: Ignition
    servicePublishingStrategy:
      type: Route
  - service: OVNSbDb
    servicePublishingStrategy:
      type: Route
# oc get route
NAME                      HOST/PORT                                                             PATH   SERVICES                  PORT    TERMINATION        WILDCARD
ignition-server           ignition-server.apps.sjenning-guest.hypershift.local                         ignition-server           <all>   passthrough/None   None
konnectivity-server       konnectivity-server.apps.sjenning-guest.hypershift.local                     konnectivity-server       8091    passthrough/None   None
kube-apiserver            api-sjenning-guest.service.ci.hypershift.devcluster.openshift.com            kube-apiserver            <all>   passthrough/None   None
kube-apiserver-internal   kubernetes.default                                                           kube-apiserver            <all>   passthrough/None   None
oauth                     oauth-sjenning-guest.service.ci.hypershift.devcluster.openshift.com          oauth-openshift           <all>   passthrough/None   None
ovnkube-sbdb              ovnkube-sbdb.apps.sjenning-guest.hypershift.local                            ovnkube-master-external   9642    passthrough/None   None

hypershift create cluster aws --endpointAccess=Private --external-dns-domain=service.ci.hypershift.devcluster.openshift.com

  services:
  - service: APIServer
    servicePublishingStrategy:
      type: Route
  - service: OAuthServer
    servicePublishingStrategy:
      type: Route
  - service: Konnectivity
    servicePublishingStrategy:
      type: Route
  - service: Ignition
    servicePublishingStrategy:
      type: Route
  - service: OVNSbDb
    servicePublishingStrategy:
      type: Route
NAME                      HOST/PORT                                                  PATH   SERVICES                  PORT    TERMINATION        WILDCARD
ignition-server           ignition-server.apps.sjenning-guest.hypershift.local              ignition-server           <all>   passthrough/None   None
konnectivity-server       konnectivity-server.apps.sjenning-guest.hypershift.local          konnectivity-server       8091    passthrough/None   None
kube-apiserver-internal   kubernetes.default                                                kube-apiserver            <all>   passthrough/None   None
oauth                     oauth.apps.sjenning-guest.hypershift.local                        oauth-openshift           <all>   passthrough/None   None
ovnkube-sbdb              ovnkube-sbdb.apps.sjenning-guest.hypershift.local                 ovnkube-master-external   9642    passthrough/None   None

hypershift create cluster aws --endpointAccess=Public --external-dns-domain=service.ci.hypershift.devcluster.openshift.com

  services:
  - service: APIServer
    servicePublishingStrategy:
      route:
        hostname: api-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
  - service: OAuthServer
    servicePublishingStrategy:
      route:
        hostname: oauth-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
  - service: Konnectivity
    servicePublishingStrategy:
      route:
        hostname: konnectivity-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
  - service: Ignition
    servicePublishingStrategy:
      route:
        hostname: ignition-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
  - service: OVNSbDb
    servicePublishingStrategy:
      route:
        hostname: ovn-sbdb-sjenning-guest.service.ci.hypershift.devcluster.openshift.com
      type: Route
NAME                      HOST/PORT                                                                    PATH   SERVICES                  PORT    TERMINATION        WILDCARD
ignition-server           ignition-sjenning-guest.service.ci.hypershift.devcluster.openshift.com              ignition-server           <all>   passthrough/None   None
konnectivity-server       konnectivity-sjenning-guest.service.ci.hypershift.devcluster.openshift.com          konnectivity-server       8091    passthrough/None   None
kube-apiserver            api-sjenning-guest.service.ci.hypershift.devcluster.openshift.com                   kube-apiserver            <all>   passthrough/None   None
kube-apiserver-internal   kubernetes.default                                                                  kube-apiserver            <all>   passthrough/None   None
oauth                     oauth-sjenning-guest.service.ci.hypershift.devcluster.openshift.com                 oauth-openshift           <all>   passthrough/None   None
ovnkube-sbdb              ovn-sbdb-sjenning-guest.service.ci.hypershift.devcluster.openshift.com              ovnkube-master-external   9642    passthrough/None   None

hypershift create cluster aws --endpointAccess=Public (no --external-dns-domain flag)

   services:
  - service: APIServer
    servicePublishingStrategy:
      type: LoadBalancer
  - service: OAuthServer
    servicePublishingStrategy:
      type: Route
  - service: Konnectivity
    servicePublishingStrategy:
      type: Route
  - service: Ignition
    servicePublishingStrategy:
      type: Route
  - service: OVNSbDb
    servicePublishingStrategy:
      type: Route
# oc get route
NAME                  HOST/PORT                                                                                               PATH   SERVICES                  PORT    TERMINATION        WILDCARD
ignition-server       ignition-server-clusters-sjenning-guest.apps.sjenning-mgmt.ci.hypershift.devcluster.openshift.com              ignition-server           <all>   passthrough/None   None
konnectivity-server   konnectivity-server-clusters-sjenning-guest.apps.sjenning-mgmt.ci.hypershift.devcluster.openshift.com          konnectivity-server       8091    passthrough/None   None
oauth                 oauth-clusters-sjenning-guest.apps.sjenning-mgmt.ci.hypershift.devcluster.openshift.com                        oauth-openshift           <all>   passthrough/None   None
ovnkube-sbdb          ovnkube-sbdb-clusters-sjenning-guest.apps.sjenning-mgmt.ci.hypershift.devcluster.openshift.com                 ovnkube-master-external   9642    passthrough/None   None

# oc get svc | grep -v ClusterIP
NAME                                 TYPE           CLUSTER-IP       EXTERNAL-IP                                                                     PORT(S)                      AGE
kube-apiserver                       LoadBalancer   172.29.162.214   aac2c707b23ad4f51be92eb1cbace6b8-b4556210ef12501f.elb.us-east-1.amazonaws.com   6443:30578/TCP               4m13s

Do we want to make external-dns required for AWS? If so, do we want to do away with publishing type LoadBalancer? If so, do we want to require hostname for the Route type?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment