github.com/verrazzano/verrazzano-monitoring-operator@v0.0.30/k8s/crds/verrazzano.io_verrazzanomonitoringinstances.yaml (about) 1 # Copyright (C) 2020, 2022, Oracle and/or its affiliates. 2 # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 --- 4 apiVersion: apiextensions.k8s.io/v1 5 kind: CustomResourceDefinition 6 metadata: 7 annotations: 8 controller-gen.kubebuilder.io/version: v0.8.0 9 creationTimestamp: null 10 name: verrazzanomonitoringinstances.verrazzano.io 11 spec: 12 group: verrazzano.io 13 names: 14 kind: VerrazzanoMonitoringInstance 15 listKind: VerrazzanoMonitoringInstanceList 16 plural: verrazzanomonitoringinstances 17 shortNames: 18 - vmi 19 singular: verrazzanomonitoringinstance 20 scope: Namespaced 21 versions: 22 - name: v1 23 schema: 24 openAPIV3Schema: 25 description: VerrazzanoMonitoringInstance Represents a CRD 26 properties: 27 apiVersion: 28 description: 'APIVersion defines the versioned schema of this representation 29 of an object. Servers should convert recognized schemas to the latest 30 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 31 type: string 32 kind: 33 description: 'Kind is a string value representing the REST resource this 34 object represents. Servers may infer this from the endpoint the client 35 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 36 type: string 37 metadata: 38 type: object 39 spec: 40 description: VerrazzanoMonitoringInstanceSpec defines the attributes a 41 user can specify when creating a VerrazzanoMonitoringInstance 42 properties: 43 IngressClassName: 44 description: the ingress class for external endpoints 45 type: string 46 alertmanager: 47 description: Prometheus details 48 properties: 49 config: 50 type: string 51 configMap: 52 type: string 53 enabled: 54 type: boolean 55 replicas: 56 format: int32 57 type: integer 58 resources: 59 description: Resources details 60 properties: 61 limitCPU: 62 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 63 type: string 64 limitMemory: 65 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 66 type: string 67 maxSizeDisk: 68 description: These fields are not used anywhere 69 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 70 type: string 71 minSizeDisk: 72 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 73 type: string 74 requestCPU: 75 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 76 type: string 77 requestMemory: 78 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 79 type: string 80 type: object 81 versionsConfigMap: 82 type: string 83 required: 84 - enabled 85 type: object 86 api: 87 description: API details 88 properties: 89 replicas: 90 format: int32 91 type: integer 92 type: object 93 autoSecret: 94 description: auto generate a SSL certificate 95 type: boolean 96 cascadingDelete: 97 description: CascadingDelete for cascade deletion of related objects 98 when the VerrazzanoMonitoringInstance is deleted 99 type: boolean 100 contactemail: 101 type: string 102 elasticsearch: 103 description: Elasticsearch details 104 properties: 105 dataNode: 106 description: ElasticsearchNode Type details 107 properties: 108 javaOpts: 109 type: string 110 name: 111 type: string 112 replicas: 113 format: int32 114 type: integer 115 resources: 116 description: Resources details 117 properties: 118 limitCPU: 119 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 120 type: string 121 limitMemory: 122 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 123 type: string 124 maxSizeDisk: 125 description: These fields are not used anywhere 126 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 127 type: string 128 minSizeDisk: 129 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 130 type: string 131 requestCPU: 132 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 133 type: string 134 requestMemory: 135 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 136 type: string 137 type: object 138 roles: 139 items: 140 type: string 141 type: array 142 storage: 143 description: Storage details 144 properties: 145 availabilityDomain: 146 type: string 147 pvcNames: 148 items: 149 type: string 150 type: array 151 size: 152 type: string 153 type: object 154 required: 155 - javaOpts 156 type: object 157 enabled: 158 type: boolean 159 ingestNode: 160 description: ElasticsearchNode Type details 161 properties: 162 javaOpts: 163 type: string 164 name: 165 type: string 166 replicas: 167 format: int32 168 type: integer 169 resources: 170 description: Resources details 171 properties: 172 limitCPU: 173 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 174 type: string 175 limitMemory: 176 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 177 type: string 178 maxSizeDisk: 179 description: These fields are not used anywhere 180 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 181 type: string 182 minSizeDisk: 183 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 184 type: string 185 requestCPU: 186 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 187 type: string 188 requestMemory: 189 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 190 type: string 191 type: object 192 roles: 193 items: 194 type: string 195 type: array 196 storage: 197 description: Storage details 198 properties: 199 availabilityDomain: 200 type: string 201 pvcNames: 202 items: 203 type: string 204 type: array 205 size: 206 type: string 207 type: object 208 required: 209 - javaOpts 210 type: object 211 masterNode: 212 description: ElasticsearchNode Type details 213 properties: 214 javaOpts: 215 type: string 216 name: 217 type: string 218 replicas: 219 format: int32 220 type: integer 221 resources: 222 description: Resources details 223 properties: 224 limitCPU: 225 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 226 type: string 227 limitMemory: 228 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 229 type: string 230 maxSizeDisk: 231 description: These fields are not used anywhere 232 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 233 type: string 234 minSizeDisk: 235 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 236 type: string 237 requestCPU: 238 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 239 type: string 240 requestMemory: 241 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 242 type: string 243 type: object 244 roles: 245 items: 246 type: string 247 type: array 248 storage: 249 description: Storage details 250 properties: 251 availabilityDomain: 252 type: string 253 pvcNames: 254 items: 255 type: string 256 type: array 257 size: 258 type: string 259 type: object 260 required: 261 - javaOpts 262 type: object 263 nodes: 264 items: 265 description: ElasticsearchNode Type details 266 properties: 267 javaOpts: 268 type: string 269 name: 270 type: string 271 replicas: 272 format: int32 273 type: integer 274 resources: 275 description: Resources details 276 properties: 277 limitCPU: 278 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 279 type: string 280 limitMemory: 281 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 282 type: string 283 maxSizeDisk: 284 description: These fields are not used anywhere 285 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 286 type: string 287 minSizeDisk: 288 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 289 type: string 290 requestCPU: 291 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 292 type: string 293 requestMemory: 294 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 295 type: string 296 type: object 297 roles: 298 items: 299 type: string 300 type: array 301 storage: 302 description: Storage details 303 properties: 304 availabilityDomain: 305 type: string 306 pvcNames: 307 items: 308 type: string 309 type: array 310 size: 311 type: string 312 type: object 313 required: 314 - javaOpts 315 type: object 316 type: array 317 plugins: 318 description: OpenSearchPlugins Enable to add 3rd Party / Custom 319 plugins not offered in the default OpenSearch image 320 properties: 321 enabled: 322 description: To enable or disable the non-bundled plugins 323 installation. 324 type: boolean 325 installList: 326 description: InstallList could be the list of plugin names, 327 URLs to the plugin zip file or Maven coordinates. 328 items: 329 type: string 330 type: array 331 required: 332 - enabled 333 type: object 334 policies: 335 items: 336 description: IndexManagementPolicy Defines a policy for managing 337 indices 338 properties: 339 indexPattern: 340 description: Index pattern the policy will be matched to 341 type: string 342 minIndexAge: 343 description: Minimum age of an index before it is automatically 344 deleted 345 pattern: ^[0-9]+(d|h|m|s|ms|micros|nanos)$ 346 type: string 347 policyName: 348 description: Name of the policy 349 type: string 350 rollover: 351 description: RolloverPolicy Settings for Index Management 352 rollover 353 properties: 354 minDocCount: 355 description: Minimum count of documents in an index 356 before it is rolled over 357 type: integer 358 minIndexAge: 359 description: Minimum age of an index before it is rolled 360 over 361 pattern: ^[0-9]+(d|h|m|s|ms|micros|nanos)$ 362 type: string 363 minSize: 364 description: Minimum size of an index before it is rolled 365 over e.g., 20mb, 5gb, etc. 366 pattern: ^[0-9]+(b|kb|mb|gb|tb|pb)$ 367 type: string 368 type: object 369 required: 370 - indexPattern 371 - policyName 372 type: object 373 type: array 374 storage: 375 description: Storage details 376 properties: 377 availabilityDomain: 378 type: string 379 pvcNames: 380 items: 381 type: string 382 type: array 383 size: 384 type: string 385 type: object 386 required: 387 - enabled 388 type: object 389 grafana: 390 description: Grafana details 391 properties: 392 dashboardsConfigMap: 393 type: string 394 database: 395 description: Database details 396 properties: 397 host: 398 type: string 399 name: 400 type: string 401 passwordSecret: 402 type: string 403 type: object 404 datasourcesConfigMap: 405 type: string 406 enabled: 407 type: boolean 408 replicas: 409 format: int32 410 type: integer 411 resources: 412 description: Resources details 413 properties: 414 limitCPU: 415 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 416 type: string 417 limitMemory: 418 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 419 type: string 420 maxSizeDisk: 421 description: These fields are not used anywhere 422 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 423 type: string 424 minSizeDisk: 425 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 426 type: string 427 requestCPU: 428 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 429 type: string 430 requestMemory: 431 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 432 type: string 433 type: object 434 storage: 435 description: Storage details 436 properties: 437 availabilityDomain: 438 type: string 439 pvcNames: 440 items: 441 type: string 442 type: array 443 size: 444 type: string 445 type: object 446 required: 447 - enabled 448 type: object 449 ingressTargetDNSName: 450 description: Will use this as the target in ingress annotations, use 451 this when using OCI LB and external-dns so that we point to the 452 svc CNAME created 453 type: string 454 kibana: 455 description: Kibana details 456 properties: 457 enabled: 458 type: boolean 459 plugins: 460 description: OpenSearchDashboardsPlugins is an alias of OpenSearchPlugins 461 as both have the same properties. Enable to add 3rd Party / 462 Custom plugins not offered in the default OpenSearch-Dashboards 463 image 464 properties: 465 enabled: 466 description: To enable or disable the non-bundled plugins 467 installation. 468 type: boolean 469 installList: 470 description: InstallList could be the list of plugin names, 471 URLs to the plugin zip file or Maven coordinates. 472 items: 473 type: string 474 type: array 475 required: 476 - enabled 477 type: object 478 replicas: 479 format: int32 480 type: integer 481 resources: 482 description: Resources details 483 properties: 484 limitCPU: 485 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 486 type: string 487 limitMemory: 488 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 489 type: string 490 maxSizeDisk: 491 description: These fields are not used anywhere 492 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 493 type: string 494 minSizeDisk: 495 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 496 type: string 497 requestCPU: 498 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 499 type: string 500 requestMemory: 501 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 502 type: string 503 type: object 504 required: 505 - enabled 506 type: object 507 lock: 508 description: If lock, controller will not sync/process the VerrazzanoMonitoringInstance 509 env 510 type: boolean 511 natGatewayIPs: 512 items: 513 type: string 514 type: array 515 prometheus: 516 description: Prometheus details 517 properties: 518 configMap: 519 type: string 520 enabled: 521 type: boolean 522 http2Enabled: 523 type: boolean 524 replicas: 525 format: int32 526 type: integer 527 resources: 528 description: Resources details 529 properties: 530 limitCPU: 531 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 532 type: string 533 limitMemory: 534 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 535 type: string 536 maxSizeDisk: 537 description: These fields are not used anywhere 538 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 539 type: string 540 minSizeDisk: 541 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 542 type: string 543 requestCPU: 544 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 545 type: string 546 requestMemory: 547 pattern: ^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$ 548 type: string 549 type: object 550 retentionPeriod: 551 format: int32 552 type: integer 553 rulesConfigMap: 554 type: string 555 rulesVersionsConfigMap: 556 type: string 557 storage: 558 description: Storage details 559 properties: 560 availabilityDomain: 561 type: string 562 pvcNames: 563 items: 564 type: string 565 type: array 566 size: 567 type: string 568 type: object 569 versionsConfigMap: 570 type: string 571 required: 572 - enabled 573 type: object 574 secretsName: 575 description: a secret which contains secrets VerrazzanoMonitoringInstance 576 needs to startup examples being username, password, tls.crt, tls.key 577 type: string 578 serviceType: 579 description: Service type for component services 580 type: string 581 storageClass: 582 type: string 583 uri: 584 description: the external endpoint or uniform resource identifier 585 type: string 586 versioning: 587 description: Version details 588 properties: 589 currentVersion: 590 type: string 591 desiredVersion: 592 type: string 593 type: object 594 required: 595 - alertmanager 596 - autoSecret 597 - cascadingDelete 598 - elasticsearch 599 - grafana 600 - ingressTargetDNSName 601 - kibana 602 - lock 603 - prometheus 604 - secretsName 605 - serviceType 606 type: object 607 status: 608 description: VerrazzanoMonitoringInstanceStatus Object tracks the current 609 running VerrazzanoMonitoringInstance state 610 properties: 611 creationTime: 612 format: date-time 613 type: string 614 envName: 615 description: The name of the operator environment in which this VerrazzanoMonitoringInstance 616 instance lives 617 type: string 618 hash: 619 format: int32 620 type: integer 621 state: 622 type: string 623 required: 624 - envName 625 - hash 626 - state 627 type: object 628 required: 629 - metadata 630 - spec 631 - status 632 type: object 633 served: true 634 storage: true 635 status: 636 acceptedNames: 637 kind: "" 638 plural: "" 639 conditions: [] 640 storedVersions: []