github.com/interconnectedcloud/qdr-operator@v0.0.0-20210826174505-576d2b33dac7/deploy/olm-catalog/qdr-operator/0.2.0/qdr-operator.v0.2.0.clusterserviceversion.yaml (about) 1 apiVersion: operators.coreos.com/v1alpha1 2 kind: ClusterServiceVersion 3 metadata: 4 annotations: 5 alm-examples: >- 6 [{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}] 7 capabilities: Basic Install 8 categories: Messaging 9 name: qdr-operator.v0.2.0 10 namespace: placeholder 11 spec: 12 apiservicedefinitions: {} 13 customresourcedefinitions: 14 owned: 15 - version: v1alpha1 16 kind: Interconnect 17 description: An instance of Interconnect 18 displayName: Interconnect 19 name: interconnects.interconnectedcloud.github.io 20 resources: 21 - kind: Service 22 version: v1 23 - kind: Deployment 24 version: v1 25 - kind: ServiceAccount 26 version: v1 27 - kind: interconnects 28 version: v1alpha1 29 - kind: rolebindings 30 version: v1 31 - kind: pods 32 version: v1 33 - kind: configmaps 34 version: v1 35 - kind: roles 36 version: v1 37 - kind: routes 38 version: v1 39 - kind: secrets 40 version: v1 41 specDescriptors: 42 - description: The role and placement plan for the interconnect deployment 43 displayName: DeploymentPlan 44 path: deploymentPlan 45 - description: Listeners for incoming connections to the router 46 displayName: Listeners 47 path: listeners 48 - description: Listeners for inter router mesh connections 49 displayName: InterRouterListeners 50 path: interRouterListeners 51 - description: Listeners for edge downlink connections 52 displayName: EdgeListeners 53 path: edgeListeners 54 - description: TLS/SSL configuration for connections 55 displayName: SslProfiles 56 path: sslProfiles 57 - description: Address configuration for distribution and phasing 58 displayName: Addresses 59 path: addresses 60 - description: Auto links address configuration 61 displayName: AutoLinks 62 path: autoLinks 63 - description: Link routes address configuration 64 displayName: LinkRoutes 65 path: linkRoutes 66 - description: Outbound client connections to AMQP 1.0 entity 67 displayName: Connectors 68 path: connectors 69 - description: Outbound interior router connections for mesh operation 70 displayName: InterRouterConnectors 71 path: interRouterConnectors 72 - description: Outbound edge router connections for edge uplink 73 displayName: EdgeConnectors 74 path: edgeConnectors 75 statusDescriptors: 76 - description: The current revision of the Interconnect cluster 77 displayName: Revision Number 78 path: revNumber 79 - description: The current pods 80 displayName: Pods 81 path: pods 82 - description: The current conditions 83 displayName: Conditions 84 path: conditions 85 description: | 86 87 The Qdr Operator is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. Qdr transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them. 88 89 ### Core Capabilities 90 91 * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms. 92 93 * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected Qdrs. 94 95 * `Edge` mode deployments for extremely large scale device endpoint connectivity. 96 97 * Automatic message traffic re-routing when the network topology changes (resiliency without restrictions). 98 99 * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced). 100 101 * Integrated management with full support for the draft AMQP management specification. 102 103 * Full-featured security capabilities for authentication, authorization, and policy-based resource access control. 104 105 ### Operator Features 106 107 * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources. 108 109 * **Placement directives** - Directives are provided to control how the pods should be scheduled. 110 111 * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup. 112 113 * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications. 114 115 * **Security certificate management** - Certificates are created and managed through integration with [jetstack cert-manager](https://github.com/jetstack/cert-manager). 116 117 ### Troubleshooting 118 119 After deploying Interconnect, check any of the following to verify that it is operating correctly: 120 121 * The Interconnect instance 122 123 * The Deployment (or DaemonSet) instance 124 125 * An individual pod for the Deployment (or DaemonSet) 126 127 * A Route created for exposed services 128 129 In addition, use `qdstat` commands to verify connectivity. 130 131 displayName: Qdr Operator 132 install: 133 spec: 134 deployments: 135 - name: qdr-operator 136 spec: 137 replicas: 1 138 selector: 139 matchLabels: 140 name: qdr-operator 141 template: 142 metadata: 143 labels: 144 name: qdr-operator 145 spec: 146 serviceAccountName: qdr-operator 147 containers: 148 - command: 149 - qdr-operator 150 env: 151 - name: WATCH_NAMESPACE 152 valueFrom: 153 fieldRef: 154 fieldPath: metadata.namespace 155 - name: POD_NAME 156 valueFrom: 157 fieldRef: 158 fieldPath: metadata.name 159 - name: OPERATOR_NAME 160 value: qdr-operator 161 image: quay.io/interconnectedcloud/qdr-operator 162 imagePullPolicy: Always 163 name: qdr-operator 164 ports: 165 - containerPort: 60000 166 name: metrics 167 resources: {} 168 permissions: 169 - rules: 170 - apiGroups: 171 - "" 172 resources: 173 - pods 174 - services 175 - endpoints 176 - serviceaccounts 177 - persistentvolumeclaims 178 - events 179 - configmaps 180 - secrets 181 verbs: 182 - '*' 183 - apiGroups: 184 - "route.openshift.io" 185 resources: 186 - routes 187 - routes/custom-host 188 - routes/status 189 verbs: 190 - get 191 - list 192 - watch 193 - create 194 - delete 195 - apiGroups: 196 - rbac.authorization.k8s.io 197 resources: 198 - rolebindings 199 - roles 200 verbs: 201 - get 202 - list 203 - watch 204 - create 205 - delete 206 - apiGroups: 207 - "" 208 resources: 209 - namespaces 210 verbs: 211 - get 212 - apiGroups: 213 - apps 214 resources: 215 - deployments 216 - daemonsets 217 - replicasets 218 - statefulsets 219 verbs: 220 - '*' 221 - apiGroups: 222 - "certmanager.k8s.io" 223 resources: 224 - issuers 225 - certificates 226 verbs: 227 - get 228 - list 229 - watch 230 - create 231 - delete 232 - apiGroups: 233 - monitoring.coreos.com 234 resources: 235 - servicemonitors 236 verbs: 237 - get 238 - create 239 - apiGroups: 240 - interconnectedcloud.github.io 241 resources: 242 - '*' 243 verbs: 244 - '*' 245 serviceAccountName: qdr-operator 246 strategy: deployment 247 installModes: 248 - supported: true 249 type: OwnNamespace 250 - supported: true 251 type: SingleNamespace 252 - supported: false 253 type: MultiNamespace 254 - supported: true 255 type: AllNamespaces 256 maturity: alpha 257 provider: {} 258 version: 0.2.0