mirror of
https://github.com/submariner-io/submariner-charts.git
synced 2026-09-20 19:10:34 +00:00
The submariner-operator Helm chart deploys Submariner using the Submariner operator: it deploys the CRDs, roles, and SAs required to run the operator and Submariner, then pushes a Submariner CR to instruct the operator to deploy Submariner. This patch also adds a Makefile to validate the deployments; run make deploy to test the Helm charts (this will bring up two clusters, install the broker on one of them and the operator on both, and end with a connectivity test). Fixes: #17 Signed-off-by: Stephen Kitt <skitt@redhat.com>
724 lines
32 KiB
YAML
724 lines
32 KiB
YAML
---
|
|
apiVersion: apiextensions.k8s.io/v1beta1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: submariners.submariner.io
|
|
annotations:
|
|
"helm.sh/hook": crd-install
|
|
controller-gen.kubebuilder.io/version: v0.3.0
|
|
spec:
|
|
group: submariner.io
|
|
names:
|
|
kind: Submariner
|
|
listKind: SubmarinerList
|
|
plural: submariners
|
|
singular: submariner
|
|
scope: Namespaced
|
|
subresources:
|
|
status: {}
|
|
validation:
|
|
openAPIV3Schema:
|
|
description: Submariner is the Schema for the submariners API
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: SubmarinerSpec defines the desired state of Submariner
|
|
properties:
|
|
broker:
|
|
type: string
|
|
brokerK8sApiServer:
|
|
type: string
|
|
brokerK8sApiServerToken:
|
|
type: string
|
|
brokerK8sCA:
|
|
type: string
|
|
brokerK8sRemoteNamespace:
|
|
type: string
|
|
cableDriver:
|
|
type: string
|
|
ceIPSecDebug:
|
|
type: boolean
|
|
ceIPSecIKEPort:
|
|
type: integer
|
|
ceIPSecNATTPort:
|
|
type: integer
|
|
ceIPSecPSK:
|
|
type: string
|
|
clusterCIDR:
|
|
type: string
|
|
clusterID:
|
|
type: string
|
|
colorCodes:
|
|
type: string
|
|
customDomains:
|
|
items:
|
|
type: string
|
|
type: array
|
|
x-kubernetes-list-type: set
|
|
debug:
|
|
type: boolean
|
|
globalCIDR:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
natEnabled:
|
|
type: boolean
|
|
repository:
|
|
type: string
|
|
serviceCIDR:
|
|
type: string
|
|
serviceDiscoveryEnabled:
|
|
type: boolean
|
|
version:
|
|
type: string
|
|
required:
|
|
- broker
|
|
- brokerK8sApiServer
|
|
- brokerK8sApiServerToken
|
|
- brokerK8sCA
|
|
- brokerK8sRemoteNamespace
|
|
- ceIPSecDebug
|
|
- ceIPSecPSK
|
|
- clusterCIDR
|
|
- clusterID
|
|
- debug
|
|
- namespace
|
|
- natEnabled
|
|
- serviceCIDR
|
|
type: object
|
|
status:
|
|
description: SubmarinerStatus defines the observed state of Submariner
|
|
properties:
|
|
clusterCIDR:
|
|
type: string
|
|
clusterID:
|
|
type: string
|
|
colorCodes:
|
|
type: string
|
|
engineDaemonSetStatus:
|
|
properties:
|
|
lastResourceVersion:
|
|
type: string
|
|
mismatchedContainerImages:
|
|
type: boolean
|
|
nonReadyContainerStates:
|
|
items:
|
|
description: ContainerState holds a possible state of container.
|
|
Only one of its members may be specified. If none of them is
|
|
specified, the default one is ContainerStateWaiting.
|
|
properties:
|
|
running:
|
|
description: Details about a running container
|
|
properties:
|
|
startedAt:
|
|
description: Time at which the container was last (re-)started
|
|
format: date-time
|
|
type: string
|
|
type: object
|
|
terminated:
|
|
description: Details about a terminated container
|
|
properties:
|
|
containerID:
|
|
description: Container's ID in the format 'docker://<container_id>'
|
|
type: string
|
|
exitCode:
|
|
description: Exit status from the last termination of
|
|
the container
|
|
format: int32
|
|
type: integer
|
|
finishedAt:
|
|
description: Time at which the container last terminated
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: Message regarding the last termination of
|
|
the container
|
|
type: string
|
|
reason:
|
|
description: (brief) reason from the last termination
|
|
of the container
|
|
type: string
|
|
signal:
|
|
description: Signal from the last termination of the container
|
|
format: int32
|
|
type: integer
|
|
startedAt:
|
|
description: Time at which previous execution of the container
|
|
started
|
|
format: date-time
|
|
type: string
|
|
required:
|
|
- exitCode
|
|
type: object
|
|
waiting:
|
|
description: Details about a waiting container
|
|
properties:
|
|
message:
|
|
description: Message regarding why the container is not
|
|
yet running.
|
|
type: string
|
|
reason:
|
|
description: (brief) reason the container is not yet running.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
type: array
|
|
status:
|
|
description: DaemonSetStatus represents the current status of a
|
|
daemon set.
|
|
properties:
|
|
collisionCount:
|
|
description: Count of hash collisions for the DaemonSet. The
|
|
DaemonSet controller uses this field as a collision avoidance
|
|
mechanism when it needs to create the name for the newest
|
|
ControllerRevision.
|
|
format: int32
|
|
type: integer
|
|
conditions:
|
|
description: Represents the latest available observations of
|
|
a DaemonSet's current state.
|
|
items:
|
|
description: DaemonSetCondition describes the state of a DaemonSet
|
|
at a certain point.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: Last time the condition transitioned from
|
|
one status to another.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: A human readable message indicating details
|
|
about the transition.
|
|
type: string
|
|
reason:
|
|
description: The reason for the condition's last transition.
|
|
type: string
|
|
status:
|
|
description: Status of the condition, one of True, False,
|
|
Unknown.
|
|
type: string
|
|
type:
|
|
description: Type of DaemonSet condition.
|
|
type: string
|
|
required:
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
currentNumberScheduled:
|
|
description: 'The number of nodes that are running at least
|
|
1 daemon pod and are supposed to run the daemon pod. More
|
|
info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
desiredNumberScheduled:
|
|
description: 'The total number of nodes that should be running
|
|
the daemon pod (including nodes correctly running the daemon
|
|
pod). More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
numberAvailable:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have one or more of the daemon pod running
|
|
and available (ready for at least spec.minReadySeconds)
|
|
format: int32
|
|
type: integer
|
|
numberMisscheduled:
|
|
description: 'The number of nodes that are running the daemon
|
|
pod, but are not supposed to run the daemon pod. More info:
|
|
https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
numberReady:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have one or more of the daemon pod running
|
|
and ready.
|
|
format: int32
|
|
type: integer
|
|
numberUnavailable:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have none of the daemon pod running and available
|
|
(ready for at least spec.minReadySeconds)
|
|
format: int32
|
|
type: integer
|
|
observedGeneration:
|
|
description: The most recent generation observed by the daemon
|
|
set controller.
|
|
format: int64
|
|
type: integer
|
|
updatedNumberScheduled:
|
|
description: The total number of nodes that are running updated
|
|
daemon pod
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- currentNumberScheduled
|
|
- desiredNumberScheduled
|
|
- numberMisscheduled
|
|
- numberReady
|
|
type: object
|
|
required:
|
|
- mismatchedContainerImages
|
|
type: object
|
|
gateways:
|
|
items:
|
|
properties:
|
|
connections:
|
|
items:
|
|
properties:
|
|
endpoint:
|
|
properties:
|
|
backend:
|
|
type: string
|
|
backend_config:
|
|
additionalProperties:
|
|
type: string
|
|
type: object
|
|
cable_name:
|
|
type: string
|
|
cluster_id:
|
|
type: string
|
|
hostname:
|
|
type: string
|
|
nat_enabled:
|
|
type: boolean
|
|
private_ip:
|
|
type: string
|
|
public_ip:
|
|
type: string
|
|
subnets:
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- backend
|
|
- cable_name
|
|
- cluster_id
|
|
- hostname
|
|
- nat_enabled
|
|
- private_ip
|
|
- public_ip
|
|
- subnets
|
|
type: object
|
|
status:
|
|
type: string
|
|
statusMessage:
|
|
type: string
|
|
required:
|
|
- endpoint
|
|
- status
|
|
- statusMessage
|
|
type: object
|
|
type: array
|
|
haStatus:
|
|
type: string
|
|
localEndpoint:
|
|
properties:
|
|
backend:
|
|
type: string
|
|
backend_config:
|
|
additionalProperties:
|
|
type: string
|
|
type: object
|
|
cable_name:
|
|
type: string
|
|
cluster_id:
|
|
type: string
|
|
hostname:
|
|
type: string
|
|
nat_enabled:
|
|
type: boolean
|
|
private_ip:
|
|
type: string
|
|
public_ip:
|
|
type: string
|
|
subnets:
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- backend
|
|
- cable_name
|
|
- cluster_id
|
|
- hostname
|
|
- nat_enabled
|
|
- private_ip
|
|
- public_ip
|
|
- subnets
|
|
type: object
|
|
statusFailure:
|
|
type: string
|
|
version:
|
|
type: string
|
|
required:
|
|
- connections
|
|
- haStatus
|
|
- localEndpoint
|
|
- statusFailure
|
|
- version
|
|
type: object
|
|
type: array
|
|
globalCIDR:
|
|
type: string
|
|
globalnetDaemonSetStatus:
|
|
properties:
|
|
lastResourceVersion:
|
|
type: string
|
|
mismatchedContainerImages:
|
|
type: boolean
|
|
nonReadyContainerStates:
|
|
items:
|
|
description: ContainerState holds a possible state of container.
|
|
Only one of its members may be specified. If none of them is
|
|
specified, the default one is ContainerStateWaiting.
|
|
properties:
|
|
running:
|
|
description: Details about a running container
|
|
properties:
|
|
startedAt:
|
|
description: Time at which the container was last (re-)started
|
|
format: date-time
|
|
type: string
|
|
type: object
|
|
terminated:
|
|
description: Details about a terminated container
|
|
properties:
|
|
containerID:
|
|
description: Container's ID in the format 'docker://<container_id>'
|
|
type: string
|
|
exitCode:
|
|
description: Exit status from the last termination of
|
|
the container
|
|
format: int32
|
|
type: integer
|
|
finishedAt:
|
|
description: Time at which the container last terminated
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: Message regarding the last termination of
|
|
the container
|
|
type: string
|
|
reason:
|
|
description: (brief) reason from the last termination
|
|
of the container
|
|
type: string
|
|
signal:
|
|
description: Signal from the last termination of the container
|
|
format: int32
|
|
type: integer
|
|
startedAt:
|
|
description: Time at which previous execution of the container
|
|
started
|
|
format: date-time
|
|
type: string
|
|
required:
|
|
- exitCode
|
|
type: object
|
|
waiting:
|
|
description: Details about a waiting container
|
|
properties:
|
|
message:
|
|
description: Message regarding why the container is not
|
|
yet running.
|
|
type: string
|
|
reason:
|
|
description: (brief) reason the container is not yet running.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
type: array
|
|
status:
|
|
description: DaemonSetStatus represents the current status of a
|
|
daemon set.
|
|
properties:
|
|
collisionCount:
|
|
description: Count of hash collisions for the DaemonSet. The
|
|
DaemonSet controller uses this field as a collision avoidance
|
|
mechanism when it needs to create the name for the newest
|
|
ControllerRevision.
|
|
format: int32
|
|
type: integer
|
|
conditions:
|
|
description: Represents the latest available observations of
|
|
a DaemonSet's current state.
|
|
items:
|
|
description: DaemonSetCondition describes the state of a DaemonSet
|
|
at a certain point.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: Last time the condition transitioned from
|
|
one status to another.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: A human readable message indicating details
|
|
about the transition.
|
|
type: string
|
|
reason:
|
|
description: The reason for the condition's last transition.
|
|
type: string
|
|
status:
|
|
description: Status of the condition, one of True, False,
|
|
Unknown.
|
|
type: string
|
|
type:
|
|
description: Type of DaemonSet condition.
|
|
type: string
|
|
required:
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
currentNumberScheduled:
|
|
description: 'The number of nodes that are running at least
|
|
1 daemon pod and are supposed to run the daemon pod. More
|
|
info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
desiredNumberScheduled:
|
|
description: 'The total number of nodes that should be running
|
|
the daemon pod (including nodes correctly running the daemon
|
|
pod). More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
numberAvailable:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have one or more of the daemon pod running
|
|
and available (ready for at least spec.minReadySeconds)
|
|
format: int32
|
|
type: integer
|
|
numberMisscheduled:
|
|
description: 'The number of nodes that are running the daemon
|
|
pod, but are not supposed to run the daemon pod. More info:
|
|
https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
numberReady:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have one or more of the daemon pod running
|
|
and ready.
|
|
format: int32
|
|
type: integer
|
|
numberUnavailable:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have none of the daemon pod running and available
|
|
(ready for at least spec.minReadySeconds)
|
|
format: int32
|
|
type: integer
|
|
observedGeneration:
|
|
description: The most recent generation observed by the daemon
|
|
set controller.
|
|
format: int64
|
|
type: integer
|
|
updatedNumberScheduled:
|
|
description: The total number of nodes that are running updated
|
|
daemon pod
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- currentNumberScheduled
|
|
- desiredNumberScheduled
|
|
- numberMisscheduled
|
|
- numberReady
|
|
type: object
|
|
required:
|
|
- mismatchedContainerImages
|
|
type: object
|
|
natEnabled:
|
|
type: boolean
|
|
routeAgentDaemonSetStatus:
|
|
properties:
|
|
lastResourceVersion:
|
|
type: string
|
|
mismatchedContainerImages:
|
|
type: boolean
|
|
nonReadyContainerStates:
|
|
items:
|
|
description: ContainerState holds a possible state of container.
|
|
Only one of its members may be specified. If none of them is
|
|
specified, the default one is ContainerStateWaiting.
|
|
properties:
|
|
running:
|
|
description: Details about a running container
|
|
properties:
|
|
startedAt:
|
|
description: Time at which the container was last (re-)started
|
|
format: date-time
|
|
type: string
|
|
type: object
|
|
terminated:
|
|
description: Details about a terminated container
|
|
properties:
|
|
containerID:
|
|
description: Container's ID in the format 'docker://<container_id>'
|
|
type: string
|
|
exitCode:
|
|
description: Exit status from the last termination of
|
|
the container
|
|
format: int32
|
|
type: integer
|
|
finishedAt:
|
|
description: Time at which the container last terminated
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: Message regarding the last termination of
|
|
the container
|
|
type: string
|
|
reason:
|
|
description: (brief) reason from the last termination
|
|
of the container
|
|
type: string
|
|
signal:
|
|
description: Signal from the last termination of the container
|
|
format: int32
|
|
type: integer
|
|
startedAt:
|
|
description: Time at which previous execution of the container
|
|
started
|
|
format: date-time
|
|
type: string
|
|
required:
|
|
- exitCode
|
|
type: object
|
|
waiting:
|
|
description: Details about a waiting container
|
|
properties:
|
|
message:
|
|
description: Message regarding why the container is not
|
|
yet running.
|
|
type: string
|
|
reason:
|
|
description: (brief) reason the container is not yet running.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
type: array
|
|
status:
|
|
description: DaemonSetStatus represents the current status of a
|
|
daemon set.
|
|
properties:
|
|
collisionCount:
|
|
description: Count of hash collisions for the DaemonSet. The
|
|
DaemonSet controller uses this field as a collision avoidance
|
|
mechanism when it needs to create the name for the newest
|
|
ControllerRevision.
|
|
format: int32
|
|
type: integer
|
|
conditions:
|
|
description: Represents the latest available observations of
|
|
a DaemonSet's current state.
|
|
items:
|
|
description: DaemonSetCondition describes the state of a DaemonSet
|
|
at a certain point.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: Last time the condition transitioned from
|
|
one status to another.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: A human readable message indicating details
|
|
about the transition.
|
|
type: string
|
|
reason:
|
|
description: The reason for the condition's last transition.
|
|
type: string
|
|
status:
|
|
description: Status of the condition, one of True, False,
|
|
Unknown.
|
|
type: string
|
|
type:
|
|
description: Type of DaemonSet condition.
|
|
type: string
|
|
required:
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
currentNumberScheduled:
|
|
description: 'The number of nodes that are running at least
|
|
1 daemon pod and are supposed to run the daemon pod. More
|
|
info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
desiredNumberScheduled:
|
|
description: 'The total number of nodes that should be running
|
|
the daemon pod (including nodes correctly running the daemon
|
|
pod). More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
numberAvailable:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have one or more of the daemon pod running
|
|
and available (ready for at least spec.minReadySeconds)
|
|
format: int32
|
|
type: integer
|
|
numberMisscheduled:
|
|
description: 'The number of nodes that are running the daemon
|
|
pod, but are not supposed to run the daemon pod. More info:
|
|
https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/'
|
|
format: int32
|
|
type: integer
|
|
numberReady:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have one or more of the daemon pod running
|
|
and ready.
|
|
format: int32
|
|
type: integer
|
|
numberUnavailable:
|
|
description: The number of nodes that should be running the
|
|
daemon pod and have none of the daemon pod running and available
|
|
(ready for at least spec.minReadySeconds)
|
|
format: int32
|
|
type: integer
|
|
observedGeneration:
|
|
description: The most recent generation observed by the daemon
|
|
set controller.
|
|
format: int64
|
|
type: integer
|
|
updatedNumberScheduled:
|
|
description: The total number of nodes that are running updated
|
|
daemon pod
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- currentNumberScheduled
|
|
- desiredNumberScheduled
|
|
- numberMisscheduled
|
|
- numberReady
|
|
type: object
|
|
required:
|
|
- mismatchedContainerImages
|
|
type: object
|
|
serviceCIDR:
|
|
type: string
|
|
required:
|
|
- clusterID
|
|
- natEnabled
|
|
type: object
|
|
type: object
|
|
version: v1alpha1
|
|
versions:
|
|
- name: v1alpha1
|
|
served: true
|
|
storage: true
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|