Documentation ¶
Index ¶
Constants ¶
View Source
const ( // The names of the files that should contain the CA certificate and the TLS key pair. CACertFile = "ca.crt" TLSCertFile = "tls.crt" TLSKeyFile = "tls.key" )
View Source
const ( AntreaCAConfigMapName = "antrea-ca" AntreaControllerTLSSecretName = "antrea-controller-tls" AntreaServiceName = "antrea" )
View Source
const (
CAConfigMapKey = "ca.crt"
)
Variables ¶
This section is empty.
Functions ¶
func GetAntreaServerNames ¶
GetAntreaServerNames returns the DNS names that the TLS certificate will be signed with.
func GetCAConfigMapNamespace ¶
func GetCAConfigMapNamespace() string
Types ¶
type CACertController ¶
type CACertController struct {
// contains filtered or unexported fields
}
CACertController is responsible for taking the CA certificate from the caContentProvider and publishing it to the ConfigMap and the APIServices.
func ApplyServerCert ¶
func ApplyServerCert(selfSignedCert bool, client kubernetes.Interface, aggregatorClient clientset.Interface, apiExtensionClient apiextensionclientset.Interface, secureServing *options.SecureServingOptionsWithLoopback, caConfig *CAConfig) (*CACertController, error)
func (*CACertController) Enqueue ¶
func (c *CACertController) Enqueue()
Enqueue will be called after CACertController is registered as a listener of CA cert change.
func (*CACertController) Run ¶
func (c *CACertController) Run(ctx context.Context, workers int)
Run starts the CACertController and blocks until the context is canceled.
func (*CACertController) RunOnce ¶
func (c *CACertController) RunOnce(ctx context.Context) error
RunOnce runs a single sync step to ensure that we have a valid starting configuration.
func (*CACertController) UpdateCertificate ¶
func (c *CACertController) UpdateCertificate(ctx context.Context) error
type CAConfig ¶ added in v1.5.0
type CAConfig struct { // Name of the ConfigMap that will hold the CA certificate that validates the TLS // certificate of antrea-controller. CAConfigMapName string // Name of the Secret that will hold the self-signed TLS certificate and key of antrea-controller. // If set, the certificate and key will be stored in the Secret for future reuse. TLSSecretName string // APIServiceSelector provides the label to select APIServices backed by antrea-controller. Using labels as a filter // to select APIServices is more flexible than maintaining a list of APIService names, e.g., cluster admin can remove // unneeded APIServices in a setup without Antrea code changes. APIServiceSelector *metav1.LabelSelector // ValidatingWebhookSelector provides the label to select ValidatingWebhookConfigurations backed by antrea-controller. ValidatingWebhookSelector *metav1.LabelSelector // MutationWebhookSelector provides the label to select MutatingWebhookConfigurations backed by antrea-controller. MutationWebhookSelector *metav1.LabelSelector // CRDConversionWebhookSelector provides the label to select the ConversionWebhooks backed by antrea-controller. CRDConversionWebhookSelector *metav1.LabelSelector // CertDir is the directory that the TLS Secret should be mounted to. Declaring it as a variable for testing. CertDir string // SelfSignedCertDir is the dir Antrea self signed certificates are created in. SelfSignedCertDir string // CertReadyTimeout is the timeout we will wait for the TLS Secret being ready. Declaring it as a variable for testing. CertReadyTimeout time.Duration // MinValidDuration is the minimal remaining valid duration for the self-signed certificate. It must be rotated once // the time until the certificate expires becomes shorter than this duration. MinValidDuration time.Duration ServiceName string PairName string }
Click to show internal directories.
Click to hide internal directories.