Documentation
¶
Index ¶
Constants ¶
View Source
const ( // Kubernetes secret key name for usage in: router, ensembler, enricher. // They will share the same Kubernetes secret for every RouterVersion deployment. // Hence, the key name should be used to retrieve different credentials. SecretKeyNameRouter = "router-service-account.json" SecretKeyNameEnsembler = "ensembler-service-account.json" SecretKeyNameEnricher = "enricher-service-account.json" SecretKeyNameExpEngine = "exp-engine-service-account.json" )
View Source
const (
FluentdReplicaCount = 2
)
Variables ¶
View Source
var ComponentTypes = struct { BatchEnsembler string Enricher string Ensembler string Router string FluentdLogger string Secret string ServiceAccountSecret string CacheVolume string FiberConfig string PluginsServer string PDB string }{ BatchEnsembler: "batch-ensembler", Enricher: "enricher", Ensembler: "ensembler", Router: "router", FluentdLogger: "fluentd-logger", Secret: "secret", CacheVolume: "cache-volume", FiberConfig: "fiber-config", PluginsServer: "plugins-server", PDB: "pdb", }
Functions ¶
func GetComponentName ¶
func GetComponentName(routerVersion *models.RouterVersion, componentType string) string
func GetNamespace ¶
func NewPluginsServerService ¶
func NewPluginsServerService( routerVersion *models.RouterVersion, project *mlp.Project, ) *cluster.KubernetesService
Types ¶
type ClusterServiceBuilder ¶
type ClusterServiceBuilder interface {
NewEnricherService(
ver *models.RouterVersion,
project *mlp.Project,
secretName string,
initialScale *int,
) (*cluster.KnativeService, error)
NewEnsemblerService(
ver *models.RouterVersion,
project *mlp.Project,
secretName string,
initialScale *int,
) (*cluster.KnativeService, error)
NewRouterService(
ver *models.RouterVersion,
project *mlp.Project,
envType string,
secretName string,
experimentConfig json.RawMessage,
routerDefaults *config.RouterDefaults,
sentryEnabled bool,
sentryDSN string,
initialScale *int,
) (*cluster.KnativeService, error)
NewFluentdService(
routerVersion *models.RouterVersion,
project *mlp.Project,
secretName string,
fluentdConfig *config.FluentdConfig,
) *cluster.KubernetesService
NewRouterEndpoint(
routerVersion *models.RouterVersion,
project *mlp.Project,
versionEndpoint string,
) (*cluster.VirtualService, error)
NewSecret(
routerVersion *models.RouterVersion,
project *mlp.Project,
secretMap map[string]string,
) *cluster.Secret
NewPodDisruptionBudget(
routerVersion *models.RouterVersion,
project *mlp.Project,
componentType string,
pdbConfig config.PodDisruptionBudgetConfig,
) *cluster.PodDisruptionBudget
GetRouterServiceName(ver *models.RouterVersion) string
}
ClusterServiceBuilder parses the Router Config to build a service definition compatible with the cluster package
func NewClusterServiceBuilder ¶
func NewClusterServiceBuilder( cpuLimit resource.Quantity, memoryLimit resource.Quantity, maxAllowedReplica int, topologySpreadConstraints []corev1.TopologySpreadConstraint, knativeServiceConfig *config.KnativeServiceDefaults, ) ClusterServiceBuilder
NewClusterServiceBuilder creates a new service builder with the supplied configs for defaults
Click to show internal directories.
Click to hide internal directories.