Class KubernetesRuntimeFactory
- java.lang.Object
-
- org.apache.pulsar.functions.runtime.kubernetes.KubernetesRuntimeFactory
-
- All Implemented Interfaces:
java.lang.AutoCloseable,RuntimeFactory
public class KubernetesRuntimeFactory extends java.lang.Object implements RuntimeFactory
Kubernetes based function container factory implementation.
-
-
Constructor Summary
Constructors Constructor Description KubernetesRuntimeFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()KubernetesRuntimecreateContainer(org.apache.pulsar.functions.instance.InstanceConfig instanceConfig, java.lang.String codePkgUrl, java.lang.String originalCodeFileName, java.lang.Long expectedHealthCheckInterval)Create a function container to execute a java instance.voiddoAdmissionChecks(org.apache.pulsar.functions.proto.Function.FunctionDetails functionDetails)booleanexternallyManaged()java.util.Optional<KubernetesFunctionAuthProvider>getAuthProvider()java.util.Optional<KubernetesManifestCustomizer>getRuntimeCustomizer()voidinitialize(WorkerConfig workerConfig, org.apache.pulsar.functions.instance.AuthenticationConfig authenticationConfig, org.apache.pulsar.functions.secretsproviderconfigurator.SecretsProviderConfigurator secretsProviderConfigurator, ConnectorsManager connectorsManager, java.util.Optional<FunctionAuthProvider> functionAuthProvider, java.util.Optional<RuntimeCustomizer> runtimeCustomizer)voidsetupClient()
-
-
-
Method Detail
-
externallyManaged
public boolean externallyManaged()
- Specified by:
externallyManagedin interfaceRuntimeFactory
-
initialize
public void initialize(WorkerConfig workerConfig, org.apache.pulsar.functions.instance.AuthenticationConfig authenticationConfig, org.apache.pulsar.functions.secretsproviderconfigurator.SecretsProviderConfigurator secretsProviderConfigurator, ConnectorsManager connectorsManager, java.util.Optional<FunctionAuthProvider> functionAuthProvider, java.util.Optional<RuntimeCustomizer> runtimeCustomizer)
- Specified by:
initializein interfaceRuntimeFactory
-
createContainer
public KubernetesRuntime createContainer(org.apache.pulsar.functions.instance.InstanceConfig instanceConfig, java.lang.String codePkgUrl, java.lang.String originalCodeFileName, java.lang.Long expectedHealthCheckInterval) throws java.lang.Exception
Description copied from interface:RuntimeFactoryCreate a function container to execute a java instance.- Specified by:
createContainerin interfaceRuntimeFactory- Parameters:
instanceConfig- java instance configcodePkgUrl- code fileexpectedHealthCheckInterval- expected health check interval in seconds- Returns:
- function container to start/stop instance
- Throws:
java.lang.Exception
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfaceRuntimeFactory
-
doAdmissionChecks
public void doAdmissionChecks(org.apache.pulsar.functions.proto.Function.FunctionDetails functionDetails)
- Specified by:
doAdmissionChecksin interfaceRuntimeFactory
-
setupClient
public void setupClient() throws java.lang.Exception- Throws:
java.lang.Exception
-
getAuthProvider
public java.util.Optional<KubernetesFunctionAuthProvider> getAuthProvider()
- Specified by:
getAuthProviderin interfaceRuntimeFactory
-
getRuntimeCustomizer
public java.util.Optional<KubernetesManifestCustomizer> getRuntimeCustomizer()
- Specified by:
getRuntimeCustomizerin interfaceRuntimeFactory
-
-