Closed tcdowney closed 5 years ago
We have created an issue in Pivotal Tracker to manage this:
https://www.pivotaltracker.com/story/show/168812438
The labels on this github issue will be updated when the story is started.
mix of underscores, dashes, and camel casing. oh my!
To @zrob's point, I went with the underscores because that seemed most consistent with the existing metadata on these resources. Happy to adapt to whatever convention y'all are using -- I imagine it's mostly underscored because that's how many of these fields are in VCAP_APPLICATION
and in CAPI?
This is done, right?
Hi
Yes, this was done as part of 1.0 release.
We have added cloudfoundry.org/process_type
and cloudfoundry.org/app_guid
tl;dr
We would like for
app_guid
andprocess_type
to be included on the StatefulSet/Pod templates for Eirini apps to have deterministic and stable labels to select off of. E.g.Background
The CF Networking Program is working on enhancing the routing tier for CF on Kubernetes (see: https://github.com/cloudfoundry-incubator/eirini/issues/72). We're currently working on fetching v3 Routes and v3 Destinations from CAPI and converting these into "CF Route" CRDs. These will be used to create Istio resources and Services to power an Istio/Envoy based routing tier for Eirini apps. See this design document for more information.
Problem
Route Destinations in Cloud Controller are currently a combination of
route_guid
,app_guid
, andprocess_type
. CAPI Process GUIDs are not stable over time (for example a rolling app deployment changes them) so this mapping allows for the Destination object to remain stable.Since we currently only have a Process GUID on the StatefulSet/Pod for an app we'd have to do additional lookups on CAPI the Process GUID for a given app/process type and update our Services/Istio resources whenever an app's process GUID changes. Both of these are doable, but puts unnecessary load on the system when we could just have long lived resources that match off of the stable app guid and process type for the workload. This has the added benefit of giving other teams more stable identifiers to key off of.
Proposal
We enhance CAPI to send the
app_guid
andprocess_type
along when it desires an app on Eirini and update Eirini to include this information as labels on the StatefulSet/Pod template.Thanks! cc @ndhanushkodi @rosenhouse
Misc
Example StatefulSet (current)
Including this truncated StatefulSet to give folks an idea of what is on it currently.