You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently we have a model in which a trust zone/domain contains exactly one Kubernetes cluster. With SPIFFE/SPIRE it is possible to have a trust domain that includes multiple Kubernetes clusters, as well as other types of hosts (Linux, Windows, etc.). In this case the SPIRE server(s) for the trust zone/domain would reside in one of the clusters, or even outside of the clusters.
Consider whether the cluster name is scoped to the trust zone or global.
Data model
A new Cluster message will be added. Some of the TrustZone fields will need to move into the Cluster message.
Consider whether a TrustZone should have a clusters field containing a list of Cluster messages. This would be convenient, but probably not how it would be represented in a database.
We could start by retaining the 1:1 trust zone/cluster mapping (as a restriction on the list length), while moving the cluster-specific information into the new field.
The Provision interface is at a high enough level that it would not need to change. However implementations of the interface would need to support the new Cluster message. If we support multiple clusters per trust zone, then this would add additional complexity to the provisioning process, particularly if some of the clusters do not include any SPIRE servers.
Non-Kubernetes clusters
Not to be implemented for this issue, but while implementing the feature consider the implications for non-Kubernetes clusters.
The text was updated successfully, but these errors were encountered:
Consider whether a TrustZone should have a clusters field containing a list of Cluster messages. This would be convenient, but probably not how it would be represented in a database.
Would the alternative be a collection ClusterID (or similar) values that disambiguate between individual cluster objects, and the TrustZone just stores those IDs? One upside of this could be migrating a Cluster from TrustZone A -> TrustZoneB would be just a case of deleting and adding an ID instead of the full object (and maps to a fairly standard data model normalisation setup too)
Consider whether a TrustZone should have a clusters field containing a list of Cluster messages. This would be convenient, but probably not how it would be represented in a database.
Would the alternative be a collection ClusterID (or similar) values that disambiguate between individual cluster objects, and the TrustZone just stores those IDs? One upside of this could be migrating a Cluster from TrustZone A -> TrustZoneB would be just a case of deleting and adding an ID instead of the full object (and maps to a fairly standard data model normalisation setup too)
This makes sense, similar to the attestation policy binding approach.
Summary
Currently we have a model in which a trust zone/domain contains exactly one Kubernetes cluster. With SPIFFE/SPIRE it is possible to have a trust domain that includes multiple Kubernetes clusters, as well as other types of hosts (Linux, Windows, etc.). In this case the SPIRE server(s) for the trust zone/domain would reside in one of the clusters, or even outside of the clusters.
CLI UI
New CLI commands will be added:
Consider whether the cluster name is scoped to the trust zone or global.
Data model
A new
Cluster
message will be added. Some of theTrustZone
fields will need to move into theCluster
message.Consider whether a
TrustZone
should have aclusters
field containing a list ofCluster
messages. This would be convenient, but probably not how it would be represented in a database.We could start by retaining the 1:1 trust zone/cluster mapping (as a restriction on the list length), while moving the cluster-specific information into the new field.
Current:
Proposed:
Data source
New methods would need to be added to the
DataSource
interface:Provisioning
The Provision interface is at a high enough level that it would not need to change. However implementations of the interface would need to support the new Cluster message. If we support multiple clusters per trust zone, then this would add additional complexity to the provisioning process, particularly if some of the clusters do not include any SPIRE servers.
Non-Kubernetes clusters
Not to be implemented for this issue, but while implementing the feature consider the implications for non-Kubernetes clusters.
The text was updated successfully, but these errors were encountered: