github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/docs/developer_docs/api-reference/cluster.md (about) 1 --- 2 title: Cluster API Reference 3 description: Cluster API Reference 4 keywords: [cluster, api] 5 sidebar_position: 1 6 sidebar_label: Cluster 7 --- 8 <br /> 9 <p>Packages:</p> 10 <ul> 11 <li> 12 <a href="#apps.kubeblocks.io%2fv1alpha1">apps.kubeblocks.io/v1alpha1</a> 13 </li> 14 </ul> 15 <h2 id="apps.kubeblocks.io/v1alpha1">apps.kubeblocks.io/v1alpha1</h2> 16 <div> 17 </div> 18 Resource Types: 19 <ul><li> 20 <a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyTemplate">BackupPolicyTemplate</a> 21 </li><li> 22 <a href="#apps.kubeblocks.io/v1alpha1.Cluster">Cluster</a> 23 </li><li> 24 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinition">ClusterDefinition</a> 25 </li><li> 26 <a href="#apps.kubeblocks.io/v1alpha1.ClusterVersion">ClusterVersion</a> 27 </li><li> 28 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinition">ComponentClassDefinition</a> 29 </li><li> 30 <a href="#apps.kubeblocks.io/v1alpha1.ComponentResourceConstraint">ComponentResourceConstraint</a> 31 </li><li> 32 <a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraint">ConfigConstraint</a> 33 </li><li> 34 <a href="#apps.kubeblocks.io/v1alpha1.OpsRequest">OpsRequest</a> 35 </li></ul> 36 <h3 id="apps.kubeblocks.io/v1alpha1.BackupPolicyTemplate">BackupPolicyTemplate 37 </h3> 38 <div> 39 <p>BackupPolicyTemplate is the Schema for the BackupPolicyTemplates API (defined by provider)</p><br /> 40 </div> 41 <table> 42 <thead> 43 <tr> 44 <th>Field</th> 45 <th>Description</th> 46 </tr> 47 </thead> 48 <tbody> 49 <tr> 50 <td> 51 <code>apiVersion</code><br/> 52 string</td> 53 <td> 54 <code>apps.kubeblocks.io/v1alpha1</code> 55 </td> 56 </tr> 57 <tr> 58 <td> 59 <code>kind</code><br/> 60 string 61 </td> 62 <td><code>BackupPolicyTemplate</code></td> 63 </tr> 64 <tr> 65 <td> 66 <code>metadata</code><br/> 67 <em> 68 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 69 Kubernetes meta/v1.ObjectMeta 70 </a> 71 </em> 72 </td> 73 <td> 74 Refer to the Kubernetes API documentation for the fields of the 75 <code>metadata</code> field. 76 </td> 77 </tr> 78 <tr> 79 <td> 80 <code>spec</code><br/> 81 <em> 82 <a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyTemplateSpec"> 83 BackupPolicyTemplateSpec 84 </a> 85 </em> 86 </td> 87 <td> 88 <br/> 89 <br/> 90 <table> 91 <tr> 92 <td> 93 <code>clusterDefinitionRef</code><br/> 94 <em> 95 string 96 </em> 97 </td> 98 <td> 99 <p>clusterDefinitionRef references ClusterDefinition name, this is an immutable attribute.</p><br /> 100 </td> 101 </tr> 102 <tr> 103 <td> 104 <code>backupPolicies</code><br/> 105 <em> 106 <a href="#apps.kubeblocks.io/v1alpha1.BackupPolicy"> 107 []BackupPolicy 108 </a> 109 </em> 110 </td> 111 <td> 112 <p>backupPolicies is a list of backup policy template for the specified componentDefinition.</p><br /> 113 </td> 114 </tr> 115 <tr> 116 <td> 117 <code>identifier</code><br/> 118 <em> 119 string 120 </em> 121 </td> 122 <td> 123 <em>(Optional)</em> 124 <p>Identifier is a unique identifier for this BackupPolicyTemplate.<br />this identifier will be the suffix of the automatically generated backupPolicy name.<br />and must be added when multiple BackupPolicyTemplates exist,<br />otherwise the generated backupPolicy override will occur.</p><br /> 125 </td> 126 </tr> 127 </table> 128 </td> 129 </tr> 130 <tr> 131 <td> 132 <code>status</code><br/> 133 <em> 134 <a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyTemplateStatus"> 135 BackupPolicyTemplateStatus 136 </a> 137 </em> 138 </td> 139 <td> 140 </td> 141 </tr> 142 </tbody> 143 </table> 144 <h3 id="apps.kubeblocks.io/v1alpha1.Cluster">Cluster 145 </h3> 146 <div> 147 <p>Cluster is the Schema for the clusters API.</p><br /> 148 </div> 149 <table> 150 <thead> 151 <tr> 152 <th>Field</th> 153 <th>Description</th> 154 </tr> 155 </thead> 156 <tbody> 157 <tr> 158 <td> 159 <code>apiVersion</code><br/> 160 string</td> 161 <td> 162 <code>apps.kubeblocks.io/v1alpha1</code> 163 </td> 164 </tr> 165 <tr> 166 <td> 167 <code>kind</code><br/> 168 string 169 </td> 170 <td><code>Cluster</code></td> 171 </tr> 172 <tr> 173 <td> 174 <code>metadata</code><br/> 175 <em> 176 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 177 Kubernetes meta/v1.ObjectMeta 178 </a> 179 </em> 180 </td> 181 <td> 182 Refer to the Kubernetes API documentation for the fields of the 183 <code>metadata</code> field. 184 </td> 185 </tr> 186 <tr> 187 <td> 188 <code>spec</code><br/> 189 <em> 190 <a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec"> 191 ClusterSpec 192 </a> 193 </em> 194 </td> 195 <td> 196 <br/> 197 <br/> 198 <table> 199 <tr> 200 <td> 201 <code>clusterDefinitionRef</code><br/> 202 <em> 203 string 204 </em> 205 </td> 206 <td> 207 <p>Cluster referencing ClusterDefinition name. This is an immutable attribute.</p><br /> 208 </td> 209 </tr> 210 <tr> 211 <td> 212 <code>clusterVersionRef</code><br/> 213 <em> 214 string 215 </em> 216 </td> 217 <td> 218 <em>(Optional)</em> 219 <p>Cluster referencing ClusterVersion name.</p><br /> 220 </td> 221 </tr> 222 <tr> 223 <td> 224 <code>terminationPolicy</code><br/> 225 <em> 226 <a href="#apps.kubeblocks.io/v1alpha1.TerminationPolicyType"> 227 TerminationPolicyType 228 </a> 229 </em> 230 </td> 231 <td> 232 <p>Cluster termination policy. Valid values are DoNotTerminate, Halt, Delete, WipeOut.<br />DoNotTerminate will block delete operation.<br />Halt will delete workload resources such as statefulset, deployment workloads but keep PVCs.<br />Delete is based on Halt and deletes PVCs.<br />WipeOut is based on Delete and wipe out all volume snapshots and snapshot data from backup storage location.</p><br /> 233 </td> 234 </tr> 235 <tr> 236 <td> 237 <code>componentSpecs</code><br/> 238 <em> 239 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec"> 240 []ClusterComponentSpec 241 </a> 242 </em> 243 </td> 244 <td> 245 <p>List of componentSpecs you want to replace in ClusterDefinition and ClusterVersion. It will replace the field in ClusterDefinition’s and ClusterVersion’s component if type is matching.</p><br /> 246 </td> 247 </tr> 248 <tr> 249 <td> 250 <code>tenancy</code><br/> 251 <em> 252 <a href="#apps.kubeblocks.io/v1alpha1.TenancyType"> 253 TenancyType 254 </a> 255 </em> 256 </td> 257 <td> 258 <em>(Optional)</em> 259 <p>tenancy describes how pods are distributed across node.<br />SharedNode means multiple pods may share the same node.<br />DedicatedNode means each pod runs on their own dedicated node.</p><br /> 260 </td> 261 </tr> 262 <tr> 263 <td> 264 <code>availabilityPolicy</code><br/> 265 <em> 266 <a href="#apps.kubeblocks.io/v1alpha1.AvailabilityPolicyType"> 267 AvailabilityPolicyType 268 </a> 269 </em> 270 </td> 271 <td> 272 <em>(Optional)</em> 273 <p>availabilityPolicy describes the availability policy, including zone, node, and none.</p><br /> 274 </td> 275 </tr> 276 <tr> 277 <td> 278 <code>affinity</code><br/> 279 <em> 280 <a href="#apps.kubeblocks.io/v1alpha1.Affinity"> 281 Affinity 282 </a> 283 </em> 284 </td> 285 <td> 286 <em>(Optional)</em> 287 <p>affinity is a group of affinity scheduling rules.</p><br /> 288 </td> 289 </tr> 290 <tr> 291 <td> 292 <code>tolerations</code><br/> 293 <em> 294 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#toleration-v1-core"> 295 []Kubernetes core/v1.Toleration 296 </a> 297 </em> 298 </td> 299 <td> 300 <em>(Optional)</em> 301 <p>tolerations are attached to tolerate any taint that matches the triple <code>key,value,effect</code> using the matching operator <code>operator</code>.</p><br /> 302 </td> 303 </tr> 304 <tr> 305 <td> 306 <code>replicas</code><br/> 307 <em> 308 int32 309 </em> 310 </td> 311 <td> 312 <em>(Optional)</em> 313 <p>replicas specifies the replicas of the first componentSpec, if the replicas of the first componentSpec is specified, this value will be ignored.</p><br /> 314 </td> 315 </tr> 316 <tr> 317 <td> 318 <code>resources</code><br/> 319 <em> 320 <a href="#apps.kubeblocks.io/v1alpha1.ClusterResources"> 321 ClusterResources 322 </a> 323 </em> 324 </td> 325 <td> 326 <em>(Optional)</em> 327 <p>resources specifies the resources of the first componentSpec, if the resources of the first componentSpec is specified, this value will be ignored.</p><br /> 328 </td> 329 </tr> 330 <tr> 331 <td> 332 <code>storage</code><br/> 333 <em> 334 <a href="#apps.kubeblocks.io/v1alpha1.ClusterStorage"> 335 ClusterStorage 336 </a> 337 </em> 338 </td> 339 <td> 340 <em>(Optional)</em> 341 <p>storage specifies the storage of the first componentSpec, if the storage of the first componentSpec is specified, this value will be ignored.</p><br /> 342 </td> 343 </tr> 344 <tr> 345 <td> 346 <code>monitor</code><br/> 347 <em> 348 <a href="#apps.kubeblocks.io/v1alpha1.ClusterMonitor"> 349 ClusterMonitor 350 </a> 351 </em> 352 </td> 353 <td> 354 <em>(Optional)</em> 355 <p>monitor specifies the configuration of monitor</p><br /> 356 </td> 357 </tr> 358 <tr> 359 <td> 360 <code>network</code><br/> 361 <em> 362 <a href="#apps.kubeblocks.io/v1alpha1.ClusterNetwork"> 363 ClusterNetwork 364 </a> 365 </em> 366 </td> 367 <td> 368 <em>(Optional)</em> 369 <p>network specifies the configuration of network</p><br /> 370 </td> 371 </tr> 372 <tr> 373 <td> 374 <code>backup</code><br/> 375 <em> 376 <a href="#apps.kubeblocks.io/v1alpha1.ClusterBackup"> 377 ClusterBackup 378 </a> 379 </em> 380 </td> 381 <td> 382 <em>(Optional)</em> 383 <p>cluster backup configuration.</p><br /> 384 </td> 385 </tr> 386 </table> 387 </td> 388 </tr> 389 <tr> 390 <td> 391 <code>status</code><br/> 392 <em> 393 <a href="#apps.kubeblocks.io/v1alpha1.ClusterStatus"> 394 ClusterStatus 395 </a> 396 </em> 397 </td> 398 <td> 399 </td> 400 </tr> 401 </tbody> 402 </table> 403 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterDefinition">ClusterDefinition 404 </h3> 405 <div> 406 <p>ClusterDefinition is the Schema for the clusterdefinitions API</p><br /> 407 </div> 408 <table> 409 <thead> 410 <tr> 411 <th>Field</th> 412 <th>Description</th> 413 </tr> 414 </thead> 415 <tbody> 416 <tr> 417 <td> 418 <code>apiVersion</code><br/> 419 string</td> 420 <td> 421 <code>apps.kubeblocks.io/v1alpha1</code> 422 </td> 423 </tr> 424 <tr> 425 <td> 426 <code>kind</code><br/> 427 string 428 </td> 429 <td><code>ClusterDefinition</code></td> 430 </tr> 431 <tr> 432 <td> 433 <code>metadata</code><br/> 434 <em> 435 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 436 Kubernetes meta/v1.ObjectMeta 437 </a> 438 </em> 439 </td> 440 <td> 441 Refer to the Kubernetes API documentation for the fields of the 442 <code>metadata</code> field. 443 </td> 444 </tr> 445 <tr> 446 <td> 447 <code>spec</code><br/> 448 <em> 449 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionSpec"> 450 ClusterDefinitionSpec 451 </a> 452 </em> 453 </td> 454 <td> 455 <br/> 456 <br/> 457 <table> 458 <tr> 459 <td> 460 <code>type</code><br/> 461 <em> 462 string 463 </em> 464 </td> 465 <td> 466 <em>(Optional)</em> 467 <p>Cluster definition type defines well known application cluster type, e.g. mysql/redis/mongodb</p><br /> 468 </td> 469 </tr> 470 <tr> 471 <td> 472 <code>componentDefs</code><br/> 473 <em> 474 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition"> 475 []ClusterComponentDefinition 476 </a> 477 </em> 478 </td> 479 <td> 480 <p>componentDefs provides cluster components definitions.</p><br /> 481 </td> 482 </tr> 483 <tr> 484 <td> 485 <code>connectionCredential</code><br/> 486 <em> 487 map[string]string 488 </em> 489 </td> 490 <td> 491 <em>(Optional)</em> 492 <p>Connection credential template used for creating a connection credential<br />secret for cluster.apps.kubeblocks.io object.</p><br /><br /><p>Built-in objects are:<br />- <code>$(RANDOM_PASSWD)</code> - random 8 characters.<br />- <code>$(UUID)</code> - generate a random UUID v4 string.<br />- <code>$(UUID_B64)</code> - generate a random UUID v4 BASE64 encoded string.<br />- <code>$(UUID_STR_B64)</code> - generate a random UUID v4 string then BASE64 encoded.<br />- <code>$(UUID_HEX)</code> - generate a random UUID v4 HEX representation.<br />- <code>$(HEADLESS_SVC_FQDN)</code> - headless service FQDN placeholder, value pattern - $(CLUSTER_NAME)-$(1ST_COMP_NAME)-headless.$(NAMESPACE).svc,<br /> where 1ST_COMP_NAME is the 1st component that provide <code>ClusterDefinition.spec.componentDefs[].service</code> attribute;<br />- <code>$(SVC_FQDN)</code> - service FQDN placeholder, value pattern - $(CLUSTER_NAME)-$(1ST_COMP_NAME).$(NAMESPACE).svc,<br /> where 1ST_COMP_NAME is the 1st component that provide <code>ClusterDefinition.spec.componentDefs[].service</code> attribute;<br />- <code>$(SVC_PORT_{PORT-NAME})</code> - a ServicePort’s port value with specified port name, i.e, a servicePort JSON struct:<br /> <code>{"name": "mysql", "targetPort": "mysqlContainerPort", "port": 3306}</code>, and “$(SVC_PORT_mysql)” in the<br /> connection credential value is 3306.</p><br /> 493 </td> 494 </tr> 495 </table> 496 </td> 497 </tr> 498 <tr> 499 <td> 500 <code>status</code><br/> 501 <em> 502 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionStatus"> 503 ClusterDefinitionStatus 504 </a> 505 </em> 506 </td> 507 <td> 508 </td> 509 </tr> 510 </tbody> 511 </table> 512 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterVersion">ClusterVersion 513 </h3> 514 <div> 515 <p>ClusterVersion is the Schema for the ClusterVersions API</p><br /> 516 </div> 517 <table> 518 <thead> 519 <tr> 520 <th>Field</th> 521 <th>Description</th> 522 </tr> 523 </thead> 524 <tbody> 525 <tr> 526 <td> 527 <code>apiVersion</code><br/> 528 string</td> 529 <td> 530 <code>apps.kubeblocks.io/v1alpha1</code> 531 </td> 532 </tr> 533 <tr> 534 <td> 535 <code>kind</code><br/> 536 string 537 </td> 538 <td><code>ClusterVersion</code></td> 539 </tr> 540 <tr> 541 <td> 542 <code>metadata</code><br/> 543 <em> 544 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 545 Kubernetes meta/v1.ObjectMeta 546 </a> 547 </em> 548 </td> 549 <td> 550 Refer to the Kubernetes API documentation for the fields of the 551 <code>metadata</code> field. 552 </td> 553 </tr> 554 <tr> 555 <td> 556 <code>spec</code><br/> 557 <em> 558 <a href="#apps.kubeblocks.io/v1alpha1.ClusterVersionSpec"> 559 ClusterVersionSpec 560 </a> 561 </em> 562 </td> 563 <td> 564 <br/> 565 <br/> 566 <table> 567 <tr> 568 <td> 569 <code>clusterDefinitionRef</code><br/> 570 <em> 571 string 572 </em> 573 </td> 574 <td> 575 <p>ref ClusterDefinition.</p><br /> 576 </td> 577 </tr> 578 <tr> 579 <td> 580 <code>componentVersions</code><br/> 581 <em> 582 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVersion"> 583 []ClusterComponentVersion 584 </a> 585 </em> 586 </td> 587 <td> 588 <p>List of components’ containers versioning context, i.e., container image ID, container commands, args., and environments.</p><br /> 589 </td> 590 </tr> 591 </table> 592 </td> 593 </tr> 594 <tr> 595 <td> 596 <code>status</code><br/> 597 <em> 598 <a href="#apps.kubeblocks.io/v1alpha1.ClusterVersionStatus"> 599 ClusterVersionStatus 600 </a> 601 </em> 602 </td> 603 <td> 604 </td> 605 </tr> 606 </tbody> 607 </table> 608 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentClassDefinition">ComponentClassDefinition 609 </h3> 610 <div> 611 <p>ComponentClassDefinition is the Schema for the componentclassdefinitions API</p><br /> 612 </div> 613 <table> 614 <thead> 615 <tr> 616 <th>Field</th> 617 <th>Description</th> 618 </tr> 619 </thead> 620 <tbody> 621 <tr> 622 <td> 623 <code>apiVersion</code><br/> 624 string</td> 625 <td> 626 <code>apps.kubeblocks.io/v1alpha1</code> 627 </td> 628 </tr> 629 <tr> 630 <td> 631 <code>kind</code><br/> 632 string 633 </td> 634 <td><code>ComponentClassDefinition</code></td> 635 </tr> 636 <tr> 637 <td> 638 <code>metadata</code><br/> 639 <em> 640 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 641 Kubernetes meta/v1.ObjectMeta 642 </a> 643 </em> 644 </td> 645 <td> 646 Refer to the Kubernetes API documentation for the fields of the 647 <code>metadata</code> field. 648 </td> 649 </tr> 650 <tr> 651 <td> 652 <code>spec</code><br/> 653 <em> 654 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinitionSpec"> 655 ComponentClassDefinitionSpec 656 </a> 657 </em> 658 </td> 659 <td> 660 <br/> 661 <br/> 662 <table> 663 <tr> 664 <td> 665 <code>groups</code><br/> 666 <em> 667 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassGroup"> 668 []ComponentClassGroup 669 </a> 670 </em> 671 </td> 672 <td> 673 <em>(Optional)</em> 674 <p>group defines a list of class series that conform to the same constraint.</p><br /> 675 </td> 676 </tr> 677 </table> 678 </td> 679 </tr> 680 <tr> 681 <td> 682 <code>status</code><br/> 683 <em> 684 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinitionStatus"> 685 ComponentClassDefinitionStatus 686 </a> 687 </em> 688 </td> 689 <td> 690 </td> 691 </tr> 692 </tbody> 693 </table> 694 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentResourceConstraint">ComponentResourceConstraint 695 </h3> 696 <div> 697 <p>ComponentResourceConstraint is the Schema for the componentresourceconstraints API</p><br /> 698 </div> 699 <table> 700 <thead> 701 <tr> 702 <th>Field</th> 703 <th>Description</th> 704 </tr> 705 </thead> 706 <tbody> 707 <tr> 708 <td> 709 <code>apiVersion</code><br/> 710 string</td> 711 <td> 712 <code>apps.kubeblocks.io/v1alpha1</code> 713 </td> 714 </tr> 715 <tr> 716 <td> 717 <code>kind</code><br/> 718 string 719 </td> 720 <td><code>ComponentResourceConstraint</code></td> 721 </tr> 722 <tr> 723 <td> 724 <code>metadata</code><br/> 725 <em> 726 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 727 Kubernetes meta/v1.ObjectMeta 728 </a> 729 </em> 730 </td> 731 <td> 732 Refer to the Kubernetes API documentation for the fields of the 733 <code>metadata</code> field. 734 </td> 735 </tr> 736 <tr> 737 <td> 738 <code>spec</code><br/> 739 <em> 740 <a href="#apps.kubeblocks.io/v1alpha1.ComponentResourceConstraintSpec"> 741 ComponentResourceConstraintSpec 742 </a> 743 </em> 744 </td> 745 <td> 746 <br/> 747 <br/> 748 <table> 749 <tr> 750 <td> 751 <code>rules</code><br/> 752 <em> 753 <a href="#apps.kubeblocks.io/v1alpha1.ResourceConstraintRule"> 754 []ResourceConstraintRule 755 </a> 756 </em> 757 </td> 758 <td> 759 <p>Component resource constraint rules.</p><br /> 760 </td> 761 </tr> 762 <tr> 763 <td> 764 <code>selector</code><br/> 765 <em> 766 <a href="#apps.kubeblocks.io/v1alpha1.ClusterResourceConstraintSelector"> 767 []ClusterResourceConstraintSelector 768 </a> 769 </em> 770 </td> 771 <td> 772 <em>(Optional)</em> 773 <p>selector is used to bind the resource constraint to cluster definitions.</p><br /> 774 </td> 775 </tr> 776 </table> 777 </td> 778 </tr> 779 </tbody> 780 </table> 781 <h3 id="apps.kubeblocks.io/v1alpha1.ConfigConstraint">ConfigConstraint 782 </h3> 783 <div> 784 <p>ConfigConstraint is the Schema for the configconstraint API</p><br /> 785 </div> 786 <table> 787 <thead> 788 <tr> 789 <th>Field</th> 790 <th>Description</th> 791 </tr> 792 </thead> 793 <tbody> 794 <tr> 795 <td> 796 <code>apiVersion</code><br/> 797 string</td> 798 <td> 799 <code>apps.kubeblocks.io/v1alpha1</code> 800 </td> 801 </tr> 802 <tr> 803 <td> 804 <code>kind</code><br/> 805 string 806 </td> 807 <td><code>ConfigConstraint</code></td> 808 </tr> 809 <tr> 810 <td> 811 <code>metadata</code><br/> 812 <em> 813 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 814 Kubernetes meta/v1.ObjectMeta 815 </a> 816 </em> 817 </td> 818 <td> 819 Refer to the Kubernetes API documentation for the fields of the 820 <code>metadata</code> field. 821 </td> 822 </tr> 823 <tr> 824 <td> 825 <code>spec</code><br/> 826 <em> 827 <a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec"> 828 ConfigConstraintSpec 829 </a> 830 </em> 831 </td> 832 <td> 833 <br/> 834 <br/> 835 <table> 836 <tr> 837 <td> 838 <code>reloadOptions</code><br/> 839 <em> 840 <a href="#apps.kubeblocks.io/v1alpha1.ReloadOptions"> 841 ReloadOptions 842 </a> 843 </em> 844 </td> 845 <td> 846 <em>(Optional)</em> 847 <p>reloadOptions indicates whether the process supports reload.<br />if set, the controller will determine the behavior of the engine instance based on the configuration templates,<br />restart or reload depending on whether any parameters in the StaticParameters have been modified.</p><br /> 848 </td> 849 </tr> 850 <tr> 851 <td> 852 <code>toolsImageSpec</code><br/> 853 <em> 854 <a href="#apps.kubeblocks.io/v1alpha1.ToolsImageSpec"> 855 ToolsImageSpec 856 </a> 857 </em> 858 </td> 859 <td> 860 <em>(Optional)</em> 861 <p>toolConfig used to config init container.</p><br /> 862 </td> 863 </tr> 864 <tr> 865 <td> 866 <code>downwardAPIOptions</code><br/> 867 <em> 868 <a href="#apps.kubeblocks.io/v1alpha1.DownwardAPIOption"> 869 []DownwardAPIOption 870 </a> 871 </em> 872 </td> 873 <td> 874 <em>(Optional)</em> 875 <p>downwardAPIOptions is used to watch pod fields.</p><br /> 876 </td> 877 </tr> 878 <tr> 879 <td> 880 <code>scriptConfigs</code><br/> 881 <em> 882 <a href="#apps.kubeblocks.io/v1alpha1.ScriptConfig"> 883 []ScriptConfig 884 </a> 885 </em> 886 </td> 887 <td> 888 <em>(Optional)</em> 889 <p>scriptConfigs, list of ScriptConfig, witch these scripts can be used by volume trigger,downward trigger, or tool image</p><br /> 890 </td> 891 </tr> 892 <tr> 893 <td> 894 <code>cfgSchemaTopLevelName</code><br/> 895 <em> 896 string 897 </em> 898 </td> 899 <td> 900 <em>(Optional)</em> 901 <p>cfgSchemaTopLevelName is cue type name, which generates openapi schema.</p><br /> 902 </td> 903 </tr> 904 <tr> 905 <td> 906 <code>configurationSchema</code><br/> 907 <em> 908 <a href="#apps.kubeblocks.io/v1alpha1.CustomParametersValidation"> 909 CustomParametersValidation 910 </a> 911 </em> 912 </td> 913 <td> 914 <em>(Optional)</em> 915 <p>configurationSchema imposes restrictions on database parameter’s rule.</p><br /> 916 </td> 917 </tr> 918 <tr> 919 <td> 920 <code>staticParameters</code><br/> 921 <em> 922 []string 923 </em> 924 </td> 925 <td> 926 <em>(Optional)</em> 927 <p>staticParameters, list of StaticParameter, modifications of them trigger a process restart.</p><br /> 928 </td> 929 </tr> 930 <tr> 931 <td> 932 <code>dynamicParameters</code><br/> 933 <em> 934 []string 935 </em> 936 </td> 937 <td> 938 <em>(Optional)</em> 939 <p>dynamicParameters, list of DynamicParameter, modifications of them trigger a config dynamic reload without process restart.</p><br /> 940 </td> 941 </tr> 942 <tr> 943 <td> 944 <code>immutableParameters</code><br/> 945 <em> 946 []string 947 </em> 948 </td> 949 <td> 950 <em>(Optional)</em> 951 <p>immutableParameters describes parameters that prohibit user from modification.</p><br /> 952 </td> 953 </tr> 954 <tr> 955 <td> 956 <code>selector</code><br/> 957 <em> 958 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#labelselector-v1-meta"> 959 Kubernetes meta/v1.LabelSelector 960 </a> 961 </em> 962 </td> 963 <td> 964 <p>selector is used to match the label on the pod,<br />for example, a pod of the primary is match on the patroni cluster.</p><br /> 965 </td> 966 </tr> 967 <tr> 968 <td> 969 <code>formatterConfig</code><br/> 970 <em> 971 <a href="#apps.kubeblocks.io/v1alpha1.FormatterConfig"> 972 FormatterConfig 973 </a> 974 </em> 975 </td> 976 <td> 977 <p>formatterConfig describes the format of the configuration file, the controller<br />1. parses configuration file<br />2. analyzes the modified parameters<br />3. applies corresponding policies.</p><br /> 978 </td> 979 </tr> 980 </table> 981 </td> 982 </tr> 983 <tr> 984 <td> 985 <code>status</code><br/> 986 <em> 987 <a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintStatus"> 988 ConfigConstraintStatus 989 </a> 990 </em> 991 </td> 992 <td> 993 </td> 994 </tr> 995 </tbody> 996 </table> 997 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRequest">OpsRequest 998 </h3> 999 <div> 1000 <p>OpsRequest is the Schema for the opsrequests API</p><br /> 1001 </div> 1002 <table> 1003 <thead> 1004 <tr> 1005 <th>Field</th> 1006 <th>Description</th> 1007 </tr> 1008 </thead> 1009 <tbody> 1010 <tr> 1011 <td> 1012 <code>apiVersion</code><br/> 1013 string</td> 1014 <td> 1015 <code>apps.kubeblocks.io/v1alpha1</code> 1016 </td> 1017 </tr> 1018 <tr> 1019 <td> 1020 <code>kind</code><br/> 1021 string 1022 </td> 1023 <td><code>OpsRequest</code></td> 1024 </tr> 1025 <tr> 1026 <td> 1027 <code>metadata</code><br/> 1028 <em> 1029 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#objectmeta-v1-meta"> 1030 Kubernetes meta/v1.ObjectMeta 1031 </a> 1032 </em> 1033 </td> 1034 <td> 1035 Refer to the Kubernetes API documentation for the fields of the 1036 <code>metadata</code> field. 1037 </td> 1038 </tr> 1039 <tr> 1040 <td> 1041 <code>spec</code><br/> 1042 <em> 1043 <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec"> 1044 OpsRequestSpec 1045 </a> 1046 </em> 1047 </td> 1048 <td> 1049 <br/> 1050 <br/> 1051 <table> 1052 <tr> 1053 <td> 1054 <code>clusterRef</code><br/> 1055 <em> 1056 string 1057 </em> 1058 </td> 1059 <td> 1060 <p>clusterRef references clusterDefinition.</p><br /> 1061 </td> 1062 </tr> 1063 <tr> 1064 <td> 1065 <code>cancel</code><br/> 1066 <em> 1067 bool 1068 </em> 1069 </td> 1070 <td> 1071 <em>(Optional)</em> 1072 <p>cancel defines the action to cancel the Pending/Creating/Running opsRequest, supported types: [VerticalScaling, HorizontalScaling].<br />once cancel is set to true, this opsRequest will be canceled and modifying this property again will not take effect.</p><br /> 1073 </td> 1074 </tr> 1075 <tr> 1076 <td> 1077 <code>type</code><br/> 1078 <em> 1079 <a href="#apps.kubeblocks.io/v1alpha1.OpsType"> 1080 OpsType 1081 </a> 1082 </em> 1083 </td> 1084 <td> 1085 <p>type defines the operation type.</p><br /> 1086 </td> 1087 </tr> 1088 <tr> 1089 <td> 1090 <code>ttlSecondsAfterSucceed</code><br/> 1091 <em> 1092 int32 1093 </em> 1094 </td> 1095 <td> 1096 <em>(Optional)</em> 1097 <p>ttlSecondsAfterSucceed OpsRequest will be deleted after TTLSecondsAfterSucceed second when OpsRequest.status.phase is Succeed.</p><br /> 1098 </td> 1099 </tr> 1100 <tr> 1101 <td> 1102 <code>upgrade</code><br/> 1103 <em> 1104 <a href="#apps.kubeblocks.io/v1alpha1.Upgrade"> 1105 Upgrade 1106 </a> 1107 </em> 1108 </td> 1109 <td> 1110 <em>(Optional)</em> 1111 <p>upgrade specifies the cluster version by specifying clusterVersionRef.</p><br /> 1112 </td> 1113 </tr> 1114 <tr> 1115 <td> 1116 <code>horizontalScaling</code><br/> 1117 <em> 1118 <a href="#apps.kubeblocks.io/v1alpha1.HorizontalScaling"> 1119 []HorizontalScaling 1120 </a> 1121 </em> 1122 </td> 1123 <td> 1124 <em>(Optional)</em> 1125 <p>horizontalScaling defines what component need to horizontal scale the specified replicas.</p><br /> 1126 </td> 1127 </tr> 1128 <tr> 1129 <td> 1130 <code>volumeExpansion</code><br/> 1131 <em> 1132 <a href="#apps.kubeblocks.io/v1alpha1.VolumeExpansion"> 1133 []VolumeExpansion 1134 </a> 1135 </em> 1136 </td> 1137 <td> 1138 <em>(Optional)</em> 1139 <p>volumeExpansion defines what component and volumeClaimTemplate need to expand the specified storage.</p><br /> 1140 </td> 1141 </tr> 1142 <tr> 1143 <td> 1144 <code>restart</code><br/> 1145 <em> 1146 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 1147 []ComponentOps 1148 </a> 1149 </em> 1150 </td> 1151 <td> 1152 <em>(Optional)</em> 1153 <p>restart the specified components.</p><br /> 1154 </td> 1155 </tr> 1156 <tr> 1157 <td> 1158 <code>switchover</code><br/> 1159 <em> 1160 <a href="#apps.kubeblocks.io/v1alpha1.Switchover"> 1161 []Switchover 1162 </a> 1163 </em> 1164 </td> 1165 <td> 1166 <em>(Optional)</em> 1167 <p>switchover the specified components.</p><br /> 1168 </td> 1169 </tr> 1170 <tr> 1171 <td> 1172 <code>verticalScaling</code><br/> 1173 <em> 1174 <a href="#apps.kubeblocks.io/v1alpha1.VerticalScaling"> 1175 []VerticalScaling 1176 </a> 1177 </em> 1178 </td> 1179 <td> 1180 <em>(Optional)</em> 1181 <p>verticalScaling defines what component need to vertical scale the specified compute resources.</p><br /> 1182 </td> 1183 </tr> 1184 <tr> 1185 <td> 1186 <code>reconfigure</code><br/> 1187 <em> 1188 <a href="#apps.kubeblocks.io/v1alpha1.Reconfigure"> 1189 Reconfigure 1190 </a> 1191 </em> 1192 </td> 1193 <td> 1194 <em>(Optional)</em> 1195 <p>reconfigure defines the variables that need to input when updating configuration.</p><br /> 1196 </td> 1197 </tr> 1198 <tr> 1199 <td> 1200 <code>expose</code><br/> 1201 <em> 1202 <a href="#apps.kubeblocks.io/v1alpha1.Expose"> 1203 []Expose 1204 </a> 1205 </em> 1206 </td> 1207 <td> 1208 <em>(Optional)</em> 1209 <p>expose defines services the component needs to expose.</p><br /> 1210 </td> 1211 </tr> 1212 <tr> 1213 <td> 1214 <code>restoreFrom</code><br/> 1215 <em> 1216 <a href="#apps.kubeblocks.io/v1alpha1.RestoreFromSpec"> 1217 RestoreFromSpec 1218 </a> 1219 </em> 1220 </td> 1221 <td> 1222 <em>(Optional)</em> 1223 <p>cluster RestoreFrom backup or point in time</p><br /> 1224 </td> 1225 </tr> 1226 <tr> 1227 <td> 1228 <code>ttlSecondsBeforeAbort</code><br/> 1229 <em> 1230 int32 1231 </em> 1232 </td> 1233 <td> 1234 <em>(Optional)</em> 1235 <p>ttlSecondsBeforeAbort OpsRequest will wait at most TTLSecondsBeforeAbort seconds for start-conditions to be met.<br />If not specified, the default value is 0, which means that the start-conditions must be met immediately.</p><br /> 1236 </td> 1237 </tr> 1238 <tr> 1239 <td> 1240 <code>scriptSpec</code><br/> 1241 <em> 1242 <a href="#apps.kubeblocks.io/v1alpha1.ScriptSpec"> 1243 ScriptSpec 1244 </a> 1245 </em> 1246 </td> 1247 <td> 1248 <em>(Optional)</em> 1249 <p>scriptSpec defines the script to be executed.</p><br /> 1250 </td> 1251 </tr> 1252 </table> 1253 </td> 1254 </tr> 1255 <tr> 1256 <td> 1257 <code>status</code><br/> 1258 <em> 1259 <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestStatus"> 1260 OpsRequestStatus 1261 </a> 1262 </em> 1263 </td> 1264 <td> 1265 </td> 1266 </tr> 1267 </tbody> 1268 </table> 1269 <h3 id="apps.kubeblocks.io/v1alpha1.AccessMode">AccessMode 1270 (<code>string</code> alias)</h3> 1271 <p> 1272 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConsensusMember">ConsensusMember</a>, <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMemberStatus">ConsensusMemberStatus</a>) 1273 </p> 1274 <div> 1275 <p>AccessMode defines SVC access mode enums.</p><br /> 1276 </div> 1277 <table> 1278 <thead> 1279 <tr> 1280 <th>Value</th> 1281 <th>Description</th> 1282 </tr> 1283 </thead> 1284 <tbody><tr><td><p>"None"</p></td> 1285 <td></td> 1286 </tr><tr><td><p>"ReadWrite"</p></td> 1287 <td></td> 1288 </tr><tr><td><p>"Readonly"</p></td> 1289 <td></td> 1290 </tr></tbody> 1291 </table> 1292 <h3 id="apps.kubeblocks.io/v1alpha1.AccountName">AccountName 1293 (<code>string</code> alias)</h3> 1294 <p> 1295 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SystemAccountConfig">SystemAccountConfig</a>) 1296 </p> 1297 <div> 1298 <p>AccountName defines system account names.</p><br /> 1299 </div> 1300 <table> 1301 <thead> 1302 <tr> 1303 <th>Value</th> 1304 <th>Description</th> 1305 </tr> 1306 </thead> 1307 <tbody><tr><td><p>"kbadmin"</p></td> 1308 <td></td> 1309 </tr><tr><td><p>"kbdataprotection"</p></td> 1310 <td></td> 1311 </tr><tr><td><p>"kbmonitoring"</p></td> 1312 <td></td> 1313 </tr><tr><td><p>"kbprobe"</p></td> 1314 <td></td> 1315 </tr><tr><td><p>"kbreplicator"</p></td> 1316 <td></td> 1317 </tr></tbody> 1318 </table> 1319 <h3 id="apps.kubeblocks.io/v1alpha1.Affinity">Affinity 1320 </h3> 1321 <p> 1322 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 1323 </p> 1324 <div> 1325 </div> 1326 <table> 1327 <thead> 1328 <tr> 1329 <th>Field</th> 1330 <th>Description</th> 1331 </tr> 1332 </thead> 1333 <tbody> 1334 <tr> 1335 <td> 1336 <code>podAntiAffinity</code><br/> 1337 <em> 1338 <a href="#apps.kubeblocks.io/v1alpha1.PodAntiAffinity"> 1339 PodAntiAffinity 1340 </a> 1341 </em> 1342 </td> 1343 <td> 1344 <em>(Optional)</em> 1345 <p>podAntiAffinity describes the anti-affinity level of pods within a component.<br />Preferred means try spread pods by <code>TopologyKeys</code>.<br />Required means must spread pods by <code>TopologyKeys</code>.</p><br /> 1346 </td> 1347 </tr> 1348 <tr> 1349 <td> 1350 <code>topologyKeys</code><br/> 1351 <em> 1352 []string 1353 </em> 1354 </td> 1355 <td> 1356 <em>(Optional)</em> 1357 <p>topologyKey is the key of node labels.<br />Nodes that have a label with this key and identical values are considered to be in the same topology.<br />It’s used as the topology domain for pod anti-affinity and pod spread constraint.<br />Some well-known label keys, such as “kubernetes.io/hostname” and “topology.kubernetes.io/zone”<br />are often used as TopologyKey, as well as any other custom label key.</p><br /> 1358 </td> 1359 </tr> 1360 <tr> 1361 <td> 1362 <code>nodeLabels</code><br/> 1363 <em> 1364 map[string]string 1365 </em> 1366 </td> 1367 <td> 1368 <em>(Optional)</em> 1369 <p>nodeLabels describes that pods must be scheduled to the nodes with the specified node labels.</p><br /> 1370 </td> 1371 </tr> 1372 <tr> 1373 <td> 1374 <code>tenancy</code><br/> 1375 <em> 1376 <a href="#apps.kubeblocks.io/v1alpha1.TenancyType"> 1377 TenancyType 1378 </a> 1379 </em> 1380 </td> 1381 <td> 1382 <em>(Optional)</em> 1383 <p>tenancy describes how pods are distributed across node.<br />SharedNode means multiple pods may share the same node.<br />DedicatedNode means each pod runs on their own dedicated node.</p><br /> 1384 </td> 1385 </tr> 1386 </tbody> 1387 </table> 1388 <h3 id="apps.kubeblocks.io/v1alpha1.AvailabilityPolicyType">AvailabilityPolicyType 1389 (<code>string</code> alias)</h3> 1390 <p> 1391 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 1392 </p> 1393 <div> 1394 <p>AvailabilityPolicyType for cluster affinity policy.</p><br /> 1395 </div> 1396 <table> 1397 <thead> 1398 <tr> 1399 <th>Value</th> 1400 <th>Description</th> 1401 </tr> 1402 </thead> 1403 <tbody><tr><td><p>"node"</p></td> 1404 <td></td> 1405 </tr><tr><td><p>"none"</p></td> 1406 <td></td> 1407 </tr><tr><td><p>"zone"</p></td> 1408 <td></td> 1409 </tr></tbody> 1410 </table> 1411 <h3 id="apps.kubeblocks.io/v1alpha1.BackupPolicy">BackupPolicy 1412 </h3> 1413 <p> 1414 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyTemplateSpec">BackupPolicyTemplateSpec</a>) 1415 </p> 1416 <div> 1417 </div> 1418 <table> 1419 <thead> 1420 <tr> 1421 <th>Field</th> 1422 <th>Description</th> 1423 </tr> 1424 </thead> 1425 <tbody> 1426 <tr> 1427 <td> 1428 <code>componentDefRef</code><br/> 1429 <em> 1430 string 1431 </em> 1432 </td> 1433 <td> 1434 <p>componentDefRef references componentDef defined in ClusterDefinition spec. Need to<br />comply with IANA Service Naming rule.</p><br /> 1435 </td> 1436 </tr> 1437 <tr> 1438 <td> 1439 <code>retention</code><br/> 1440 <em> 1441 <a href="#apps.kubeblocks.io/v1alpha1.RetentionSpec"> 1442 RetentionSpec 1443 </a> 1444 </em> 1445 </td> 1446 <td> 1447 <em>(Optional)</em> 1448 <p>retention describe how long the Backup should be retained. if not set, will be retained forever.</p><br /> 1449 </td> 1450 </tr> 1451 <tr> 1452 <td> 1453 <code>schedule</code><br/> 1454 <em> 1455 <a href="#apps.kubeblocks.io/v1alpha1.Schedule"> 1456 Schedule 1457 </a> 1458 </em> 1459 </td> 1460 <td> 1461 <em>(Optional)</em> 1462 <p>schedule policy for backup.</p><br /> 1463 </td> 1464 </tr> 1465 <tr> 1466 <td> 1467 <code>snapshot</code><br/> 1468 <em> 1469 <a href="#apps.kubeblocks.io/v1alpha1.SnapshotPolicy"> 1470 SnapshotPolicy 1471 </a> 1472 </em> 1473 </td> 1474 <td> 1475 <em>(Optional)</em> 1476 <p>the policy for snapshot backup.</p><br /> 1477 </td> 1478 </tr> 1479 <tr> 1480 <td> 1481 <code>datafile</code><br/> 1482 <em> 1483 <a href="#apps.kubeblocks.io/v1alpha1.CommonBackupPolicy"> 1484 CommonBackupPolicy 1485 </a> 1486 </em> 1487 </td> 1488 <td> 1489 <em>(Optional)</em> 1490 <p>the policy for datafile backup.</p><br /> 1491 </td> 1492 </tr> 1493 <tr> 1494 <td> 1495 <code>logfile</code><br/> 1496 <em> 1497 <a href="#apps.kubeblocks.io/v1alpha1.CommonBackupPolicy"> 1498 CommonBackupPolicy 1499 </a> 1500 </em> 1501 </td> 1502 <td> 1503 <em>(Optional)</em> 1504 <p>the policy for logfile backup.</p><br /> 1505 </td> 1506 </tr> 1507 </tbody> 1508 </table> 1509 <h3 id="apps.kubeblocks.io/v1alpha1.BackupPolicyHook">BackupPolicyHook 1510 </h3> 1511 <p> 1512 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SnapshotPolicy">SnapshotPolicy</a>) 1513 </p> 1514 <div> 1515 <p>BackupPolicyHook defines for the database execute commands before and after backup.</p><br /> 1516 </div> 1517 <table> 1518 <thead> 1519 <tr> 1520 <th>Field</th> 1521 <th>Description</th> 1522 </tr> 1523 </thead> 1524 <tbody> 1525 <tr> 1526 <td> 1527 <code>preCommands</code><br/> 1528 <em> 1529 []string 1530 </em> 1531 </td> 1532 <td> 1533 <em>(Optional)</em> 1534 <p>pre backup to perform commands</p><br /> 1535 </td> 1536 </tr> 1537 <tr> 1538 <td> 1539 <code>postCommands</code><br/> 1540 <em> 1541 []string 1542 </em> 1543 </td> 1544 <td> 1545 <em>(Optional)</em> 1546 <p>post backup to perform commands</p><br /> 1547 </td> 1548 </tr> 1549 <tr> 1550 <td> 1551 <code>image</code><br/> 1552 <em> 1553 string 1554 </em> 1555 </td> 1556 <td> 1557 <em>(Optional)</em> 1558 <p>exec command with image</p><br /> 1559 </td> 1560 </tr> 1561 <tr> 1562 <td> 1563 <code>containerName</code><br/> 1564 <em> 1565 string 1566 </em> 1567 </td> 1568 <td> 1569 <em>(Optional)</em> 1570 <p>which container can exec command</p><br /> 1571 </td> 1572 </tr> 1573 </tbody> 1574 </table> 1575 <h3 id="apps.kubeblocks.io/v1alpha1.BackupPolicyTemplateSpec">BackupPolicyTemplateSpec 1576 </h3> 1577 <p> 1578 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyTemplate">BackupPolicyTemplate</a>) 1579 </p> 1580 <div> 1581 <p>BackupPolicyTemplateSpec defines the desired state of BackupPolicyTemplate</p><br /> 1582 </div> 1583 <table> 1584 <thead> 1585 <tr> 1586 <th>Field</th> 1587 <th>Description</th> 1588 </tr> 1589 </thead> 1590 <tbody> 1591 <tr> 1592 <td> 1593 <code>clusterDefinitionRef</code><br/> 1594 <em> 1595 string 1596 </em> 1597 </td> 1598 <td> 1599 <p>clusterDefinitionRef references ClusterDefinition name, this is an immutable attribute.</p><br /> 1600 </td> 1601 </tr> 1602 <tr> 1603 <td> 1604 <code>backupPolicies</code><br/> 1605 <em> 1606 <a href="#apps.kubeblocks.io/v1alpha1.BackupPolicy"> 1607 []BackupPolicy 1608 </a> 1609 </em> 1610 </td> 1611 <td> 1612 <p>backupPolicies is a list of backup policy template for the specified componentDefinition.</p><br /> 1613 </td> 1614 </tr> 1615 <tr> 1616 <td> 1617 <code>identifier</code><br/> 1618 <em> 1619 string 1620 </em> 1621 </td> 1622 <td> 1623 <em>(Optional)</em> 1624 <p>Identifier is a unique identifier for this BackupPolicyTemplate.<br />this identifier will be the suffix of the automatically generated backupPolicy name.<br />and must be added when multiple BackupPolicyTemplates exist,<br />otherwise the generated backupPolicy override will occur.</p><br /> 1625 </td> 1626 </tr> 1627 </tbody> 1628 </table> 1629 <h3 id="apps.kubeblocks.io/v1alpha1.BackupPolicyTemplateStatus">BackupPolicyTemplateStatus 1630 </h3> 1631 <p> 1632 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyTemplate">BackupPolicyTemplate</a>) 1633 </p> 1634 <div> 1635 <p>BackupPolicyTemplateStatus defines the observed state of BackupPolicyTemplate</p><br /> 1636 </div> 1637 <h3 id="apps.kubeblocks.io/v1alpha1.BackupRefSpec">BackupRefSpec 1638 </h3> 1639 <p> 1640 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.RestoreFromSpec">RestoreFromSpec</a>) 1641 </p> 1642 <div> 1643 </div> 1644 <table> 1645 <thead> 1646 <tr> 1647 <th>Field</th> 1648 <th>Description</th> 1649 </tr> 1650 </thead> 1651 <tbody> 1652 <tr> 1653 <td> 1654 <code>ref</code><br/> 1655 <em> 1656 <a href="#apps.kubeblocks.io/v1alpha1.RefNamespaceName"> 1657 RefNamespaceName 1658 </a> 1659 </em> 1660 </td> 1661 <td> 1662 <em>(Optional)</em> 1663 <p>specify a reference backup to restore</p><br /> 1664 </td> 1665 </tr> 1666 </tbody> 1667 </table> 1668 <h3 id="apps.kubeblocks.io/v1alpha1.BackupStatusUpdate">BackupStatusUpdate 1669 </h3> 1670 <p> 1671 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BasePolicy">BasePolicy</a>) 1672 </p> 1673 <div> 1674 </div> 1675 <table> 1676 <thead> 1677 <tr> 1678 <th>Field</th> 1679 <th>Description</th> 1680 </tr> 1681 </thead> 1682 <tbody> 1683 <tr> 1684 <td> 1685 <code>path</code><br/> 1686 <em> 1687 string 1688 </em> 1689 </td> 1690 <td> 1691 <em>(Optional)</em> 1692 <p>specify the json path of backup object for patch.<br />example: manifests.backupLog – means patch the backup json path of status.manifests.backupLog.</p><br /> 1693 </td> 1694 </tr> 1695 <tr> 1696 <td> 1697 <code>containerName</code><br/> 1698 <em> 1699 string 1700 </em> 1701 </td> 1702 <td> 1703 <em>(Optional)</em> 1704 <p>which container name that kubectl can execute.</p><br /> 1705 </td> 1706 </tr> 1707 <tr> 1708 <td> 1709 <code>script</code><br/> 1710 <em> 1711 string 1712 </em> 1713 </td> 1714 <td> 1715 <em>(Optional)</em> 1716 <p>the shell Script commands to collect backup status metadata.<br />The script must exist in the container of ContainerName and the output format must be set to JSON.<br />Note that outputting to stderr may cause the result format to not be in JSON.</p><br /> 1717 </td> 1718 </tr> 1719 <tr> 1720 <td> 1721 <code>useTargetPodServiceAccount</code><br/> 1722 <em> 1723 bool 1724 </em> 1725 </td> 1726 <td> 1727 <em>(Optional)</em> 1728 <p>useTargetPodServiceAccount defines whether this job requires the service account of the backup target pod.<br />if true, will use the service account of the backup target pod. otherwise, will use the system service account.</p><br /> 1729 </td> 1730 </tr> 1731 <tr> 1732 <td> 1733 <code>updateStage</code><br/> 1734 <em> 1735 <a href="#apps.kubeblocks.io/v1alpha1.BackupStatusUpdateStage"> 1736 BackupStatusUpdateStage 1737 </a> 1738 </em> 1739 </td> 1740 <td> 1741 <p>when to update the backup status, pre: before backup, post: after backup</p><br /> 1742 </td> 1743 </tr> 1744 </tbody> 1745 </table> 1746 <h3 id="apps.kubeblocks.io/v1alpha1.BackupStatusUpdateStage">BackupStatusUpdateStage 1747 (<code>string</code> alias)</h3> 1748 <p> 1749 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupStatusUpdate">BackupStatusUpdate</a>) 1750 </p> 1751 <div> 1752 <p>BackupStatusUpdateStage defines the stage of backup status update.</p><br /> 1753 </div> 1754 <h3 id="apps.kubeblocks.io/v1alpha1.BaseBackupType">BaseBackupType 1755 (<code>string</code> alias)</h3> 1756 <div> 1757 <p>BaseBackupType the base backup type, keep synchronized with the BaseBackupType of the data protection API.</p><br /> 1758 </div> 1759 <h3 id="apps.kubeblocks.io/v1alpha1.BasePolicy">BasePolicy 1760 </h3> 1761 <p> 1762 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.CommonBackupPolicy">CommonBackupPolicy</a>, <a href="#apps.kubeblocks.io/v1alpha1.SnapshotPolicy">SnapshotPolicy</a>) 1763 </p> 1764 <div> 1765 </div> 1766 <table> 1767 <thead> 1768 <tr> 1769 <th>Field</th> 1770 <th>Description</th> 1771 </tr> 1772 </thead> 1773 <tbody> 1774 <tr> 1775 <td> 1776 <code>target</code><br/> 1777 <em> 1778 <a href="#apps.kubeblocks.io/v1alpha1.TargetInstance"> 1779 TargetInstance 1780 </a> 1781 </em> 1782 </td> 1783 <td> 1784 <em>(Optional)</em> 1785 <p>target instance for backup.</p><br /> 1786 </td> 1787 </tr> 1788 <tr> 1789 <td> 1790 <code>backupsHistoryLimit</code><br/> 1791 <em> 1792 int32 1793 </em> 1794 </td> 1795 <td> 1796 <em>(Optional)</em> 1797 <p>the number of automatic backups to retain. Value must be non-negative integer.<br />0 means NO limit on the number of backups.</p><br /> 1798 </td> 1799 </tr> 1800 <tr> 1801 <td> 1802 <code>onFailAttempted</code><br/> 1803 <em> 1804 int32 1805 </em> 1806 </td> 1807 <td> 1808 <em>(Optional)</em> 1809 <p>count of backup stop retries on fail.</p><br /> 1810 </td> 1811 </tr> 1812 <tr> 1813 <td> 1814 <code>backupStatusUpdates</code><br/> 1815 <em> 1816 <a href="#apps.kubeblocks.io/v1alpha1.BackupStatusUpdate"> 1817 []BackupStatusUpdate 1818 </a> 1819 </em> 1820 </td> 1821 <td> 1822 <em>(Optional)</em> 1823 <p>define how to update metadata for backup status.</p><br /> 1824 </td> 1825 </tr> 1826 </tbody> 1827 </table> 1828 <h3 id="apps.kubeblocks.io/v1alpha1.CPUConstraint">CPUConstraint 1829 </h3> 1830 <p> 1831 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ResourceConstraintRule">ResourceConstraintRule</a>) 1832 </p> 1833 <div> 1834 </div> 1835 <table> 1836 <thead> 1837 <tr> 1838 <th>Field</th> 1839 <th>Description</th> 1840 </tr> 1841 </thead> 1842 <tbody> 1843 <tr> 1844 <td> 1845 <code>max</code><br/> 1846 <em> 1847 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 1848 Kubernetes resource.Quantity 1849 </a> 1850 </em> 1851 </td> 1852 <td> 1853 <em>(Optional)</em> 1854 <p>The maximum count of vcpu cores, [Min, Max] defines a range for valid vcpu cores, and the value in this range<br />must be multiple times of Step. It’s useful to define a large number of valid values without defining them one by<br />one. Please see the documentation for Step for some examples.<br />If Slots is specified, Max, Min, and Step are ignored</p><br /> 1855 </td> 1856 </tr> 1857 <tr> 1858 <td> 1859 <code>min</code><br/> 1860 <em> 1861 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 1862 Kubernetes resource.Quantity 1863 </a> 1864 </em> 1865 </td> 1866 <td> 1867 <em>(Optional)</em> 1868 <p>The minimum count of vcpu cores, [Min, Max] defines a range for valid vcpu cores, and the value in this range<br />must be multiple times of Step. It’s useful to define a large number of valid values without defining them one by<br />one. Please see the documentation for Step for some examples.<br />If Slots is specified, Max, Min, and Step are ignored</p><br /> 1869 </td> 1870 </tr> 1871 <tr> 1872 <td> 1873 <code>step</code><br/> 1874 <em> 1875 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 1876 Kubernetes resource.Quantity 1877 </a> 1878 </em> 1879 </td> 1880 <td> 1881 <em>(Optional)</em> 1882 <p>The minimum granularity of vcpu cores, [Min, Max] defines a range for valid vcpu cores and the value in this range must be<br />multiple times of Step.<br />For example:<br />1. Min is 2, Max is 8, Step is 2, and the valid vcpu core is {2, 4, 6, 8}.<br />2. Min is 0.5, Max is 2, Step is 0.5, and the valid vcpu core is {0.5, 1, 1.5, 2}.</p><br /> 1883 </td> 1884 </tr> 1885 <tr> 1886 <td> 1887 <code>slots</code><br/> 1888 <em> 1889 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 1890 []Kubernetes resource.Quantity 1891 </a> 1892 </em> 1893 </td> 1894 <td> 1895 <em>(Optional)</em> 1896 <p>The valid vcpu cores, it’s useful if you want to define valid vcpu cores explicitly.<br />If Slots is specified, Max, Min, and Step are ignored</p><br /> 1897 </td> 1898 </tr> 1899 </tbody> 1900 </table> 1901 <h3 id="apps.kubeblocks.io/v1alpha1.CfgFileFormat">CfgFileFormat 1902 (<code>string</code> alias)</h3> 1903 <p> 1904 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.FormatterConfig">FormatterConfig</a>) 1905 </p> 1906 <div> 1907 <p>CfgFileFormat defines formatter of configuration files.</p><br /> 1908 </div> 1909 <table> 1910 <thead> 1911 <tr> 1912 <th>Value</th> 1913 <th>Description</th> 1914 </tr> 1915 </thead> 1916 <tbody><tr><td><p>"dotenv"</p></td> 1917 <td></td> 1918 </tr><tr><td><p>"hcl"</p></td> 1919 <td></td> 1920 </tr><tr><td><p>"ini"</p></td> 1921 <td></td> 1922 </tr><tr><td><p>"json"</p></td> 1923 <td></td> 1924 </tr><tr><td><p>"properties"</p></td> 1925 <td></td> 1926 </tr><tr><td><p>"props-plus"</p></td> 1927 <td></td> 1928 </tr><tr><td><p>"redis"</p></td> 1929 <td></td> 1930 </tr><tr><td><p>"toml"</p></td> 1931 <td></td> 1932 </tr><tr><td><p>"xml"</p></td> 1933 <td></td> 1934 </tr><tr><td><p>"yaml"</p></td> 1935 <td></td> 1936 </tr></tbody> 1937 </table> 1938 <h3 id="apps.kubeblocks.io/v1alpha1.CfgReloadType">CfgReloadType 1939 (<code>string</code> alias)</h3> 1940 <div> 1941 <p>CfgReloadType defines reload method.</p><br /> 1942 </div> 1943 <table> 1944 <thead> 1945 <tr> 1946 <th>Value</th> 1947 <th>Description</th> 1948 </tr> 1949 </thead> 1950 <tbody><tr><td><p>"http"</p></td> 1951 <td></td> 1952 </tr><tr><td><p>"sql"</p></td> 1953 <td></td> 1954 </tr><tr><td><p>"exec"</p></td> 1955 <td></td> 1956 </tr><tr><td><p>"tpl"</p></td> 1957 <td></td> 1958 </tr><tr><td><p>"signal"</p></td> 1959 <td></td> 1960 </tr></tbody> 1961 </table> 1962 <h3 id="apps.kubeblocks.io/v1alpha1.ClassDefRef">ClassDefRef 1963 </h3> 1964 <p> 1965 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.LastComponentConfiguration">LastComponentConfiguration</a>, <a href="#apps.kubeblocks.io/v1alpha1.VerticalScaling">VerticalScaling</a>) 1966 </p> 1967 <div> 1968 </div> 1969 <table> 1970 <thead> 1971 <tr> 1972 <th>Field</th> 1973 <th>Description</th> 1974 </tr> 1975 </thead> 1976 <tbody> 1977 <tr> 1978 <td> 1979 <code>name</code><br/> 1980 <em> 1981 string 1982 </em> 1983 </td> 1984 <td> 1985 <em>(Optional)</em> 1986 <p>Name refers to the name of the ComponentClassDefinition.</p><br /> 1987 </td> 1988 </tr> 1989 <tr> 1990 <td> 1991 <code>class</code><br/> 1992 <em> 1993 string 1994 </em> 1995 </td> 1996 <td> 1997 <p>Class refers to the name of the class that is defined in the ComponentClassDefinition.</p><br /> 1998 </td> 1999 </tr> 2000 </tbody> 2001 </table> 2002 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterBackup">ClusterBackup 2003 </h3> 2004 <p> 2005 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 2006 </p> 2007 <div> 2008 </div> 2009 <table> 2010 <thead> 2011 <tr> 2012 <th>Field</th> 2013 <th>Description</th> 2014 </tr> 2015 </thead> 2016 <tbody> 2017 <tr> 2018 <td> 2019 <code>enabled</code><br/> 2020 <em> 2021 bool 2022 </em> 2023 </td> 2024 <td> 2025 <em>(Optional)</em> 2026 <p>enabled defines whether to enable automated backup.</p><br /> 2027 </td> 2028 </tr> 2029 <tr> 2030 <td> 2031 <code>retentionPeriod</code><br/> 2032 <em> 2033 string 2034 </em> 2035 </td> 2036 <td> 2037 <em>(Optional)</em> 2038 <p>retentionPeriod is a time string ending with the ’d’|’D’|‘h’|‘H’ character to describe how long<br />the Backup should be retained. if not set, will be retained forever.</p><br /> 2039 </td> 2040 </tr> 2041 <tr> 2042 <td> 2043 <code>method</code><br/> 2044 <em> 2045 github.com/apecloud/kubeblocks/apis/dataprotection/v1alpha1.BackupMethod 2046 </em> 2047 </td> 2048 <td> 2049 <p>backup method, support: snapshot, backupTool.</p><br /> 2050 </td> 2051 </tr> 2052 <tr> 2053 <td> 2054 <code>cronExpression</code><br/> 2055 <em> 2056 string 2057 </em> 2058 </td> 2059 <td> 2060 <em>(Optional)</em> 2061 <p>the cron expression for schedule, the timezone is in UTC. see <a href="https://en.wikipedia.org/wiki/Cron">https://en.wikipedia.org/wiki/Cron</a>.</p><br /> 2062 </td> 2063 </tr> 2064 <tr> 2065 <td> 2066 <code>startingDeadlineMinutes</code><br/> 2067 <em> 2068 int64 2069 </em> 2070 </td> 2071 <td> 2072 <em>(Optional)</em> 2073 <p>startingDeadlineMinutes defines the deadline in minutes for starting the backup job<br />if it misses scheduled time for any reason.</p><br /> 2074 </td> 2075 </tr> 2076 <tr> 2077 <td> 2078 <code>repoName</code><br/> 2079 <em> 2080 string 2081 </em> 2082 </td> 2083 <td> 2084 <em>(Optional)</em> 2085 <p>repoName is the name of the backupRepo, if not set, will use the default backupRepo.</p><br /> 2086 </td> 2087 </tr> 2088 <tr> 2089 <td> 2090 <code>pitrEnabled</code><br/> 2091 <em> 2092 bool 2093 </em> 2094 </td> 2095 <td> 2096 <em>(Optional)</em> 2097 <p>pitrEnabled defines whether to enable point-in-time recovery.</p><br /> 2098 </td> 2099 </tr> 2100 </tbody> 2101 </table> 2102 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition 2103 </h3> 2104 <p> 2105 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionSpec">ClusterDefinitionSpec</a>) 2106 </p> 2107 <div> 2108 <p>ClusterComponentDefinition provides a workload component specification template,<br />with attributes that strongly work with stateful workloads and day-2 operations<br />behaviors.</p><br /> 2109 </div> 2110 <table> 2111 <thead> 2112 <tr> 2113 <th>Field</th> 2114 <th>Description</th> 2115 </tr> 2116 </thead> 2117 <tbody> 2118 <tr> 2119 <td> 2120 <code>name</code><br/> 2121 <em> 2122 string 2123 </em> 2124 </td> 2125 <td> 2126 <p>A component definition name, this name could be used as default name of <code>Cluster.spec.componentSpecs.name</code>,<br />and so this name is need to conform with same validation rules as <code>Cluster.spec.componentSpecs.name</code>, that<br />is currently comply with IANA Service Naming rule. This name will apply to “apps.kubeblocks.io/component-name”<br />object label value.</p><br /> 2127 </td> 2128 </tr> 2129 <tr> 2130 <td> 2131 <code>description</code><br/> 2132 <em> 2133 string 2134 </em> 2135 </td> 2136 <td> 2137 <em>(Optional)</em> 2138 <p>The description of component definition.</p><br /> 2139 </td> 2140 </tr> 2141 <tr> 2142 <td> 2143 <code>workloadType</code><br/> 2144 <em> 2145 <a href="#apps.kubeblocks.io/v1alpha1.WorkloadType"> 2146 WorkloadType 2147 </a> 2148 </em> 2149 </td> 2150 <td> 2151 <p>workloadType defines type of the workload.<br />Stateless is a stateless workload type used to describe stateless applications.<br />Stateful is a stateful workload type used to describe common stateful applications.<br />Consensus is a stateful workload type used to describe applications based on consensus protocols, common consensus protocols such as raft and paxos.<br />Replication is a stateful workload type used to describe applications based on the primary-secondary data replication protocol.</p><br /> 2152 </td> 2153 </tr> 2154 <tr> 2155 <td> 2156 <code>characterType</code><br/> 2157 <em> 2158 string 2159 </em> 2160 </td> 2161 <td> 2162 <em>(Optional)</em> 2163 <p>characterType defines well-known database component name, such as mongos(mongodb), proxy(redis), mariadb(mysql)<br />KubeBlocks will generate proper monitor configs for well-known characterType when builtIn is true.</p><br /> 2164 </td> 2165 </tr> 2166 <tr> 2167 <td> 2168 <code>configSpecs</code><br/> 2169 <em> 2170 <a href="#apps.kubeblocks.io/v1alpha1.ComponentConfigSpec"> 2171 []ComponentConfigSpec 2172 </a> 2173 </em> 2174 </td> 2175 <td> 2176 <em>(Optional)</em> 2177 <p>The configSpec field provided by provider, and<br />finally this configTemplateRefs will be rendered into the user’s own configuration file according to the user’s cluster.</p><br /> 2178 </td> 2179 </tr> 2180 <tr> 2181 <td> 2182 <code>scriptSpecs</code><br/> 2183 <em> 2184 <a href="#apps.kubeblocks.io/v1alpha1.ComponentTemplateSpec"> 2185 []ComponentTemplateSpec 2186 </a> 2187 </em> 2188 </td> 2189 <td> 2190 <em>(Optional)</em> 2191 <p>The scriptSpec field provided by provider, and<br />finally this configTemplateRefs will be rendered into the user’s own configuration file according to the user’s cluster.</p><br /> 2192 </td> 2193 </tr> 2194 <tr> 2195 <td> 2196 <code>probes</code><br/> 2197 <em> 2198 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbes"> 2199 ClusterDefinitionProbes 2200 </a> 2201 </em> 2202 </td> 2203 <td> 2204 <em>(Optional)</em> 2205 <p>probes setting for healthy checks.</p><br /> 2206 </td> 2207 </tr> 2208 <tr> 2209 <td> 2210 <code>monitor</code><br/> 2211 <em> 2212 <a href="#apps.kubeblocks.io/v1alpha1.MonitorConfig"> 2213 MonitorConfig 2214 </a> 2215 </em> 2216 </td> 2217 <td> 2218 <em>(Optional)</em> 2219 <p>monitor is monitoring config which provided by provider.</p><br /> 2220 </td> 2221 </tr> 2222 <tr> 2223 <td> 2224 <code>logConfigs</code><br/> 2225 <em> 2226 <a href="#apps.kubeblocks.io/v1alpha1.LogConfig"> 2227 []LogConfig 2228 </a> 2229 </em> 2230 </td> 2231 <td> 2232 <em>(Optional)</em> 2233 <p>logConfigs is detail log file config which provided by provider.</p><br /> 2234 </td> 2235 </tr> 2236 <tr> 2237 <td> 2238 <code>podSpec</code><br/> 2239 <em> 2240 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#podspec-v1-core"> 2241 Kubernetes core/v1.PodSpec 2242 </a> 2243 </em> 2244 </td> 2245 <td> 2246 <em>(Optional)</em> 2247 <p>podSpec define pod spec template of the cluster component.</p><br /> 2248 </td> 2249 </tr> 2250 <tr> 2251 <td> 2252 <code>service</code><br/> 2253 <em> 2254 <a href="#apps.kubeblocks.io/v1alpha1.ServiceSpec"> 2255 ServiceSpec 2256 </a> 2257 </em> 2258 </td> 2259 <td> 2260 <em>(Optional)</em> 2261 <p>service defines the behavior of a service spec.<br />provide read-write service when WorkloadType is Consensus.</p><br /> 2262 </td> 2263 </tr> 2264 <tr> 2265 <td> 2266 <code>statelessSpec</code><br/> 2267 <em> 2268 <a href="#apps.kubeblocks.io/v1alpha1.StatelessSetSpec"> 2269 StatelessSetSpec 2270 </a> 2271 </em> 2272 </td> 2273 <td> 2274 <em>(Optional)</em> 2275 <p>statelessSpec defines stateless related spec if workloadType is Stateless.</p><br /> 2276 </td> 2277 </tr> 2278 <tr> 2279 <td> 2280 <code>statefulSpec</code><br/> 2281 <em> 2282 <a href="#apps.kubeblocks.io/v1alpha1.StatefulSetSpec"> 2283 StatefulSetSpec 2284 </a> 2285 </em> 2286 </td> 2287 <td> 2288 <em>(Optional)</em> 2289 <p>statefulSpec defines stateful related spec if workloadType is Stateful.</p><br /> 2290 </td> 2291 </tr> 2292 <tr> 2293 <td> 2294 <code>consensusSpec</code><br/> 2295 <em> 2296 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusSetSpec"> 2297 ConsensusSetSpec 2298 </a> 2299 </em> 2300 </td> 2301 <td> 2302 <em>(Optional)</em> 2303 <p>consensusSpec defines consensus related spec if workloadType is Consensus, required if workloadType is Consensus.</p><br /> 2304 </td> 2305 </tr> 2306 <tr> 2307 <td> 2308 <code>replicationSpec</code><br/> 2309 <em> 2310 <a href="#apps.kubeblocks.io/v1alpha1.ReplicationSetSpec"> 2311 ReplicationSetSpec 2312 </a> 2313 </em> 2314 </td> 2315 <td> 2316 <em>(Optional)</em> 2317 <p>replicationSpec defines replication related spec if workloadType is Replication.</p><br /> 2318 </td> 2319 </tr> 2320 <tr> 2321 <td> 2322 <code>horizontalScalePolicy</code><br/> 2323 <em> 2324 <a href="#apps.kubeblocks.io/v1alpha1.HorizontalScalePolicy"> 2325 HorizontalScalePolicy 2326 </a> 2327 </em> 2328 </td> 2329 <td> 2330 <em>(Optional)</em> 2331 <p>horizontalScalePolicy controls the behavior of horizontal scale.</p><br /> 2332 </td> 2333 </tr> 2334 <tr> 2335 <td> 2336 <code>systemAccounts</code><br/> 2337 <em> 2338 <a href="#apps.kubeblocks.io/v1alpha1.SystemAccountSpec"> 2339 SystemAccountSpec 2340 </a> 2341 </em> 2342 </td> 2343 <td> 2344 <em>(Optional)</em> 2345 <p>Statement to create system account.</p><br /> 2346 </td> 2347 </tr> 2348 <tr> 2349 <td> 2350 <code>volumeTypes</code><br/> 2351 <em> 2352 <a href="#apps.kubeblocks.io/v1alpha1.VolumeTypeSpec"> 2353 []VolumeTypeSpec 2354 </a> 2355 </em> 2356 </td> 2357 <td> 2358 <em>(Optional)</em> 2359 <p>volumeTypes is used to describe the purpose of the volumes<br />mapping the name of the VolumeMounts in the PodSpec.Container field,<br />such as data volume, log volume, etc.<br />When backing up the volume, the volume can be correctly backed up<br />according to the volumeType.</p><br /><br /><p>For example:<br /> <code>name: data, type: data</code> means that the volume named <code>data</code> is used to store <code>data</code>.<br /> <code>name: binlog, type: log</code> means that the volume named <code>binlog</code> is used to store <code>log</code>.</p><br /><br /><p>NOTE:<br /> When volumeTypes is not defined, the backup function will not be supported,<br />even if a persistent volume has been specified.</p><br /> 2360 </td> 2361 </tr> 2362 <tr> 2363 <td> 2364 <code>customLabelSpecs</code><br/> 2365 <em> 2366 <a href="#apps.kubeblocks.io/v1alpha1.CustomLabelSpec"> 2367 []CustomLabelSpec 2368 </a> 2369 </em> 2370 </td> 2371 <td> 2372 <em>(Optional)</em> 2373 <p>customLabelSpecs is used for custom label tags which you want to add to the component resources.</p><br /> 2374 </td> 2375 </tr> 2376 <tr> 2377 <td> 2378 <code>switchoverSpec</code><br/> 2379 <em> 2380 <a href="#apps.kubeblocks.io/v1alpha1.SwitchoverSpec"> 2381 SwitchoverSpec 2382 </a> 2383 </em> 2384 </td> 2385 <td> 2386 <em>(Optional)</em> 2387 <p>switchoverSpec defines command to do switchover.<br />in particular, when workloadType=Replication, the command defined in switchoverSpec will only be executed under the condition of cluster.componentSpecs[x].SwitchPolicy.type=Noop.</p><br /> 2388 </td> 2389 </tr> 2390 <tr> 2391 <td> 2392 <code>volumeProtectionSpec</code><br/> 2393 <em> 2394 <a href="#apps.kubeblocks.io/v1alpha1.VolumeProtectionSpec"> 2395 VolumeProtectionSpec 2396 </a> 2397 </em> 2398 </td> 2399 <td> 2400 <em>(Optional)</em> 2401 </td> 2402 </tr> 2403 <tr> 2404 <td> 2405 <code>componentDefRef</code><br/> 2406 <em> 2407 <a href="#apps.kubeblocks.io/v1alpha1.ComponentDefRef"> 2408 []ComponentDefRef 2409 </a> 2410 </em> 2411 </td> 2412 <td> 2413 <em>(Optional)</em> 2414 <p>componentDefRef is used to inject values from other components into the current component.<br />values will be saved and updated in a configmap and mounted to the current component.</p><br /> 2415 </td> 2416 </tr> 2417 </tbody> 2418 </table> 2419 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentPhase">ClusterComponentPhase 2420 (<code>string</code> alias)</h3> 2421 <p> 2422 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentStatus">ClusterComponentStatus</a>, <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestComponentStatus">OpsRequestComponentStatus</a>) 2423 </p> 2424 <div> 2425 <p>ClusterComponentPhase defines the Cluster CR .status.components.phase</p><br /> 2426 </div> 2427 <table> 2428 <thead> 2429 <tr> 2430 <th>Value</th> 2431 <th>Description</th> 2432 </tr> 2433 </thead> 2434 <tbody><tr><td><p>"Abnormal"</p></td> 2435 <td></td> 2436 </tr><tr><td><p>"Creating"</p></td> 2437 <td></td> 2438 </tr><tr><td><p>"Failed"</p></td> 2439 <td></td> 2440 </tr><tr><td><p>"Running"</p></td> 2441 <td></td> 2442 </tr><tr><td><p>"Updating"</p></td> 2443 <td><p>Abnormal is a sub-state of failed, where one or more workload pods is not in “Running” phase.</p><br /></td> 2444 </tr><tr><td><p>"Stopped"</p></td> 2445 <td></td> 2446 </tr></tbody> 2447 </table> 2448 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentService">ClusterComponentService 2449 </h3> 2450 <p> 2451 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.Expose">Expose</a>, <a href="#apps.kubeblocks.io/v1alpha1.LastComponentConfiguration">LastComponentConfiguration</a>) 2452 </p> 2453 <div> 2454 </div> 2455 <table> 2456 <thead> 2457 <tr> 2458 <th>Field</th> 2459 <th>Description</th> 2460 </tr> 2461 </thead> 2462 <tbody> 2463 <tr> 2464 <td> 2465 <code>name</code><br/> 2466 <em> 2467 string 2468 </em> 2469 </td> 2470 <td> 2471 <p>Service name</p><br /> 2472 </td> 2473 </tr> 2474 <tr> 2475 <td> 2476 <code>serviceType</code><br/> 2477 <em> 2478 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#servicetype-v1-core"> 2479 Kubernetes core/v1.ServiceType 2480 </a> 2481 </em> 2482 </td> 2483 <td> 2484 <em>(Optional)</em> 2485 <p>serviceType determines how the Service is exposed. Valid<br />options are ClusterIP, NodePort, and LoadBalancer.<br />“ClusterIP” allocates a cluster-internal IP address for load-balancing<br />to endpoints. Endpoints are determined by the selector or if that is not<br />specified, they are determined by manual construction of an Endpoints object or<br />EndpointSlice objects. If clusterIP is “None”, no virtual IP is<br />allocated and the endpoints are published as a set of endpoints rather<br />than a virtual IP.<br />“NodePort” builds on ClusterIP and allocates a port on every node which<br />routes to the same endpoints as the clusterIP.<br />“LoadBalancer” builds on NodePort and creates an external load-balancer<br />(if supported in the current cloud) which routes to the same endpoints<br />as the clusterIP.<br />More info: <a href="https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types">https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types</a>.</p><br /> 2486 </td> 2487 </tr> 2488 <tr> 2489 <td> 2490 <code>annotations</code><br/> 2491 <em> 2492 map[string]string 2493 </em> 2494 </td> 2495 <td> 2496 <em>(Optional)</em> 2497 <p>If ServiceType is LoadBalancer, cloud provider related parameters can be put here<br />More info: <a href="https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer">https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer</a>.</p><br /> 2498 </td> 2499 </tr> 2500 </tbody> 2501 </table> 2502 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec 2503 </h3> 2504 <p> 2505 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 2506 </p> 2507 <div> 2508 <p>ClusterComponentSpec defines the cluster component spec.</p><br /> 2509 </div> 2510 <table> 2511 <thead> 2512 <tr> 2513 <th>Field</th> 2514 <th>Description</th> 2515 </tr> 2516 </thead> 2517 <tbody> 2518 <tr> 2519 <td> 2520 <code>name</code><br/> 2521 <em> 2522 string 2523 </em> 2524 </td> 2525 <td> 2526 <p>name defines cluster’s component name, this name is also part of Service DNS name, so this name will<br />comply with IANA Service Naming rule.</p><br /> 2527 </td> 2528 </tr> 2529 <tr> 2530 <td> 2531 <code>componentDefRef</code><br/> 2532 <em> 2533 string 2534 </em> 2535 </td> 2536 <td> 2537 <p>componentDefRef references componentDef defined in ClusterDefinition spec. Need to<br />comply with IANA Service Naming rule.</p><br /> 2538 </td> 2539 </tr> 2540 <tr> 2541 <td> 2542 <code>classDefRef</code><br/> 2543 <em> 2544 <a href="#apps.kubeblocks.io/v1alpha1.ClassDefRef"> 2545 ClassDefRef 2546 </a> 2547 </em> 2548 </td> 2549 <td> 2550 <em>(Optional)</em> 2551 <p>classDefRef references the class defined in ComponentClassDefinition.</p><br /> 2552 </td> 2553 </tr> 2554 <tr> 2555 <td> 2556 <code>monitor</code><br/> 2557 <em> 2558 bool 2559 </em> 2560 </td> 2561 <td> 2562 <em>(Optional)</em> 2563 <p>monitor is a switch to enable monitoring and is set as false by default.<br />KubeBlocks provides an extension mechanism to support component level monitoring,<br />which will scrape metrics auto or manually from servers in component and export<br />metrics to Time Series Database.</p><br /> 2564 </td> 2565 </tr> 2566 <tr> 2567 <td> 2568 <code>enabledLogs</code><br/> 2569 <em> 2570 []string 2571 </em> 2572 </td> 2573 <td> 2574 <em>(Optional)</em> 2575 <p>enabledLogs indicates which log file takes effect in the database cluster.<br />element is the log type which is defined in cluster definition logConfig.name,<br />and will set relative variables about this log type in database kernel.</p><br /> 2576 </td> 2577 </tr> 2578 <tr> 2579 <td> 2580 <code>replicas</code><br/> 2581 <em> 2582 int32 2583 </em> 2584 </td> 2585 <td> 2586 <p>Component replicas. The default value is used in ClusterDefinition spec if not specified.</p><br /> 2587 </td> 2588 </tr> 2589 <tr> 2590 <td> 2591 <code>affinity</code><br/> 2592 <em> 2593 <a href="#apps.kubeblocks.io/v1alpha1.Affinity"> 2594 Affinity 2595 </a> 2596 </em> 2597 </td> 2598 <td> 2599 <em>(Optional)</em> 2600 <p>affinity describes affinities specified by users.</p><br /> 2601 </td> 2602 </tr> 2603 <tr> 2604 <td> 2605 <code>tolerations</code><br/> 2606 <em> 2607 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#toleration-v1-core"> 2608 []Kubernetes core/v1.Toleration 2609 </a> 2610 </em> 2611 </td> 2612 <td> 2613 <em>(Optional)</em> 2614 <p>Component tolerations will override ClusterSpec.Tolerations if specified.</p><br /> 2615 </td> 2616 </tr> 2617 <tr> 2618 <td> 2619 <code>resources</code><br/> 2620 <em> 2621 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core"> 2622 Kubernetes core/v1.ResourceRequirements 2623 </a> 2624 </em> 2625 </td> 2626 <td> 2627 <em>(Optional)</em> 2628 <p>Resources requests and limits of workload.</p><br /> 2629 </td> 2630 </tr> 2631 <tr> 2632 <td> 2633 <code>volumeClaimTemplates</code><br/> 2634 <em> 2635 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVolumeClaimTemplate"> 2636 []ClusterComponentVolumeClaimTemplate 2637 </a> 2638 </em> 2639 </td> 2640 <td> 2641 <em>(Optional)</em> 2642 <p>volumeClaimTemplates information for statefulset.spec.volumeClaimTemplates.</p><br /> 2643 </td> 2644 </tr> 2645 <tr> 2646 <td> 2647 <code>services</code><br/> 2648 <em> 2649 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentService"> 2650 []ClusterComponentService 2651 </a> 2652 </em> 2653 </td> 2654 <td> 2655 <em>(Optional)</em> 2656 <p>Services expose endpoints that can be accessed by clients.</p><br /> 2657 </td> 2658 </tr> 2659 <tr> 2660 <td> 2661 <code>switchPolicy</code><br/> 2662 <em> 2663 <a href="#apps.kubeblocks.io/v1alpha1.ClusterSwitchPolicy"> 2664 ClusterSwitchPolicy 2665 </a> 2666 </em> 2667 </td> 2668 <td> 2669 <em>(Optional)</em> 2670 <p>switchPolicy defines the strategy for switchover and failover when workloadType is Replication.</p><br /> 2671 </td> 2672 </tr> 2673 <tr> 2674 <td> 2675 <code>tls</code><br/> 2676 <em> 2677 bool 2678 </em> 2679 </td> 2680 <td> 2681 <em>(Optional)</em> 2682 <p>Enables or disables TLS certs.</p><br /> 2683 </td> 2684 </tr> 2685 <tr> 2686 <td> 2687 <code>issuer</code><br/> 2688 <em> 2689 <a href="#apps.kubeblocks.io/v1alpha1.Issuer"> 2690 Issuer 2691 </a> 2692 </em> 2693 </td> 2694 <td> 2695 <em>(Optional)</em> 2696 <p>issuer defines provider context for TLS certs.<br />required when TLS enabled</p><br /> 2697 </td> 2698 </tr> 2699 <tr> 2700 <td> 2701 <code>serviceAccountName</code><br/> 2702 <em> 2703 string 2704 </em> 2705 </td> 2706 <td> 2707 <em>(Optional)</em> 2708 <p>serviceAccountName is the name of the ServiceAccount that running component depends on.</p><br /> 2709 </td> 2710 </tr> 2711 <tr> 2712 <td> 2713 <code>noCreatePDB</code><br/> 2714 <em> 2715 bool 2716 </em> 2717 </td> 2718 <td> 2719 <em>(Optional)</em> 2720 <p>noCreatePDB defines the PodDisruptionBudget creation behavior and is set to true if creation of PodDisruptionBudget<br />for this component is not needed. It defaults to false.</p><br /> 2721 </td> 2722 </tr> 2723 </tbody> 2724 </table> 2725 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentStatus">ClusterComponentStatus 2726 </h3> 2727 <p> 2728 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterStatus">ClusterStatus</a>) 2729 </p> 2730 <div> 2731 <p>ClusterComponentStatus records components status.</p><br /> 2732 </div> 2733 <table> 2734 <thead> 2735 <tr> 2736 <th>Field</th> 2737 <th>Description</th> 2738 </tr> 2739 </thead> 2740 <tbody> 2741 <tr> 2742 <td> 2743 <code>phase</code><br/> 2744 <em> 2745 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentPhase"> 2746 ClusterComponentPhase 2747 </a> 2748 </em> 2749 </td> 2750 <td> 2751 <p>phase describes the phase of the component and the detail information of the phases are as following:<br />Running: the component is running. [terminal state]<br />Stopped: the component is stopped, as no running pod. [terminal state]<br />Failed: the component is unavailable, i.e. all pods are not ready for Stateless/Stateful component and<br />Leader/Primary pod is not ready for Consensus/Replication component. [terminal state]<br />Abnormal: the component is running but part of its pods are not ready.<br />Leader/Primary pod is ready for Consensus/Replication component. [terminal state]<br />Creating: the component has entered creating process.<br />Updating: the component has entered updating process, triggered by Spec. updated.</p><br /> 2752 </td> 2753 </tr> 2754 <tr> 2755 <td> 2756 <code>message</code><br/> 2757 <em> 2758 <a href="#apps.kubeblocks.io/v1alpha1.ComponentMessageMap"> 2759 ComponentMessageMap 2760 </a> 2761 </em> 2762 </td> 2763 <td> 2764 <em>(Optional)</em> 2765 <p>message records the component details message in current phase.<br />Keys are podName or deployName or statefulSetName. The format is <code>ObjectKind/Name</code>.</p><br /> 2766 </td> 2767 </tr> 2768 <tr> 2769 <td> 2770 <code>podsReady</code><br/> 2771 <em> 2772 bool 2773 </em> 2774 </td> 2775 <td> 2776 <em>(Optional)</em> 2777 <p>podsReady checks if all pods of the component are ready.</p><br /> 2778 </td> 2779 </tr> 2780 <tr> 2781 <td> 2782 <code>podsReadyTime</code><br/> 2783 <em> 2784 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 2785 Kubernetes meta/v1.Time 2786 </a> 2787 </em> 2788 </td> 2789 <td> 2790 <em>(Optional)</em> 2791 <p>podsReadyTime what time point of all component pods are ready,<br />this time is the ready time of the last component pod.</p><br /> 2792 </td> 2793 </tr> 2794 <tr> 2795 <td> 2796 <code>consensusSetStatus</code><br/> 2797 <em> 2798 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusSetStatus"> 2799 ConsensusSetStatus 2800 </a> 2801 </em> 2802 </td> 2803 <td> 2804 <em>(Optional)</em> 2805 <p>consensusSetStatus specifies the mapping of role and pod name.</p><br /> 2806 </td> 2807 </tr> 2808 <tr> 2809 <td> 2810 <code>replicationSetStatus</code><br/> 2811 <em> 2812 <a href="#apps.kubeblocks.io/v1alpha1.ReplicationSetStatus"> 2813 ReplicationSetStatus 2814 </a> 2815 </em> 2816 </td> 2817 <td> 2818 <em>(Optional)</em> 2819 <p>replicationSetStatus specifies the mapping of role and pod name.</p><br /> 2820 </td> 2821 </tr> 2822 </tbody> 2823 </table> 2824 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentVersion">ClusterComponentVersion 2825 </h3> 2826 <p> 2827 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterVersionSpec">ClusterVersionSpec</a>) 2828 </p> 2829 <div> 2830 <p>ClusterComponentVersion is an application version component spec.</p><br /> 2831 </div> 2832 <table> 2833 <thead> 2834 <tr> 2835 <th>Field</th> 2836 <th>Description</th> 2837 </tr> 2838 </thead> 2839 <tbody> 2840 <tr> 2841 <td> 2842 <code>componentDefRef</code><br/> 2843 <em> 2844 string 2845 </em> 2846 </td> 2847 <td> 2848 <p>componentDefRef reference one of the cluster component definition names in ClusterDefinition API (spec.componentDefs.name).</p><br /> 2849 </td> 2850 </tr> 2851 <tr> 2852 <td> 2853 <code>configSpecs</code><br/> 2854 <em> 2855 <a href="#apps.kubeblocks.io/v1alpha1.ComponentConfigSpec"> 2856 []ComponentConfigSpec 2857 </a> 2858 </em> 2859 </td> 2860 <td> 2861 <em>(Optional)</em> 2862 <p>configSpecs defines a configuration extension mechanism to handle configuration differences between versions,<br />the configTemplateRefs field, together with configTemplateRefs in the ClusterDefinition,<br />determines the final configuration file.</p><br /> 2863 </td> 2864 </tr> 2865 <tr> 2866 <td> 2867 <code>systemAccountSpec</code><br/> 2868 <em> 2869 <a href="#apps.kubeblocks.io/v1alpha1.SystemAccountShortSpec"> 2870 SystemAccountShortSpec 2871 </a> 2872 </em> 2873 </td> 2874 <td> 2875 <em>(Optional)</em> 2876 <p>systemAccountSpec define image for the component to connect database or engines.<br />It overrides <code>image</code> and <code>env</code> attributes defined in ClusterDefinition.spec.componentDefs.systemAccountSpec.cmdExecutorConfig.<br />To clean default envs settings, set <code>SystemAccountSpec.CmdExecutorConfig.Env</code> to empty list.</p><br /> 2877 </td> 2878 </tr> 2879 <tr> 2880 <td> 2881 <code>versionsContext</code><br/> 2882 <em> 2883 <a href="#apps.kubeblocks.io/v1alpha1.VersionsContext"> 2884 VersionsContext 2885 </a> 2886 </em> 2887 </td> 2888 <td> 2889 <p>versionContext defines containers images’ context for component versions,<br />this value replaces ClusterDefinition.spec.componentDefs.podSpec.[initContainers | containers]</p><br /> 2890 </td> 2891 </tr> 2892 <tr> 2893 <td> 2894 <code>switchoverSpec</code><br/> 2895 <em> 2896 <a href="#apps.kubeblocks.io/v1alpha1.SwitchoverShortSpec"> 2897 SwitchoverShortSpec 2898 </a> 2899 </em> 2900 </td> 2901 <td> 2902 <em>(Optional)</em> 2903 <p>switchoverSpec defines images for the component to do switchover.<br />It overrides <code>image</code> and <code>env</code> attributes defined in ClusterDefinition.spec.componentDefs.SwitchoverSpec.CommandExecutorEnvItem.</p><br /> 2904 </td> 2905 </tr> 2906 </tbody> 2907 </table> 2908 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterComponentVolumeClaimTemplate">ClusterComponentVolumeClaimTemplate 2909 </h3> 2910 <p> 2911 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec</a>) 2912 </p> 2913 <div> 2914 </div> 2915 <table> 2916 <thead> 2917 <tr> 2918 <th>Field</th> 2919 <th>Description</th> 2920 </tr> 2921 </thead> 2922 <tbody> 2923 <tr> 2924 <td> 2925 <code>name</code><br/> 2926 <em> 2927 string 2928 </em> 2929 </td> 2930 <td> 2931 <p>Reference <code>ClusterDefinition.spec.componentDefs.containers.volumeMounts.name</code>.</p><br /> 2932 </td> 2933 </tr> 2934 <tr> 2935 <td> 2936 <code>spec</code><br/> 2937 <em> 2938 <a href="#apps.kubeblocks.io/v1alpha1.PersistentVolumeClaimSpec"> 2939 PersistentVolumeClaimSpec 2940 </a> 2941 </em> 2942 </td> 2943 <td> 2944 <em>(Optional)</em> 2945 <p>spec defines the desired characteristics of a volume requested by a pod author.</p><br /> 2946 <br/> 2947 <br/> 2948 <table> 2949 <tr> 2950 <td> 2951 <code>accessModes</code><br/> 2952 <em> 2953 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#persistentvolumeaccessmode-v1-core"> 2954 []Kubernetes core/v1.PersistentVolumeAccessMode 2955 </a> 2956 </em> 2957 </td> 2958 <td> 2959 <em>(Optional)</em> 2960 <p>accessModes contains the desired access modes the volume should have.<br />More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1">https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1</a>.</p><br /> 2961 </td> 2962 </tr> 2963 <tr> 2964 <td> 2965 <code>resources</code><br/> 2966 <em> 2967 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core"> 2968 Kubernetes core/v1.ResourceRequirements 2969 </a> 2970 </em> 2971 </td> 2972 <td> 2973 <em>(Optional)</em> 2974 <p>resources represents the minimum resources the volume should have.<br />If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements<br />that are lower than previous value but must still be higher than capacity recorded in the<br />status field of the claim.<br />More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources">https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources</a>.</p><br /> 2975 </td> 2976 </tr> 2977 <tr> 2978 <td> 2979 <code>storageClassName</code><br/> 2980 <em> 2981 string 2982 </em> 2983 </td> 2984 <td> 2985 <em>(Optional)</em> 2986 <p>storageClassName is the name of the StorageClass required by the claim.<br />More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1">https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1</a>.</p><br /> 2987 </td> 2988 </tr> 2989 </table> 2990 </td> 2991 </tr> 2992 </tbody> 2993 </table> 2994 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbe">ClusterDefinitionProbe 2995 </h3> 2996 <p> 2997 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbes">ClusterDefinitionProbes</a>) 2998 </p> 2999 <div> 3000 </div> 3001 <table> 3002 <thead> 3003 <tr> 3004 <th>Field</th> 3005 <th>Description</th> 3006 </tr> 3007 </thead> 3008 <tbody> 3009 <tr> 3010 <td> 3011 <code>periodSeconds</code><br/> 3012 <em> 3013 int32 3014 </em> 3015 </td> 3016 <td> 3017 <p>How often (in seconds) to perform the probe.</p><br /> 3018 </td> 3019 </tr> 3020 <tr> 3021 <td> 3022 <code>timeoutSeconds</code><br/> 3023 <em> 3024 int32 3025 </em> 3026 </td> 3027 <td> 3028 <p>Number of seconds after which the probe times out. Defaults to 1 second.</p><br /> 3029 </td> 3030 </tr> 3031 <tr> 3032 <td> 3033 <code>failureThreshold</code><br/> 3034 <em> 3035 int32 3036 </em> 3037 </td> 3038 <td> 3039 <p>Minimum consecutive failures for the probe to be considered failed after having succeeded.</p><br /> 3040 </td> 3041 </tr> 3042 <tr> 3043 <td> 3044 <code>commands</code><br/> 3045 <em> 3046 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbeCMDs"> 3047 ClusterDefinitionProbeCMDs 3048 </a> 3049 </em> 3050 </td> 3051 <td> 3052 <em>(Optional)</em> 3053 <p>commands used to execute for probe.</p><br /> 3054 </td> 3055 </tr> 3056 </tbody> 3057 </table> 3058 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbeCMDs">ClusterDefinitionProbeCMDs 3059 </h3> 3060 <p> 3061 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbe">ClusterDefinitionProbe</a>) 3062 </p> 3063 <div> 3064 </div> 3065 <table> 3066 <thead> 3067 <tr> 3068 <th>Field</th> 3069 <th>Description</th> 3070 </tr> 3071 </thead> 3072 <tbody> 3073 <tr> 3074 <td> 3075 <code>writes</code><br/> 3076 <em> 3077 []string 3078 </em> 3079 </td> 3080 <td> 3081 <em>(Optional)</em> 3082 <p>Write check executed on probe sidecar, used to check workload’s allow write access.</p><br /> 3083 </td> 3084 </tr> 3085 <tr> 3086 <td> 3087 <code>queries</code><br/> 3088 <em> 3089 []string 3090 </em> 3091 </td> 3092 <td> 3093 <em>(Optional)</em> 3094 <p>Read check executed on probe sidecar, used to check workload’s readonly access.</p><br /> 3095 </td> 3096 </tr> 3097 </tbody> 3098 </table> 3099 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbes">ClusterDefinitionProbes 3100 </h3> 3101 <p> 3102 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 3103 </p> 3104 <div> 3105 </div> 3106 <table> 3107 <thead> 3108 <tr> 3109 <th>Field</th> 3110 <th>Description</th> 3111 </tr> 3112 </thead> 3113 <tbody> 3114 <tr> 3115 <td> 3116 <code>runningProbe</code><br/> 3117 <em> 3118 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbe"> 3119 ClusterDefinitionProbe 3120 </a> 3121 </em> 3122 </td> 3123 <td> 3124 <em>(Optional)</em> 3125 <p>Probe for DB running check.</p><br /> 3126 </td> 3127 </tr> 3128 <tr> 3129 <td> 3130 <code>statusProbe</code><br/> 3131 <em> 3132 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbe"> 3133 ClusterDefinitionProbe 3134 </a> 3135 </em> 3136 </td> 3137 <td> 3138 <em>(Optional)</em> 3139 <p>Probe for DB status check.</p><br /> 3140 </td> 3141 </tr> 3142 <tr> 3143 <td> 3144 <code>roleProbe</code><br/> 3145 <em> 3146 <a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionProbe"> 3147 ClusterDefinitionProbe 3148 </a> 3149 </em> 3150 </td> 3151 <td> 3152 <em>(Optional)</em> 3153 <p>Probe for DB role changed check.</p><br /> 3154 </td> 3155 </tr> 3156 <tr> 3157 <td> 3158 <code>roleProbeTimeoutAfterPodsReady</code><br/> 3159 <em> 3160 int32 3161 </em> 3162 </td> 3163 <td> 3164 <em>(Optional)</em> 3165 <p>roleProbeTimeoutAfterPodsReady(in seconds), when all pods of the component are ready,<br />it will detect whether the application is available in the pod.<br />if pods exceed the InitializationTimeoutSeconds time without a role label,<br />this component will enter the Failed/Abnormal phase.<br />Note that this configuration will only take effect if the component supports RoleProbe<br />and will not affect the life cycle of the pod. default values are 60 seconds.</p><br /> 3166 </td> 3167 </tr> 3168 </tbody> 3169 </table> 3170 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterDefinitionSpec">ClusterDefinitionSpec 3171 </h3> 3172 <p> 3173 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinition">ClusterDefinition</a>) 3174 </p> 3175 <div> 3176 <p>ClusterDefinitionSpec defines the desired state of ClusterDefinition</p><br /> 3177 </div> 3178 <table> 3179 <thead> 3180 <tr> 3181 <th>Field</th> 3182 <th>Description</th> 3183 </tr> 3184 </thead> 3185 <tbody> 3186 <tr> 3187 <td> 3188 <code>type</code><br/> 3189 <em> 3190 string 3191 </em> 3192 </td> 3193 <td> 3194 <em>(Optional)</em> 3195 <p>Cluster definition type defines well known application cluster type, e.g. mysql/redis/mongodb</p><br /> 3196 </td> 3197 </tr> 3198 <tr> 3199 <td> 3200 <code>componentDefs</code><br/> 3201 <em> 3202 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition"> 3203 []ClusterComponentDefinition 3204 </a> 3205 </em> 3206 </td> 3207 <td> 3208 <p>componentDefs provides cluster components definitions.</p><br /> 3209 </td> 3210 </tr> 3211 <tr> 3212 <td> 3213 <code>connectionCredential</code><br/> 3214 <em> 3215 map[string]string 3216 </em> 3217 </td> 3218 <td> 3219 <em>(Optional)</em> 3220 <p>Connection credential template used for creating a connection credential<br />secret for cluster.apps.kubeblocks.io object.</p><br /><br /><p>Built-in objects are:<br />- <code>$(RANDOM_PASSWD)</code> - random 8 characters.<br />- <code>$(UUID)</code> - generate a random UUID v4 string.<br />- <code>$(UUID_B64)</code> - generate a random UUID v4 BASE64 encoded string.<br />- <code>$(UUID_STR_B64)</code> - generate a random UUID v4 string then BASE64 encoded.<br />- <code>$(UUID_HEX)</code> - generate a random UUID v4 HEX representation.<br />- <code>$(HEADLESS_SVC_FQDN)</code> - headless service FQDN placeholder, value pattern - $(CLUSTER_NAME)-$(1ST_COMP_NAME)-headless.$(NAMESPACE).svc,<br /> where 1ST_COMP_NAME is the 1st component that provide <code>ClusterDefinition.spec.componentDefs[].service</code> attribute;<br />- <code>$(SVC_FQDN)</code> - service FQDN placeholder, value pattern - $(CLUSTER_NAME)-$(1ST_COMP_NAME).$(NAMESPACE).svc,<br /> where 1ST_COMP_NAME is the 1st component that provide <code>ClusterDefinition.spec.componentDefs[].service</code> attribute;<br />- <code>$(SVC_PORT_{PORT-NAME})</code> - a ServicePort’s port value with specified port name, i.e, a servicePort JSON struct:<br /> <code>{"name": "mysql", "targetPort": "mysqlContainerPort", "port": 3306}</code>, and “$(SVC_PORT_mysql)” in the<br /> connection credential value is 3306.</p><br /> 3221 </td> 3222 </tr> 3223 </tbody> 3224 </table> 3225 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterDefinitionStatus">ClusterDefinitionStatus 3226 </h3> 3227 <p> 3228 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinition">ClusterDefinition</a>) 3229 </p> 3230 <div> 3231 <p>ClusterDefinitionStatus defines the observed state of ClusterDefinition</p><br /> 3232 </div> 3233 <table> 3234 <thead> 3235 <tr> 3236 <th>Field</th> 3237 <th>Description</th> 3238 </tr> 3239 </thead> 3240 <tbody> 3241 <tr> 3242 <td> 3243 <code>phase</code><br/> 3244 <em> 3245 <a href="#apps.kubeblocks.io/v1alpha1.Phase"> 3246 Phase 3247 </a> 3248 </em> 3249 </td> 3250 <td> 3251 <p>ClusterDefinition phase, valid values are <code>empty</code>, <code>Available</code>, ‘Unavailable`.<br />Available is ClusterDefinition become available, and can be referenced for co-related objects.</p><br /> 3252 </td> 3253 </tr> 3254 <tr> 3255 <td> 3256 <code>message</code><br/> 3257 <em> 3258 string 3259 </em> 3260 </td> 3261 <td> 3262 <em>(Optional)</em> 3263 <p>Extra message in current phase</p><br /> 3264 </td> 3265 </tr> 3266 <tr> 3267 <td> 3268 <code>observedGeneration</code><br/> 3269 <em> 3270 int64 3271 </em> 3272 </td> 3273 <td> 3274 <em>(Optional)</em> 3275 <p>observedGeneration is the most recent generation observed for this<br />ClusterDefinition. It corresponds to the ClusterDefinition’s generation, which is<br />updated on mutation by the API Server.</p><br /> 3276 </td> 3277 </tr> 3278 </tbody> 3279 </table> 3280 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterMonitor">ClusterMonitor 3281 </h3> 3282 <p> 3283 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 3284 </p> 3285 <div> 3286 </div> 3287 <table> 3288 <thead> 3289 <tr> 3290 <th>Field</th> 3291 <th>Description</th> 3292 </tr> 3293 </thead> 3294 <tbody> 3295 <tr> 3296 <td> 3297 <code>monitoringInterval</code><br/> 3298 <em> 3299 <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> 3300 Kubernetes api utils intstr.IntOrString 3301 </a> 3302 </em> 3303 </td> 3304 <td> 3305 <em>(Optional)</em> 3306 <p>monitoringInterval specifies interval of monitoring, no monitor if set to 0</p><br /> 3307 </td> 3308 </tr> 3309 </tbody> 3310 </table> 3311 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterNetwork">ClusterNetwork 3312 </h3> 3313 <p> 3314 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 3315 </p> 3316 <div> 3317 </div> 3318 <table> 3319 <thead> 3320 <tr> 3321 <th>Field</th> 3322 <th>Description</th> 3323 </tr> 3324 </thead> 3325 <tbody> 3326 <tr> 3327 <td> 3328 <code>hostNetworkAccessible</code><br/> 3329 <em> 3330 bool 3331 </em> 3332 </td> 3333 <td> 3334 <em>(Optional)</em> 3335 <p>hostNetworkAccessible specifies whether host network is accessible. It defaults to false</p><br /> 3336 </td> 3337 </tr> 3338 <tr> 3339 <td> 3340 <code>publiclyAccessible</code><br/> 3341 <em> 3342 bool 3343 </em> 3344 </td> 3345 <td> 3346 <em>(Optional)</em> 3347 <p>publiclyAccessible specifies whether it is publicly accessible. It defaults to false</p><br /> 3348 </td> 3349 </tr> 3350 </tbody> 3351 </table> 3352 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterPhase">ClusterPhase 3353 (<code>string</code> alias)</h3> 3354 <p> 3355 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterStatus">ClusterStatus</a>, <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestBehaviour">OpsRequestBehaviour</a>) 3356 </p> 3357 <div> 3358 <p>ClusterPhase defines the Cluster CR .status.phase</p><br /> 3359 </div> 3360 <table> 3361 <thead> 3362 <tr> 3363 <th>Value</th> 3364 <th>Description</th> 3365 </tr> 3366 </thead> 3367 <tbody><tr><td><p>"Abnormal"</p></td> 3368 <td></td> 3369 </tr><tr><td><p>"Creating"</p></td> 3370 <td><p>Abnormal is a sub-state of failed, where one of the cluster components has “Failed” or “Abnormal” status phase.</p><br /></td> 3371 </tr><tr><td><p>"Failed"</p></td> 3372 <td></td> 3373 </tr><tr><td><p>"Running"</p></td> 3374 <td><p>REVIEW/TODO: AbnormalClusterPhase provides hybrid, consider remove it if possible</p><br /></td> 3375 </tr><tr><td><p>"Updating"</p></td> 3376 <td></td> 3377 </tr><tr><td><p>"Stopped"</p></td> 3378 <td></td> 3379 </tr></tbody> 3380 </table> 3381 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterResourceConstraintSelector">ClusterResourceConstraintSelector 3382 </h3> 3383 <p> 3384 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentResourceConstraintSpec">ComponentResourceConstraintSpec</a>) 3385 </p> 3386 <div> 3387 </div> 3388 <table> 3389 <thead> 3390 <tr> 3391 <th>Field</th> 3392 <th>Description</th> 3393 </tr> 3394 </thead> 3395 <tbody> 3396 <tr> 3397 <td> 3398 <code>clusterDefRef</code><br/> 3399 <em> 3400 string 3401 </em> 3402 </td> 3403 <td> 3404 <p>clusterDefRef is the name of the cluster definition.</p><br /> 3405 </td> 3406 </tr> 3407 <tr> 3408 <td> 3409 <code>components</code><br/> 3410 <em> 3411 <a href="#apps.kubeblocks.io/v1alpha1.ComponentResourceConstraintSelector"> 3412 []ComponentResourceConstraintSelector 3413 </a> 3414 </em> 3415 </td> 3416 <td> 3417 <p>selector is used to bind the resource constraint to components.</p><br /> 3418 </td> 3419 </tr> 3420 </tbody> 3421 </table> 3422 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterResources">ClusterResources 3423 </h3> 3424 <p> 3425 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 3426 </p> 3427 <div> 3428 </div> 3429 <table> 3430 <thead> 3431 <tr> 3432 <th>Field</th> 3433 <th>Description</th> 3434 </tr> 3435 </thead> 3436 <tbody> 3437 <tr> 3438 <td> 3439 <code>cpu</code><br/> 3440 <em> 3441 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 3442 Kubernetes resource.Quantity 3443 </a> 3444 </em> 3445 </td> 3446 <td> 3447 <em>(Optional)</em> 3448 <p>cpu resource needed, more info: <a href="https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/">https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/</a></p><br /> 3449 </td> 3450 </tr> 3451 <tr> 3452 <td> 3453 <code>memory</code><br/> 3454 <em> 3455 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 3456 Kubernetes resource.Quantity 3457 </a> 3458 </em> 3459 </td> 3460 <td> 3461 <em>(Optional)</em> 3462 <p>memory resource needed, more info: <a href="https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/">https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/</a></p><br /> 3463 </td> 3464 </tr> 3465 </tbody> 3466 </table> 3467 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec 3468 </h3> 3469 <p> 3470 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Cluster">Cluster</a>) 3471 </p> 3472 <div> 3473 <p>ClusterSpec defines the desired state of Cluster.</p><br /> 3474 </div> 3475 <table> 3476 <thead> 3477 <tr> 3478 <th>Field</th> 3479 <th>Description</th> 3480 </tr> 3481 </thead> 3482 <tbody> 3483 <tr> 3484 <td> 3485 <code>clusterDefinitionRef</code><br/> 3486 <em> 3487 string 3488 </em> 3489 </td> 3490 <td> 3491 <p>Cluster referencing ClusterDefinition name. This is an immutable attribute.</p><br /> 3492 </td> 3493 </tr> 3494 <tr> 3495 <td> 3496 <code>clusterVersionRef</code><br/> 3497 <em> 3498 string 3499 </em> 3500 </td> 3501 <td> 3502 <em>(Optional)</em> 3503 <p>Cluster referencing ClusterVersion name.</p><br /> 3504 </td> 3505 </tr> 3506 <tr> 3507 <td> 3508 <code>terminationPolicy</code><br/> 3509 <em> 3510 <a href="#apps.kubeblocks.io/v1alpha1.TerminationPolicyType"> 3511 TerminationPolicyType 3512 </a> 3513 </em> 3514 </td> 3515 <td> 3516 <p>Cluster termination policy. Valid values are DoNotTerminate, Halt, Delete, WipeOut.<br />DoNotTerminate will block delete operation.<br />Halt will delete workload resources such as statefulset, deployment workloads but keep PVCs.<br />Delete is based on Halt and deletes PVCs.<br />WipeOut is based on Delete and wipe out all volume snapshots and snapshot data from backup storage location.</p><br /> 3517 </td> 3518 </tr> 3519 <tr> 3520 <td> 3521 <code>componentSpecs</code><br/> 3522 <em> 3523 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec"> 3524 []ClusterComponentSpec 3525 </a> 3526 </em> 3527 </td> 3528 <td> 3529 <p>List of componentSpecs you want to replace in ClusterDefinition and ClusterVersion. It will replace the field in ClusterDefinition’s and ClusterVersion’s component if type is matching.</p><br /> 3530 </td> 3531 </tr> 3532 <tr> 3533 <td> 3534 <code>tenancy</code><br/> 3535 <em> 3536 <a href="#apps.kubeblocks.io/v1alpha1.TenancyType"> 3537 TenancyType 3538 </a> 3539 </em> 3540 </td> 3541 <td> 3542 <em>(Optional)</em> 3543 <p>tenancy describes how pods are distributed across node.<br />SharedNode means multiple pods may share the same node.<br />DedicatedNode means each pod runs on their own dedicated node.</p><br /> 3544 </td> 3545 </tr> 3546 <tr> 3547 <td> 3548 <code>availabilityPolicy</code><br/> 3549 <em> 3550 <a href="#apps.kubeblocks.io/v1alpha1.AvailabilityPolicyType"> 3551 AvailabilityPolicyType 3552 </a> 3553 </em> 3554 </td> 3555 <td> 3556 <em>(Optional)</em> 3557 <p>availabilityPolicy describes the availability policy, including zone, node, and none.</p><br /> 3558 </td> 3559 </tr> 3560 <tr> 3561 <td> 3562 <code>affinity</code><br/> 3563 <em> 3564 <a href="#apps.kubeblocks.io/v1alpha1.Affinity"> 3565 Affinity 3566 </a> 3567 </em> 3568 </td> 3569 <td> 3570 <em>(Optional)</em> 3571 <p>affinity is a group of affinity scheduling rules.</p><br /> 3572 </td> 3573 </tr> 3574 <tr> 3575 <td> 3576 <code>tolerations</code><br/> 3577 <em> 3578 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#toleration-v1-core"> 3579 []Kubernetes core/v1.Toleration 3580 </a> 3581 </em> 3582 </td> 3583 <td> 3584 <em>(Optional)</em> 3585 <p>tolerations are attached to tolerate any taint that matches the triple <code>key,value,effect</code> using the matching operator <code>operator</code>.</p><br /> 3586 </td> 3587 </tr> 3588 <tr> 3589 <td> 3590 <code>replicas</code><br/> 3591 <em> 3592 int32 3593 </em> 3594 </td> 3595 <td> 3596 <em>(Optional)</em> 3597 <p>replicas specifies the replicas of the first componentSpec, if the replicas of the first componentSpec is specified, this value will be ignored.</p><br /> 3598 </td> 3599 </tr> 3600 <tr> 3601 <td> 3602 <code>resources</code><br/> 3603 <em> 3604 <a href="#apps.kubeblocks.io/v1alpha1.ClusterResources"> 3605 ClusterResources 3606 </a> 3607 </em> 3608 </td> 3609 <td> 3610 <em>(Optional)</em> 3611 <p>resources specifies the resources of the first componentSpec, if the resources of the first componentSpec is specified, this value will be ignored.</p><br /> 3612 </td> 3613 </tr> 3614 <tr> 3615 <td> 3616 <code>storage</code><br/> 3617 <em> 3618 <a href="#apps.kubeblocks.io/v1alpha1.ClusterStorage"> 3619 ClusterStorage 3620 </a> 3621 </em> 3622 </td> 3623 <td> 3624 <em>(Optional)</em> 3625 <p>storage specifies the storage of the first componentSpec, if the storage of the first componentSpec is specified, this value will be ignored.</p><br /> 3626 </td> 3627 </tr> 3628 <tr> 3629 <td> 3630 <code>monitor</code><br/> 3631 <em> 3632 <a href="#apps.kubeblocks.io/v1alpha1.ClusterMonitor"> 3633 ClusterMonitor 3634 </a> 3635 </em> 3636 </td> 3637 <td> 3638 <em>(Optional)</em> 3639 <p>monitor specifies the configuration of monitor</p><br /> 3640 </td> 3641 </tr> 3642 <tr> 3643 <td> 3644 <code>network</code><br/> 3645 <em> 3646 <a href="#apps.kubeblocks.io/v1alpha1.ClusterNetwork"> 3647 ClusterNetwork 3648 </a> 3649 </em> 3650 </td> 3651 <td> 3652 <em>(Optional)</em> 3653 <p>network specifies the configuration of network</p><br /> 3654 </td> 3655 </tr> 3656 <tr> 3657 <td> 3658 <code>backup</code><br/> 3659 <em> 3660 <a href="#apps.kubeblocks.io/v1alpha1.ClusterBackup"> 3661 ClusterBackup 3662 </a> 3663 </em> 3664 </td> 3665 <td> 3666 <em>(Optional)</em> 3667 <p>cluster backup configuration.</p><br /> 3668 </td> 3669 </tr> 3670 </tbody> 3671 </table> 3672 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterStatus">ClusterStatus 3673 </h3> 3674 <p> 3675 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Cluster">Cluster</a>) 3676 </p> 3677 <div> 3678 <p>ClusterStatus defines the observed state of Cluster.</p><br /> 3679 </div> 3680 <table> 3681 <thead> 3682 <tr> 3683 <th>Field</th> 3684 <th>Description</th> 3685 </tr> 3686 </thead> 3687 <tbody> 3688 <tr> 3689 <td> 3690 <code>observedGeneration</code><br/> 3691 <em> 3692 int64 3693 </em> 3694 </td> 3695 <td> 3696 <em>(Optional)</em> 3697 <p>observedGeneration is the most recent generation observed for this<br />Cluster. It corresponds to the Cluster’s generation, which is<br />updated on mutation by the API Server.</p><br /> 3698 </td> 3699 </tr> 3700 <tr> 3701 <td> 3702 <code>phase</code><br/> 3703 <em> 3704 <a href="#apps.kubeblocks.io/v1alpha1.ClusterPhase"> 3705 ClusterPhase 3706 </a> 3707 </em> 3708 </td> 3709 <td> 3710 <em>(Optional)</em> 3711 <p>phase describes the phase of the Cluster, the detail information of the phases are as following:<br />Running: cluster is running, all its components are available. [terminal state]<br />Stopped: cluster has stopped, all its components are stopped. [terminal state]<br />Failed: cluster is unavailable. [terminal state]<br />Abnormal: Cluster is still running, but part of its components are Abnormal/Failed. [terminal state]<br />Creating: Cluster has entered creating process.<br />Updating: Cluster has entered updating process, triggered by Spec. updated.</p><br /> 3712 </td> 3713 </tr> 3714 <tr> 3715 <td> 3716 <code>message</code><br/> 3717 <em> 3718 string 3719 </em> 3720 </td> 3721 <td> 3722 <em>(Optional)</em> 3723 <p>message describes cluster details message in current phase.</p><br /> 3724 </td> 3725 </tr> 3726 <tr> 3727 <td> 3728 <code>components</code><br/> 3729 <em> 3730 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentStatus"> 3731 map[string]github.com/apecloud/kubeblocks/apis/apps/v1alpha1.ClusterComponentStatus 3732 </a> 3733 </em> 3734 </td> 3735 <td> 3736 <em>(Optional)</em> 3737 <p>components record the current status information of all components of the cluster.</p><br /> 3738 </td> 3739 </tr> 3740 <tr> 3741 <td> 3742 <code>clusterDefGeneration</code><br/> 3743 <em> 3744 int64 3745 </em> 3746 </td> 3747 <td> 3748 <em>(Optional)</em> 3749 <p>clusterDefGeneration represents the generation number of ClusterDefinition referenced.</p><br /> 3750 </td> 3751 </tr> 3752 <tr> 3753 <td> 3754 <code>conditions</code><br/> 3755 <em> 3756 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#condition-v1-meta"> 3757 []Kubernetes meta/v1.Condition 3758 </a> 3759 </em> 3760 </td> 3761 <td> 3762 <em>(Optional)</em> 3763 <p>Describe current state of cluster API Resource, like warning.</p><br /> 3764 </td> 3765 </tr> 3766 </tbody> 3767 </table> 3768 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterStorage">ClusterStorage 3769 </h3> 3770 <p> 3771 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 3772 </p> 3773 <div> 3774 </div> 3775 <table> 3776 <thead> 3777 <tr> 3778 <th>Field</th> 3779 <th>Description</th> 3780 </tr> 3781 </thead> 3782 <tbody> 3783 <tr> 3784 <td> 3785 <code>size</code><br/> 3786 <em> 3787 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 3788 Kubernetes resource.Quantity 3789 </a> 3790 </em> 3791 </td> 3792 <td> 3793 <em>(Optional)</em> 3794 <p>storage size needed, more info: <a href="https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/">https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/</a></p><br /> 3795 </td> 3796 </tr> 3797 </tbody> 3798 </table> 3799 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterSwitchPolicy">ClusterSwitchPolicy 3800 </h3> 3801 <p> 3802 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec</a>) 3803 </p> 3804 <div> 3805 </div> 3806 <table> 3807 <thead> 3808 <tr> 3809 <th>Field</th> 3810 <th>Description</th> 3811 </tr> 3812 </thead> 3813 <tbody> 3814 <tr> 3815 <td> 3816 <code>type</code><br/> 3817 <em> 3818 <a href="#apps.kubeblocks.io/v1alpha1.SwitchPolicyType"> 3819 SwitchPolicyType 3820 </a> 3821 </em> 3822 </td> 3823 <td> 3824 <em>(Optional)</em> 3825 <p>clusterSwitchPolicy defines type of the switchPolicy when workloadType is Replication.<br />MaximumAvailability: [WIP] when the primary is active, do switch if the synchronization delay = 0 in the user-defined lagProbe data delay detection logic, otherwise do not switch. The primary is down, switch immediately. It will be available in future versions.<br />MaximumDataProtection: [WIP] when the primary is active, do switch if synchronization delay = 0 in the user-defined lagProbe data lag detection logic, otherwise do not switch. If the primary is down, if it can be judged that the primary and secondary data are consistent, then do the switch, otherwise do not switch. It will be available in future versions.<br />Noop: KubeBlocks will not perform high-availability switching on components. Users need to implement HA by themselves or integrate open source HA solution.</p><br /> 3826 </td> 3827 </tr> 3828 </tbody> 3829 </table> 3830 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterVersionSpec">ClusterVersionSpec 3831 </h3> 3832 <p> 3833 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterVersion">ClusterVersion</a>) 3834 </p> 3835 <div> 3836 <p>ClusterVersionSpec defines the desired state of ClusterVersion</p><br /> 3837 </div> 3838 <table> 3839 <thead> 3840 <tr> 3841 <th>Field</th> 3842 <th>Description</th> 3843 </tr> 3844 </thead> 3845 <tbody> 3846 <tr> 3847 <td> 3848 <code>clusterDefinitionRef</code><br/> 3849 <em> 3850 string 3851 </em> 3852 </td> 3853 <td> 3854 <p>ref ClusterDefinition.</p><br /> 3855 </td> 3856 </tr> 3857 <tr> 3858 <td> 3859 <code>componentVersions</code><br/> 3860 <em> 3861 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVersion"> 3862 []ClusterComponentVersion 3863 </a> 3864 </em> 3865 </td> 3866 <td> 3867 <p>List of components’ containers versioning context, i.e., container image ID, container commands, args., and environments.</p><br /> 3868 </td> 3869 </tr> 3870 </tbody> 3871 </table> 3872 <h3 id="apps.kubeblocks.io/v1alpha1.ClusterVersionStatus">ClusterVersionStatus 3873 </h3> 3874 <p> 3875 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterVersion">ClusterVersion</a>) 3876 </p> 3877 <div> 3878 <p>ClusterVersionStatus defines the observed state of ClusterVersion</p><br /> 3879 </div> 3880 <table> 3881 <thead> 3882 <tr> 3883 <th>Field</th> 3884 <th>Description</th> 3885 </tr> 3886 </thead> 3887 <tbody> 3888 <tr> 3889 <td> 3890 <code>phase</code><br/> 3891 <em> 3892 <a href="#apps.kubeblocks.io/v1alpha1.Phase"> 3893 Phase 3894 </a> 3895 </em> 3896 </td> 3897 <td> 3898 <em>(Optional)</em> 3899 <p>phase - in list of [Available,Unavailable]</p><br /> 3900 </td> 3901 </tr> 3902 <tr> 3903 <td> 3904 <code>message</code><br/> 3905 <em> 3906 string 3907 </em> 3908 </td> 3909 <td> 3910 <em>(Optional)</em> 3911 <p>A human readable message indicating details about why the ClusterVersion is in this phase.</p><br /> 3912 </td> 3913 </tr> 3914 <tr> 3915 <td> 3916 <code>observedGeneration</code><br/> 3917 <em> 3918 int64 3919 </em> 3920 </td> 3921 <td> 3922 <em>(Optional)</em> 3923 <p>generation number</p><br /> 3924 </td> 3925 </tr> 3926 <tr> 3927 <td> 3928 <code>clusterDefGeneration</code><br/> 3929 <em> 3930 int64 3931 </em> 3932 </td> 3933 <td> 3934 <em>(Optional)</em> 3935 <p>clusterDefGeneration represents the generation number of ClusterDefinition referenced.</p><br /> 3936 </td> 3937 </tr> 3938 </tbody> 3939 </table> 3940 <h3 id="apps.kubeblocks.io/v1alpha1.CmdExecutorConfig">CmdExecutorConfig 3941 </h3> 3942 <p> 3943 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SwitchoverAction">SwitchoverAction</a>, <a href="#apps.kubeblocks.io/v1alpha1.SystemAccountSpec">SystemAccountSpec</a>) 3944 </p> 3945 <div> 3946 <p>CmdExecutorConfig specifies how to perform creation and deletion statements.</p><br /> 3947 </div> 3948 <table> 3949 <thead> 3950 <tr> 3951 <th>Field</th> 3952 <th>Description</th> 3953 </tr> 3954 </thead> 3955 <tbody> 3956 <tr> 3957 <td> 3958 <code>CommandExecutorEnvItem</code><br/> 3959 <em> 3960 <a href="#apps.kubeblocks.io/v1alpha1.CommandExecutorEnvItem"> 3961 CommandExecutorEnvItem 3962 </a> 3963 </em> 3964 </td> 3965 <td> 3966 <p> 3967 (Members of <code>CommandExecutorEnvItem</code> are embedded into this type.) 3968 </p> 3969 </td> 3970 </tr> 3971 <tr> 3972 <td> 3973 <code>CommandExecutorItem</code><br/> 3974 <em> 3975 <a href="#apps.kubeblocks.io/v1alpha1.CommandExecutorItem"> 3976 CommandExecutorItem 3977 </a> 3978 </em> 3979 </td> 3980 <td> 3981 <p> 3982 (Members of <code>CommandExecutorItem</code> are embedded into this type.) 3983 </p> 3984 </td> 3985 </tr> 3986 </tbody> 3987 </table> 3988 <h3 id="apps.kubeblocks.io/v1alpha1.CommandExecutorEnvItem">CommandExecutorEnvItem 3989 </h3> 3990 <p> 3991 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.CmdExecutorConfig">CmdExecutorConfig</a>, <a href="#apps.kubeblocks.io/v1alpha1.SwitchoverShortSpec">SwitchoverShortSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.SystemAccountShortSpec">SystemAccountShortSpec</a>) 3992 </p> 3993 <div> 3994 </div> 3995 <table> 3996 <thead> 3997 <tr> 3998 <th>Field</th> 3999 <th>Description</th> 4000 </tr> 4001 </thead> 4002 <tbody> 4003 <tr> 4004 <td> 4005 <code>image</code><br/> 4006 <em> 4007 string 4008 </em> 4009 </td> 4010 <td> 4011 <p>image for Connector when executing the command.</p><br /> 4012 </td> 4013 </tr> 4014 <tr> 4015 <td> 4016 <code>env</code><br/> 4017 <em> 4018 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#envvar-v1-core"> 4019 []Kubernetes core/v1.EnvVar 4020 </a> 4021 </em> 4022 </td> 4023 <td> 4024 <em>(Optional)</em> 4025 <p>envs is a list of environment variables.</p><br /> 4026 </td> 4027 </tr> 4028 </tbody> 4029 </table> 4030 <h3 id="apps.kubeblocks.io/v1alpha1.CommandExecutorItem">CommandExecutorItem 4031 </h3> 4032 <p> 4033 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.CmdExecutorConfig">CmdExecutorConfig</a>) 4034 </p> 4035 <div> 4036 </div> 4037 <table> 4038 <thead> 4039 <tr> 4040 <th>Field</th> 4041 <th>Description</th> 4042 </tr> 4043 </thead> 4044 <tbody> 4045 <tr> 4046 <td> 4047 <code>command</code><br/> 4048 <em> 4049 []string 4050 </em> 4051 </td> 4052 <td> 4053 <p>command to perform statements.</p><br /> 4054 </td> 4055 </tr> 4056 <tr> 4057 <td> 4058 <code>args</code><br/> 4059 <em> 4060 []string 4061 </em> 4062 </td> 4063 <td> 4064 <em>(Optional)</em> 4065 <p>args is used to perform statements.</p><br /> 4066 </td> 4067 </tr> 4068 </tbody> 4069 </table> 4070 <h3 id="apps.kubeblocks.io/v1alpha1.CommonBackupPolicy">CommonBackupPolicy 4071 </h3> 4072 <p> 4073 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicy">BackupPolicy</a>) 4074 </p> 4075 <div> 4076 </div> 4077 <table> 4078 <thead> 4079 <tr> 4080 <th>Field</th> 4081 <th>Description</th> 4082 </tr> 4083 </thead> 4084 <tbody> 4085 <tr> 4086 <td> 4087 <code>BasePolicy</code><br/> 4088 <em> 4089 <a href="#apps.kubeblocks.io/v1alpha1.BasePolicy"> 4090 BasePolicy 4091 </a> 4092 </em> 4093 </td> 4094 <td> 4095 <p> 4096 (Members of <code>BasePolicy</code> are embedded into this type.) 4097 </p> 4098 </td> 4099 </tr> 4100 <tr> 4101 <td> 4102 <code>backupToolName</code><br/> 4103 <em> 4104 string 4105 </em> 4106 </td> 4107 <td> 4108 <p>which backup tool to perform database backup, only support one tool.</p><br /> 4109 </td> 4110 </tr> 4111 </tbody> 4112 </table> 4113 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentClass">ComponentClass 4114 </h3> 4115 <p> 4116 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinitionStatus">ComponentClassDefinitionStatus</a>, <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassSeries">ComponentClassSeries</a>) 4117 </p> 4118 <div> 4119 </div> 4120 <table> 4121 <thead> 4122 <tr> 4123 <th>Field</th> 4124 <th>Description</th> 4125 </tr> 4126 </thead> 4127 <tbody> 4128 <tr> 4129 <td> 4130 <code>name</code><br/> 4131 <em> 4132 string 4133 </em> 4134 </td> 4135 <td> 4136 <em>(Optional)</em> 4137 <p>name is the class name</p><br /> 4138 </td> 4139 </tr> 4140 <tr> 4141 <td> 4142 <code>args</code><br/> 4143 <em> 4144 []string 4145 </em> 4146 </td> 4147 <td> 4148 <em>(Optional)</em> 4149 <p>args are variable’s value</p><br /> 4150 </td> 4151 </tr> 4152 <tr> 4153 <td> 4154 <code>cpu</code><br/> 4155 <em> 4156 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 4157 Kubernetes resource.Quantity 4158 </a> 4159 </em> 4160 </td> 4161 <td> 4162 <em>(Optional)</em> 4163 <p>the CPU of the class</p><br /> 4164 </td> 4165 </tr> 4166 <tr> 4167 <td> 4168 <code>memory</code><br/> 4169 <em> 4170 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 4171 Kubernetes resource.Quantity 4172 </a> 4173 </em> 4174 </td> 4175 <td> 4176 <em>(Optional)</em> 4177 <p>the memory of the class</p><br /> 4178 </td> 4179 </tr> 4180 </tbody> 4181 </table> 4182 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentClassDefinitionSpec">ComponentClassDefinitionSpec 4183 </h3> 4184 <p> 4185 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinition">ComponentClassDefinition</a>) 4186 </p> 4187 <div> 4188 <p>ComponentClassDefinitionSpec defines the desired state of ComponentClassDefinition</p><br /> 4189 </div> 4190 <table> 4191 <thead> 4192 <tr> 4193 <th>Field</th> 4194 <th>Description</th> 4195 </tr> 4196 </thead> 4197 <tbody> 4198 <tr> 4199 <td> 4200 <code>groups</code><br/> 4201 <em> 4202 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassGroup"> 4203 []ComponentClassGroup 4204 </a> 4205 </em> 4206 </td> 4207 <td> 4208 <em>(Optional)</em> 4209 <p>group defines a list of class series that conform to the same constraint.</p><br /> 4210 </td> 4211 </tr> 4212 </tbody> 4213 </table> 4214 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentClassDefinitionStatus">ComponentClassDefinitionStatus 4215 </h3> 4216 <p> 4217 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinition">ComponentClassDefinition</a>) 4218 </p> 4219 <div> 4220 <p>ComponentClassDefinitionStatus defines the observed state of ComponentClassDefinition</p><br /> 4221 </div> 4222 <table> 4223 <thead> 4224 <tr> 4225 <th>Field</th> 4226 <th>Description</th> 4227 </tr> 4228 </thead> 4229 <tbody> 4230 <tr> 4231 <td> 4232 <code>observedGeneration</code><br/> 4233 <em> 4234 int64 4235 </em> 4236 </td> 4237 <td> 4238 <em>(Optional)</em> 4239 <p>observedGeneration is the most recent generation observed for this<br />ComponentClassDefinition. It corresponds to the ComponentClassDefinition’s generation, which is<br />updated on mutation by the API Server.</p><br /> 4240 </td> 4241 </tr> 4242 <tr> 4243 <td> 4244 <code>classes</code><br/> 4245 <em> 4246 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClass"> 4247 []ComponentClass 4248 </a> 4249 </em> 4250 </td> 4251 <td> 4252 <p>classes is the list of classes that have been observed for this ComponentClassDefinition</p><br /> 4253 </td> 4254 </tr> 4255 </tbody> 4256 </table> 4257 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentClassGroup">ComponentClassGroup 4258 </h3> 4259 <p> 4260 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentClassDefinitionSpec">ComponentClassDefinitionSpec</a>) 4261 </p> 4262 <div> 4263 </div> 4264 <table> 4265 <thead> 4266 <tr> 4267 <th>Field</th> 4268 <th>Description</th> 4269 </tr> 4270 </thead> 4271 <tbody> 4272 <tr> 4273 <td> 4274 <code>template</code><br/> 4275 <em> 4276 string 4277 </em> 4278 </td> 4279 <td> 4280 <em>(Optional)</em> 4281 <p>template is a class definition template that uses the Go template syntax and allows for variable declaration.<br />When defining a class in Series, specifying the variable’s value is sufficient, as the complete class<br />definition will be generated through rendering the template.</p><br /><br /><p>For example:<br /> template: |<br /> cpu: “{{ or .cpu 1 }}”<br /> memory: “{{ or .memory 4 }}Gi”</p><br /> 4282 </td> 4283 </tr> 4284 <tr> 4285 <td> 4286 <code>vars</code><br/> 4287 <em> 4288 []string 4289 </em> 4290 </td> 4291 <td> 4292 <em>(Optional)</em> 4293 <p>vars defines the variables declared in the template and will be used to generating the complete class definition by<br />render the template.</p><br /> 4294 </td> 4295 </tr> 4296 <tr> 4297 <td> 4298 <code>series</code><br/> 4299 <em> 4300 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClassSeries"> 4301 []ComponentClassSeries 4302 </a> 4303 </em> 4304 </td> 4305 <td> 4306 <em>(Optional)</em> 4307 <p>series is a series of class definitions.</p><br /> 4308 </td> 4309 </tr> 4310 </tbody> 4311 </table> 4312 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentClassSeries">ComponentClassSeries 4313 </h3> 4314 <p> 4315 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentClassGroup">ComponentClassGroup</a>) 4316 </p> 4317 <div> 4318 </div> 4319 <table> 4320 <thead> 4321 <tr> 4322 <th>Field</th> 4323 <th>Description</th> 4324 </tr> 4325 </thead> 4326 <tbody> 4327 <tr> 4328 <td> 4329 <code>namingTemplate</code><br/> 4330 <em> 4331 string 4332 </em> 4333 </td> 4334 <td> 4335 <em>(Optional)</em> 4336 <p>namingTemplate is a template that uses the Go template syntax and allows for referencing variables defined<br />in ComponentClassGroup.Template. This enables dynamic generation of class names.<br />For example:<br />name: “general-{{ .cpu }}c{{ .memory }}g”</p><br /> 4337 </td> 4338 </tr> 4339 <tr> 4340 <td> 4341 <code>classes</code><br/> 4342 <em> 4343 <a href="#apps.kubeblocks.io/v1alpha1.ComponentClass"> 4344 []ComponentClass 4345 </a> 4346 </em> 4347 </td> 4348 <td> 4349 <em>(Optional)</em> 4350 <p>classes are definitions of classes that come in two forms. In the first form, only ComponentClass.Args<br />need to be defined, and the complete class definition is generated by rendering the ComponentClassGroup.Template<br />and Name. In the second form, the Name, CPU and Memory must be defined.</p><br /> 4351 </td> 4352 </tr> 4353 </tbody> 4354 </table> 4355 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentConfigSpec">ComponentConfigSpec 4356 </h3> 4357 <p> 4358 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>, <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVersion">ClusterComponentVersion</a>) 4359 </p> 4360 <div> 4361 </div> 4362 <table> 4363 <thead> 4364 <tr> 4365 <th>Field</th> 4366 <th>Description</th> 4367 </tr> 4368 </thead> 4369 <tbody> 4370 <tr> 4371 <td> 4372 <code>ComponentTemplateSpec</code><br/> 4373 <em> 4374 <a href="#apps.kubeblocks.io/v1alpha1.ComponentTemplateSpec"> 4375 ComponentTemplateSpec 4376 </a> 4377 </em> 4378 </td> 4379 <td> 4380 <p> 4381 (Members of <code>ComponentTemplateSpec</code> are embedded into this type.) 4382 </p> 4383 </td> 4384 </tr> 4385 <tr> 4386 <td> 4387 <code>keys</code><br/> 4388 <em> 4389 []string 4390 </em> 4391 </td> 4392 <td> 4393 <em>(Optional)</em> 4394 <p>Specify a list of keys.<br />If empty, ConfigConstraint takes effect for all keys in configmap.</p><br /> 4395 </td> 4396 </tr> 4397 <tr> 4398 <td> 4399 <code>lazyRenderedConfigSpec</code><br/> 4400 <em> 4401 <a href="#apps.kubeblocks.io/v1alpha1.LazyRenderedTemplateSpec"> 4402 LazyRenderedTemplateSpec 4403 </a> 4404 </em> 4405 </td> 4406 <td> 4407 <em>(Optional)</em> 4408 <p>lazyRenderedConfigSpec is optional: specify the secondary rendered config spec.</p><br /> 4409 </td> 4410 </tr> 4411 <tr> 4412 <td> 4413 <code>constraintRef</code><br/> 4414 <em> 4415 string 4416 </em> 4417 </td> 4418 <td> 4419 <em>(Optional)</em> 4420 <p>Specify the name of the referenced the configuration constraints object.</p><br /> 4421 </td> 4422 </tr> 4423 <tr> 4424 <td> 4425 <code>asEnvFrom</code><br/> 4426 <em> 4427 []string 4428 </em> 4429 </td> 4430 <td> 4431 <em>(Optional)</em> 4432 <p>asEnvFrom is optional: the list of containers will be injected into EnvFrom.</p><br /> 4433 </td> 4434 </tr> 4435 </tbody> 4436 </table> 4437 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentDefRef">ComponentDefRef 4438 </h3> 4439 <p> 4440 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 4441 </p> 4442 <div> 4443 <p>ComponentDefRef is used to select the component and its fields to be referenced.</p><br /> 4444 </div> 4445 <table> 4446 <thead> 4447 <tr> 4448 <th>Field</th> 4449 <th>Description</th> 4450 </tr> 4451 </thead> 4452 <tbody> 4453 <tr> 4454 <td> 4455 <code>componentDefName</code><br/> 4456 <em> 4457 string 4458 </em> 4459 </td> 4460 <td> 4461 <p>componentDefName is the name of the componentDef to select.</p><br /> 4462 </td> 4463 </tr> 4464 <tr> 4465 <td> 4466 <code>failurePolicy</code><br/> 4467 <em> 4468 <a href="#apps.kubeblocks.io/v1alpha1.FailurePolicyType"> 4469 FailurePolicyType 4470 </a> 4471 </em> 4472 </td> 4473 <td> 4474 <em>(Optional)</em> 4475 <p>failurePolicy is the failure policy of the component.<br />If failed to find the component, the failure policy will be used.</p><br /> 4476 </td> 4477 </tr> 4478 <tr> 4479 <td> 4480 <code>componentRefEnv</code><br/> 4481 <em> 4482 <a href="#apps.kubeblocks.io/v1alpha1.ComponentRefEnv"> 4483 []ComponentRefEnv 4484 </a> 4485 </em> 4486 </td> 4487 <td> 4488 <em>(Optional)</em> 4489 <p>componentRefEnv specifies a list of values to be injected as env variables to each component.</p><br /> 4490 </td> 4491 </tr> 4492 </tbody> 4493 </table> 4494 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentMessageMap">ComponentMessageMap 4495 (<code>map[string]string</code> alias)</h3> 4496 <p> 4497 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentStatus">ClusterComponentStatus</a>) 4498 </p> 4499 <div> 4500 </div> 4501 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentNameSet">ComponentNameSet 4502 (<code>map[string]struct{}</code> alias)</h3> 4503 <div> 4504 </div> 4505 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentOps">ComponentOps 4506 </h3> 4507 <p> 4508 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Expose">Expose</a>, <a href="#apps.kubeblocks.io/v1alpha1.HorizontalScaling">HorizontalScaling</a>, <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.Reconfigure">Reconfigure</a>, <a href="#apps.kubeblocks.io/v1alpha1.ScriptSpec">ScriptSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.Switchover">Switchover</a>, <a href="#apps.kubeblocks.io/v1alpha1.VerticalScaling">VerticalScaling</a>, <a href="#apps.kubeblocks.io/v1alpha1.VolumeExpansion">VolumeExpansion</a>) 4509 </p> 4510 <div> 4511 <p>ComponentOps defines the common variables of component scope operations.</p><br /> 4512 </div> 4513 <table> 4514 <thead> 4515 <tr> 4516 <th>Field</th> 4517 <th>Description</th> 4518 </tr> 4519 </thead> 4520 <tbody> 4521 <tr> 4522 <td> 4523 <code>componentName</code><br/> 4524 <em> 4525 string 4526 </em> 4527 </td> 4528 <td> 4529 <p>componentName cluster component name.</p><br /> 4530 </td> 4531 </tr> 4532 </tbody> 4533 </table> 4534 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentRefEnv">ComponentRefEnv 4535 </h3> 4536 <p> 4537 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentDefRef">ComponentDefRef</a>) 4538 </p> 4539 <div> 4540 <p>ComponentRefEnv specifies name and value of an env.</p><br /> 4541 </div> 4542 <table> 4543 <thead> 4544 <tr> 4545 <th>Field</th> 4546 <th>Description</th> 4547 </tr> 4548 </thead> 4549 <tbody> 4550 <tr> 4551 <td> 4552 <code>name</code><br/> 4553 <em> 4554 string 4555 </em> 4556 </td> 4557 <td> 4558 <p>name is the name of the env to be injected, and it must be a C identifier.</p><br /> 4559 </td> 4560 </tr> 4561 <tr> 4562 <td> 4563 <code>value</code><br/> 4564 <em> 4565 string 4566 </em> 4567 </td> 4568 <td> 4569 <em>(Optional)</em> 4570 <p>value is the value of the env to be injected.</p><br /> 4571 </td> 4572 </tr> 4573 <tr> 4574 <td> 4575 <code>valueFrom</code><br/> 4576 <em> 4577 <a href="#apps.kubeblocks.io/v1alpha1.ComponentValueFrom"> 4578 ComponentValueFrom 4579 </a> 4580 </em> 4581 </td> 4582 <td> 4583 <em>(Optional)</em> 4584 <p>valueFrom specifies the source of the env to be injected.</p><br /> 4585 </td> 4586 </tr> 4587 </tbody> 4588 </table> 4589 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentResourceConstraintSelector">ComponentResourceConstraintSelector 4590 </h3> 4591 <p> 4592 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterResourceConstraintSelector">ClusterResourceConstraintSelector</a>) 4593 </p> 4594 <div> 4595 </div> 4596 <table> 4597 <thead> 4598 <tr> 4599 <th>Field</th> 4600 <th>Description</th> 4601 </tr> 4602 </thead> 4603 <tbody> 4604 <tr> 4605 <td> 4606 <code>componentDefRef</code><br/> 4607 <em> 4608 string 4609 </em> 4610 </td> 4611 <td> 4612 <p>componentDefRef is the name of the component definition in the cluster definition.</p><br /> 4613 </td> 4614 </tr> 4615 <tr> 4616 <td> 4617 <code>rules</code><br/> 4618 <em> 4619 []string 4620 </em> 4621 </td> 4622 <td> 4623 <p>rules are the constraint rules that will be applied to the component.</p><br /> 4624 </td> 4625 </tr> 4626 </tbody> 4627 </table> 4628 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentResourceConstraintSpec">ComponentResourceConstraintSpec 4629 </h3> 4630 <p> 4631 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentResourceConstraint">ComponentResourceConstraint</a>) 4632 </p> 4633 <div> 4634 <p>ComponentResourceConstraintSpec defines the desired state of ComponentResourceConstraint</p><br /> 4635 </div> 4636 <table> 4637 <thead> 4638 <tr> 4639 <th>Field</th> 4640 <th>Description</th> 4641 </tr> 4642 </thead> 4643 <tbody> 4644 <tr> 4645 <td> 4646 <code>rules</code><br/> 4647 <em> 4648 <a href="#apps.kubeblocks.io/v1alpha1.ResourceConstraintRule"> 4649 []ResourceConstraintRule 4650 </a> 4651 </em> 4652 </td> 4653 <td> 4654 <p>Component resource constraint rules.</p><br /> 4655 </td> 4656 </tr> 4657 <tr> 4658 <td> 4659 <code>selector</code><br/> 4660 <em> 4661 <a href="#apps.kubeblocks.io/v1alpha1.ClusterResourceConstraintSelector"> 4662 []ClusterResourceConstraintSelector 4663 </a> 4664 </em> 4665 </td> 4666 <td> 4667 <em>(Optional)</em> 4668 <p>selector is used to bind the resource constraint to cluster definitions.</p><br /> 4669 </td> 4670 </tr> 4671 </tbody> 4672 </table> 4673 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentResourceKey">ComponentResourceKey 4674 (<code>string</code> alias)</h3> 4675 <div> 4676 <p>ComponentResourceKey defines the resource key of component, such as pod/pvc.</p><br /> 4677 </div> 4678 <table> 4679 <thead> 4680 <tr> 4681 <th>Value</th> 4682 <th>Description</th> 4683 </tr> 4684 </thead> 4685 <tbody><tr><td><p>"pods"</p></td> 4686 <td></td> 4687 </tr></tbody> 4688 </table> 4689 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentTemplateSpec">ComponentTemplateSpec 4690 </h3> 4691 <p> 4692 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>, <a href="#apps.kubeblocks.io/v1alpha1.ComponentConfigSpec">ComponentConfigSpec</a>) 4693 </p> 4694 <div> 4695 </div> 4696 <table> 4697 <thead> 4698 <tr> 4699 <th>Field</th> 4700 <th>Description</th> 4701 </tr> 4702 </thead> 4703 <tbody> 4704 <tr> 4705 <td> 4706 <code>name</code><br/> 4707 <em> 4708 string 4709 </em> 4710 </td> 4711 <td> 4712 <p>Specify the name of configuration template.</p><br /> 4713 </td> 4714 </tr> 4715 <tr> 4716 <td> 4717 <code>templateRef</code><br/> 4718 <em> 4719 string 4720 </em> 4721 </td> 4722 <td> 4723 <p>Specify the name of the referenced the configuration template ConfigMap object.</p><br /> 4724 </td> 4725 </tr> 4726 <tr> 4727 <td> 4728 <code>namespace</code><br/> 4729 <em> 4730 string 4731 </em> 4732 </td> 4733 <td> 4734 <em>(Optional)</em> 4735 <p>Specify the namespace of the referenced the configuration template ConfigMap object.<br />An empty namespace is equivalent to the “default” namespace.</p><br /> 4736 </td> 4737 </tr> 4738 <tr> 4739 <td> 4740 <code>volumeName</code><br/> 4741 <em> 4742 string 4743 </em> 4744 </td> 4745 <td> 4746 <p>volumeName is the volume name of PodTemplate, which the configuration file produced through the configuration<br />template will be mounted to the corresponding volume. Must be a DNS_LABEL name.<br />The volume name must be defined in podSpec.containers[*].volumeMounts.</p><br /> 4747 </td> 4748 </tr> 4749 <tr> 4750 <td> 4751 <code>defaultMode</code><br/> 4752 <em> 4753 int32 4754 </em> 4755 </td> 4756 <td> 4757 <em>(Optional)</em> 4758 <p>defaultMode is optional: mode bits used to set permissions on created files by default.<br />Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511.<br />YAML accepts both octal and decimal values, JSON requires decimal values for mode bits.<br />Defaults to 0644.<br />Directories within the path are not affected by this setting.<br />This might be in conflict with other options that affect the file<br />mode, like fsGroup, and the result can be other mode bits set.</p><br /> 4759 </td> 4760 </tr> 4761 </tbody> 4762 </table> 4763 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentValueFrom">ComponentValueFrom 4764 </h3> 4765 <p> 4766 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentRefEnv">ComponentRefEnv</a>) 4767 </p> 4768 <div> 4769 </div> 4770 <table> 4771 <thead> 4772 <tr> 4773 <th>Field</th> 4774 <th>Description</th> 4775 </tr> 4776 </thead> 4777 <tbody> 4778 <tr> 4779 <td> 4780 <code>type</code><br/> 4781 <em> 4782 <a href="#apps.kubeblocks.io/v1alpha1.ComponentValueFromType"> 4783 ComponentValueFromType 4784 </a> 4785 </em> 4786 </td> 4787 <td> 4788 <p>type is the type of the source to select. There are three types: <code>FieldRef</code>, <code>ServiceRef</code>, <code>HeadlessServiceRef</code>.</p><br /> 4789 </td> 4790 </tr> 4791 <tr> 4792 <td> 4793 <code>fieldPath</code><br/> 4794 <em> 4795 string 4796 </em> 4797 </td> 4798 <td> 4799 <em>(Optional)</em> 4800 <p>fieldRef is the jsonpath of the source to select when type is <code>FieldRef</code>.<br />there are two objects registered in the jsonpath: <code>componentDef</code> and <code>components</code>.<br />componentDef is the component definition object specified in <code>componentRef.componentDefName</code>.<br />components is the component list objects referring to the component definition object.</p><br /> 4801 </td> 4802 </tr> 4803 <tr> 4804 <td> 4805 <code>format</code><br/> 4806 <em> 4807 string 4808 </em> 4809 </td> 4810 <td> 4811 <em>(Optional)</em> 4812 <p>format is the format of each headless service address.<br />there are three builtin variables can be used as placerholder: $POD_ORDINAL, $POD_FQDN, $POD_NAME<br />$POD_ORDINAL is the ordinal of the pod.<br />$POD_FQDN is the fully qualified domain name of the pod.<br />$POD_NAME is the name of the pod</p><br /> 4813 </td> 4814 </tr> 4815 <tr> 4816 <td> 4817 <code>joinWith</code><br/> 4818 <em> 4819 string 4820 </em> 4821 </td> 4822 <td> 4823 <em>(Optional)</em> 4824 <p>joinWith is the string to join the values of headless service addresses.</p><br /> 4825 </td> 4826 </tr> 4827 </tbody> 4828 </table> 4829 <h3 id="apps.kubeblocks.io/v1alpha1.ComponentValueFromType">ComponentValueFromType 4830 (<code>string</code> alias)</h3> 4831 <p> 4832 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentValueFrom">ComponentValueFrom</a>) 4833 </p> 4834 <div> 4835 <p>ComponentValueFromType specifies the type of component value from.</p><br /> 4836 </div> 4837 <table> 4838 <thead> 4839 <tr> 4840 <th>Value</th> 4841 <th>Description</th> 4842 </tr> 4843 </thead> 4844 <tbody><tr><td><p>"FieldRef"</p></td> 4845 <td></td> 4846 </tr><tr><td><p>"HeadlessServiceRef"</p></td> 4847 <td></td> 4848 </tr><tr><td><p>"ServiceRef"</p></td> 4849 <td></td> 4850 </tr></tbody> 4851 </table> 4852 <h3 id="apps.kubeblocks.io/v1alpha1.ConfigConstraintPhase">ConfigConstraintPhase 4853 (<code>string</code> alias)</h3> 4854 <p> 4855 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintStatus">ConfigConstraintStatus</a>) 4856 </p> 4857 <div> 4858 <p>ConfigConstraintPhase defines the ConfigConstraint CR .status.phase</p><br /> 4859 </div> 4860 <table> 4861 <thead> 4862 <tr> 4863 <th>Value</th> 4864 <th>Description</th> 4865 </tr> 4866 </thead> 4867 <tbody><tr><td><p>"Available"</p></td> 4868 <td></td> 4869 </tr><tr><td><p>"Deleting"</p></td> 4870 <td></td> 4871 </tr><tr><td><p>"Unavailable"</p></td> 4872 <td></td> 4873 </tr></tbody> 4874 </table> 4875 <h3 id="apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec 4876 </h3> 4877 <p> 4878 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraint">ConfigConstraint</a>) 4879 </p> 4880 <div> 4881 <p>ConfigConstraintSpec defines the desired state of ConfigConstraint</p><br /> 4882 </div> 4883 <table> 4884 <thead> 4885 <tr> 4886 <th>Field</th> 4887 <th>Description</th> 4888 </tr> 4889 </thead> 4890 <tbody> 4891 <tr> 4892 <td> 4893 <code>reloadOptions</code><br/> 4894 <em> 4895 <a href="#apps.kubeblocks.io/v1alpha1.ReloadOptions"> 4896 ReloadOptions 4897 </a> 4898 </em> 4899 </td> 4900 <td> 4901 <em>(Optional)</em> 4902 <p>reloadOptions indicates whether the process supports reload.<br />if set, the controller will determine the behavior of the engine instance based on the configuration templates,<br />restart or reload depending on whether any parameters in the StaticParameters have been modified.</p><br /> 4903 </td> 4904 </tr> 4905 <tr> 4906 <td> 4907 <code>toolsImageSpec</code><br/> 4908 <em> 4909 <a href="#apps.kubeblocks.io/v1alpha1.ToolsImageSpec"> 4910 ToolsImageSpec 4911 </a> 4912 </em> 4913 </td> 4914 <td> 4915 <em>(Optional)</em> 4916 <p>toolConfig used to config init container.</p><br /> 4917 </td> 4918 </tr> 4919 <tr> 4920 <td> 4921 <code>downwardAPIOptions</code><br/> 4922 <em> 4923 <a href="#apps.kubeblocks.io/v1alpha1.DownwardAPIOption"> 4924 []DownwardAPIOption 4925 </a> 4926 </em> 4927 </td> 4928 <td> 4929 <em>(Optional)</em> 4930 <p>downwardAPIOptions is used to watch pod fields.</p><br /> 4931 </td> 4932 </tr> 4933 <tr> 4934 <td> 4935 <code>scriptConfigs</code><br/> 4936 <em> 4937 <a href="#apps.kubeblocks.io/v1alpha1.ScriptConfig"> 4938 []ScriptConfig 4939 </a> 4940 </em> 4941 </td> 4942 <td> 4943 <em>(Optional)</em> 4944 <p>scriptConfigs, list of ScriptConfig, witch these scripts can be used by volume trigger,downward trigger, or tool image</p><br /> 4945 </td> 4946 </tr> 4947 <tr> 4948 <td> 4949 <code>cfgSchemaTopLevelName</code><br/> 4950 <em> 4951 string 4952 </em> 4953 </td> 4954 <td> 4955 <em>(Optional)</em> 4956 <p>cfgSchemaTopLevelName is cue type name, which generates openapi schema.</p><br /> 4957 </td> 4958 </tr> 4959 <tr> 4960 <td> 4961 <code>configurationSchema</code><br/> 4962 <em> 4963 <a href="#apps.kubeblocks.io/v1alpha1.CustomParametersValidation"> 4964 CustomParametersValidation 4965 </a> 4966 </em> 4967 </td> 4968 <td> 4969 <em>(Optional)</em> 4970 <p>configurationSchema imposes restrictions on database parameter’s rule.</p><br /> 4971 </td> 4972 </tr> 4973 <tr> 4974 <td> 4975 <code>staticParameters</code><br/> 4976 <em> 4977 []string 4978 </em> 4979 </td> 4980 <td> 4981 <em>(Optional)</em> 4982 <p>staticParameters, list of StaticParameter, modifications of them trigger a process restart.</p><br /> 4983 </td> 4984 </tr> 4985 <tr> 4986 <td> 4987 <code>dynamicParameters</code><br/> 4988 <em> 4989 []string 4990 </em> 4991 </td> 4992 <td> 4993 <em>(Optional)</em> 4994 <p>dynamicParameters, list of DynamicParameter, modifications of them trigger a config dynamic reload without process restart.</p><br /> 4995 </td> 4996 </tr> 4997 <tr> 4998 <td> 4999 <code>immutableParameters</code><br/> 5000 <em> 5001 []string 5002 </em> 5003 </td> 5004 <td> 5005 <em>(Optional)</em> 5006 <p>immutableParameters describes parameters that prohibit user from modification.</p><br /> 5007 </td> 5008 </tr> 5009 <tr> 5010 <td> 5011 <code>selector</code><br/> 5012 <em> 5013 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#labelselector-v1-meta"> 5014 Kubernetes meta/v1.LabelSelector 5015 </a> 5016 </em> 5017 </td> 5018 <td> 5019 <p>selector is used to match the label on the pod,<br />for example, a pod of the primary is match on the patroni cluster.</p><br /> 5020 </td> 5021 </tr> 5022 <tr> 5023 <td> 5024 <code>formatterConfig</code><br/> 5025 <em> 5026 <a href="#apps.kubeblocks.io/v1alpha1.FormatterConfig"> 5027 FormatterConfig 5028 </a> 5029 </em> 5030 </td> 5031 <td> 5032 <p>formatterConfig describes the format of the configuration file, the controller<br />1. parses configuration file<br />2. analyzes the modified parameters<br />3. applies corresponding policies.</p><br /> 5033 </td> 5034 </tr> 5035 </tbody> 5036 </table> 5037 <h3 id="apps.kubeblocks.io/v1alpha1.ConfigConstraintStatus">ConfigConstraintStatus 5038 </h3> 5039 <p> 5040 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraint">ConfigConstraint</a>) 5041 </p> 5042 <div> 5043 <p>ConfigConstraintStatus defines the observed state of ConfigConstraint.</p><br /> 5044 </div> 5045 <table> 5046 <thead> 5047 <tr> 5048 <th>Field</th> 5049 <th>Description</th> 5050 </tr> 5051 </thead> 5052 <tbody> 5053 <tr> 5054 <td> 5055 <code>phase</code><br/> 5056 <em> 5057 <a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintPhase"> 5058 ConfigConstraintPhase 5059 </a> 5060 </em> 5061 </td> 5062 <td> 5063 <em>(Optional)</em> 5064 <p>phase is status of configuration template, when set to CCAvailablePhase, it can be referenced by ClusterDefinition or ClusterVersion.</p><br /> 5065 </td> 5066 </tr> 5067 <tr> 5068 <td> 5069 <code>message</code><br/> 5070 <em> 5071 string 5072 </em> 5073 </td> 5074 <td> 5075 <em>(Optional)</em> 5076 <p>message field describes the reasons of abnormal status.</p><br /> 5077 </td> 5078 </tr> 5079 <tr> 5080 <td> 5081 <code>observedGeneration</code><br/> 5082 <em> 5083 int64 5084 </em> 5085 </td> 5086 <td> 5087 <em>(Optional)</em> 5088 <p>observedGeneration is the latest generation observed for this<br />ClusterDefinition. It refers to the ConfigConstraint’s generation, which is<br />updated by the API Server.</p><br /> 5089 </td> 5090 </tr> 5091 </tbody> 5092 </table> 5093 <h3 id="apps.kubeblocks.io/v1alpha1.Configuration">Configuration 5094 </h3> 5095 <p> 5096 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Reconfigure">Reconfigure</a>) 5097 </p> 5098 <div> 5099 </div> 5100 <table> 5101 <thead> 5102 <tr> 5103 <th>Field</th> 5104 <th>Description</th> 5105 </tr> 5106 </thead> 5107 <tbody> 5108 <tr> 5109 <td> 5110 <code>name</code><br/> 5111 <em> 5112 string 5113 </em> 5114 </td> 5115 <td> 5116 <p>name is a config template name.</p><br /> 5117 </td> 5118 </tr> 5119 <tr> 5120 <td> 5121 <code>policy</code><br/> 5122 <em> 5123 <a href="#apps.kubeblocks.io/v1alpha1.UpgradePolicy"> 5124 UpgradePolicy 5125 </a> 5126 </em> 5127 </td> 5128 <td> 5129 <em>(Optional)</em> 5130 <p>policy defines the upgrade policy.</p><br /> 5131 </td> 5132 </tr> 5133 <tr> 5134 <td> 5135 <code>keys</code><br/> 5136 <em> 5137 <a href="#apps.kubeblocks.io/v1alpha1.ParameterConfig"> 5138 []ParameterConfig 5139 </a> 5140 </em> 5141 </td> 5142 <td> 5143 <p>keys is used to set the parameters to be updated.</p><br /> 5144 </td> 5145 </tr> 5146 </tbody> 5147 </table> 5148 <h3 id="apps.kubeblocks.io/v1alpha1.ConfigurationStatus">ConfigurationStatus 5149 </h3> 5150 <p> 5151 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ReconfiguringStatus">ReconfiguringStatus</a>) 5152 </p> 5153 <div> 5154 </div> 5155 <table> 5156 <thead> 5157 <tr> 5158 <th>Field</th> 5159 <th>Description</th> 5160 </tr> 5161 </thead> 5162 <tbody> 5163 <tr> 5164 <td> 5165 <code>name</code><br/> 5166 <em> 5167 string 5168 </em> 5169 </td> 5170 <td> 5171 <p>name is a config template name.</p><br /> 5172 </td> 5173 </tr> 5174 <tr> 5175 <td> 5176 <code>updatePolicy</code><br/> 5177 <em> 5178 <a href="#apps.kubeblocks.io/v1alpha1.UpgradePolicy"> 5179 UpgradePolicy 5180 </a> 5181 </em> 5182 </td> 5183 <td> 5184 <em>(Optional)</em> 5185 <p>updatePolicy describes the policy of reconfiguring.</p><br /> 5186 </td> 5187 </tr> 5188 <tr> 5189 <td> 5190 <code>status</code><br/> 5191 <em> 5192 string 5193 </em> 5194 </td> 5195 <td> 5196 <em>(Optional)</em> 5197 <p>status describes the current state of the reconfiguring state machine.</p><br /> 5198 </td> 5199 </tr> 5200 <tr> 5201 <td> 5202 <code>succeedCount</code><br/> 5203 <em> 5204 int32 5205 </em> 5206 </td> 5207 <td> 5208 <em>(Optional)</em> 5209 <p>succeedCount describes the number of successful reconfiguring.</p><br /> 5210 </td> 5211 </tr> 5212 <tr> 5213 <td> 5214 <code>expectedCount</code><br/> 5215 <em> 5216 int32 5217 </em> 5218 </td> 5219 <td> 5220 <em>(Optional)</em> 5221 <p>expectedCount describes the number of expected reconfiguring.</p><br /> 5222 </td> 5223 </tr> 5224 <tr> 5225 <td> 5226 <code>lastStatus</code><br/> 5227 <em> 5228 string 5229 </em> 5230 </td> 5231 <td> 5232 <em>(Optional)</em> 5233 <p>lastStatus describes the last status for the reconfiguring controller.</p><br /> 5234 </td> 5235 </tr> 5236 <tr> 5237 <td> 5238 <code>lastAppliedConfiguration</code><br/> 5239 <em> 5240 map[string]string 5241 </em> 5242 </td> 5243 <td> 5244 <em>(Optional)</em> 5245 <p>LastAppliedConfiguration describes the last configuration.</p><br /> 5246 </td> 5247 </tr> 5248 <tr> 5249 <td> 5250 <code>updatedParameters</code><br/> 5251 <em> 5252 <a href="#apps.kubeblocks.io/v1alpha1.UpdatedParameters"> 5253 UpdatedParameters 5254 </a> 5255 </em> 5256 </td> 5257 <td> 5258 <em>(Optional)</em> 5259 <p>updatedParameters describes the updated parameters.</p><br /> 5260 </td> 5261 </tr> 5262 </tbody> 5263 </table> 5264 <h3 id="apps.kubeblocks.io/v1alpha1.ConnectionCredentialKey">ConnectionCredentialKey 5265 </h3> 5266 <p> 5267 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.TargetInstance">TargetInstance</a>) 5268 </p> 5269 <div> 5270 </div> 5271 <table> 5272 <thead> 5273 <tr> 5274 <th>Field</th> 5275 <th>Description</th> 5276 </tr> 5277 </thead> 5278 <tbody> 5279 <tr> 5280 <td> 5281 <code>passwordKey</code><br/> 5282 <em> 5283 string 5284 </em> 5285 </td> 5286 <td> 5287 <em>(Optional)</em> 5288 <p>the key of password in the ConnectionCredential secret.<br />if not set, the default key is “password”.</p><br /> 5289 </td> 5290 </tr> 5291 <tr> 5292 <td> 5293 <code>usernameKey</code><br/> 5294 <em> 5295 string 5296 </em> 5297 </td> 5298 <td> 5299 <em>(Optional)</em> 5300 <p>the key of username in the ConnectionCredential secret.<br />if not set, the default key is “username”.</p><br /> 5301 </td> 5302 </tr> 5303 </tbody> 5304 </table> 5305 <h3 id="apps.kubeblocks.io/v1alpha1.ConsensusMember">ConsensusMember 5306 </h3> 5307 <p> 5308 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConsensusSetSpec">ConsensusSetSpec</a>) 5309 </p> 5310 <div> 5311 </div> 5312 <table> 5313 <thead> 5314 <tr> 5315 <th>Field</th> 5316 <th>Description</th> 5317 </tr> 5318 </thead> 5319 <tbody> 5320 <tr> 5321 <td> 5322 <code>name</code><br/> 5323 <em> 5324 string 5325 </em> 5326 </td> 5327 <td> 5328 <p>name, role name.</p><br /> 5329 </td> 5330 </tr> 5331 <tr> 5332 <td> 5333 <code>accessMode</code><br/> 5334 <em> 5335 <a href="#apps.kubeblocks.io/v1alpha1.AccessMode"> 5336 AccessMode 5337 </a> 5338 </em> 5339 </td> 5340 <td> 5341 <p>accessMode, what service this member capable.</p><br /> 5342 </td> 5343 </tr> 5344 <tr> 5345 <td> 5346 <code>replicas</code><br/> 5347 <em> 5348 int32 5349 </em> 5350 </td> 5351 <td> 5352 <em>(Optional)</em> 5353 <p>replicas, number of Pods of this role.<br />default 1 for Leader<br />default 0 for Learner<br />default Cluster.spec.componentSpec[*].Replicas - Leader.Replicas - Learner.Replicas for Followers</p><br /> 5354 </td> 5355 </tr> 5356 </tbody> 5357 </table> 5358 <h3 id="apps.kubeblocks.io/v1alpha1.ConsensusMemberStatus">ConsensusMemberStatus 5359 </h3> 5360 <p> 5361 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConsensusSetStatus">ConsensusSetStatus</a>) 5362 </p> 5363 <div> 5364 </div> 5365 <table> 5366 <thead> 5367 <tr> 5368 <th>Field</th> 5369 <th>Description</th> 5370 </tr> 5371 </thead> 5372 <tbody> 5373 <tr> 5374 <td> 5375 <code>name</code><br/> 5376 <em> 5377 string 5378 </em> 5379 </td> 5380 <td> 5381 <p>Defines the role name.</p><br /> 5382 </td> 5383 </tr> 5384 <tr> 5385 <td> 5386 <code>accessMode</code><br/> 5387 <em> 5388 <a href="#apps.kubeblocks.io/v1alpha1.AccessMode"> 5389 AccessMode 5390 </a> 5391 </em> 5392 </td> 5393 <td> 5394 <p>accessMode defines what service this pod provides.</p><br /> 5395 </td> 5396 </tr> 5397 <tr> 5398 <td> 5399 <code>pod</code><br/> 5400 <em> 5401 string 5402 </em> 5403 </td> 5404 <td> 5405 <p>Pod name.</p><br /> 5406 </td> 5407 </tr> 5408 </tbody> 5409 </table> 5410 <h3 id="apps.kubeblocks.io/v1alpha1.ConsensusSetSpec">ConsensusSetSpec 5411 </h3> 5412 <p> 5413 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 5414 </p> 5415 <div> 5416 </div> 5417 <table> 5418 <thead> 5419 <tr> 5420 <th>Field</th> 5421 <th>Description</th> 5422 </tr> 5423 </thead> 5424 <tbody> 5425 <tr> 5426 <td> 5427 <code>StatefulSetSpec</code><br/> 5428 <em> 5429 <a href="#apps.kubeblocks.io/v1alpha1.StatefulSetSpec"> 5430 StatefulSetSpec 5431 </a> 5432 </em> 5433 </td> 5434 <td> 5435 <p> 5436 (Members of <code>StatefulSetSpec</code> are embedded into this type.) 5437 </p> 5438 </td> 5439 </tr> 5440 <tr> 5441 <td> 5442 <code>leader</code><br/> 5443 <em> 5444 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMember"> 5445 ConsensusMember 5446 </a> 5447 </em> 5448 </td> 5449 <td> 5450 <p>leader, one single leader.</p><br /> 5451 </td> 5452 </tr> 5453 <tr> 5454 <td> 5455 <code>followers</code><br/> 5456 <em> 5457 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMember"> 5458 []ConsensusMember 5459 </a> 5460 </em> 5461 </td> 5462 <td> 5463 <em>(Optional)</em> 5464 <p>followers, has voting right but not Leader.</p><br /> 5465 </td> 5466 </tr> 5467 <tr> 5468 <td> 5469 <code>learner</code><br/> 5470 <em> 5471 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMember"> 5472 ConsensusMember 5473 </a> 5474 </em> 5475 </td> 5476 <td> 5477 <em>(Optional)</em> 5478 <p>learner, no voting right.</p><br /> 5479 </td> 5480 </tr> 5481 </tbody> 5482 </table> 5483 <h3 id="apps.kubeblocks.io/v1alpha1.ConsensusSetStatus">ConsensusSetStatus 5484 </h3> 5485 <p> 5486 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentStatus">ClusterComponentStatus</a>) 5487 </p> 5488 <div> 5489 </div> 5490 <table> 5491 <thead> 5492 <tr> 5493 <th>Field</th> 5494 <th>Description</th> 5495 </tr> 5496 </thead> 5497 <tbody> 5498 <tr> 5499 <td> 5500 <code>leader</code><br/> 5501 <em> 5502 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMemberStatus"> 5503 ConsensusMemberStatus 5504 </a> 5505 </em> 5506 </td> 5507 <td> 5508 <p>Leader status.</p><br /> 5509 </td> 5510 </tr> 5511 <tr> 5512 <td> 5513 <code>followers</code><br/> 5514 <em> 5515 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMemberStatus"> 5516 []ConsensusMemberStatus 5517 </a> 5518 </em> 5519 </td> 5520 <td> 5521 <em>(Optional)</em> 5522 <p>Followers status.</p><br /> 5523 </td> 5524 </tr> 5525 <tr> 5526 <td> 5527 <code>learner</code><br/> 5528 <em> 5529 <a href="#apps.kubeblocks.io/v1alpha1.ConsensusMemberStatus"> 5530 ConsensusMemberStatus 5531 </a> 5532 </em> 5533 </td> 5534 <td> 5535 <em>(Optional)</em> 5536 <p>Learner status.</p><br /> 5537 </td> 5538 </tr> 5539 </tbody> 5540 </table> 5541 <h3 id="apps.kubeblocks.io/v1alpha1.CustomLabelSpec">CustomLabelSpec 5542 </h3> 5543 <p> 5544 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 5545 </p> 5546 <div> 5547 </div> 5548 <table> 5549 <thead> 5550 <tr> 5551 <th>Field</th> 5552 <th>Description</th> 5553 </tr> 5554 </thead> 5555 <tbody> 5556 <tr> 5557 <td> 5558 <code>key</code><br/> 5559 <em> 5560 string 5561 </em> 5562 </td> 5563 <td> 5564 <p>key name of label</p><br /> 5565 </td> 5566 </tr> 5567 <tr> 5568 <td> 5569 <code>value</code><br/> 5570 <em> 5571 string 5572 </em> 5573 </td> 5574 <td> 5575 <p>value of label</p><br /> 5576 </td> 5577 </tr> 5578 <tr> 5579 <td> 5580 <code>resources</code><br/> 5581 <em> 5582 <a href="#apps.kubeblocks.io/v1alpha1.GVKResource"> 5583 []GVKResource 5584 </a> 5585 </em> 5586 </td> 5587 <td> 5588 <p>resources defines the resources to be labeled.</p><br /> 5589 </td> 5590 </tr> 5591 </tbody> 5592 </table> 5593 <h3 id="apps.kubeblocks.io/v1alpha1.CustomParametersValidation">CustomParametersValidation 5594 </h3> 5595 <p> 5596 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec</a>) 5597 </p> 5598 <div> 5599 </div> 5600 <table> 5601 <thead> 5602 <tr> 5603 <th>Field</th> 5604 <th>Description</th> 5605 </tr> 5606 </thead> 5607 <tbody> 5608 <tr> 5609 <td> 5610 <code>schema</code><br/> 5611 <em> 5612 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#jsonschemaprops-v1-apiextensions-k8s-io"> 5613 Kubernetes api extensions v1.JSONSchemaProps 5614 </a> 5615 </em> 5616 </td> 5617 <td> 5618 <p>schema provides a way for providers to validate the changed parameters through json.</p><br /> 5619 </td> 5620 </tr> 5621 <tr> 5622 <td> 5623 <code>cue</code><br/> 5624 <em> 5625 string 5626 </em> 5627 </td> 5628 <td> 5629 <em>(Optional)</em> 5630 <p>cue that to let provider verify user configuration through cue language.</p><br /> 5631 </td> 5632 </tr> 5633 </tbody> 5634 </table> 5635 <h3 id="apps.kubeblocks.io/v1alpha1.DownwardAPIOption">DownwardAPIOption 5636 </h3> 5637 <p> 5638 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec</a>) 5639 </p> 5640 <div> 5641 </div> 5642 <table> 5643 <thead> 5644 <tr> 5645 <th>Field</th> 5646 <th>Description</th> 5647 </tr> 5648 </thead> 5649 <tbody> 5650 <tr> 5651 <td> 5652 <code>name</code><br/> 5653 <em> 5654 string 5655 </em> 5656 </td> 5657 <td> 5658 <p>Specify the name of the field.</p><br /> 5659 </td> 5660 </tr> 5661 <tr> 5662 <td> 5663 <code>mountPoint</code><br/> 5664 <em> 5665 string 5666 </em> 5667 </td> 5668 <td> 5669 <p>mountPoint is the mount point of the scripts file.</p><br /> 5670 </td> 5671 </tr> 5672 <tr> 5673 <td> 5674 <code>items</code><br/> 5675 <em> 5676 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#downwardapivolumefile-v1-core"> 5677 []Kubernetes core/v1.DownwardAPIVolumeFile 5678 </a> 5679 </em> 5680 </td> 5681 <td> 5682 <p>Items is a list of downward API volume file</p><br /> 5683 </td> 5684 </tr> 5685 <tr> 5686 <td> 5687 <code>command</code><br/> 5688 <em> 5689 []string 5690 </em> 5691 </td> 5692 <td> 5693 <em>(Optional)</em> 5694 <p>command used to execute for downwrad api.</p><br /> 5695 </td> 5696 </tr> 5697 </tbody> 5698 </table> 5699 <h3 id="apps.kubeblocks.io/v1alpha1.ExporterConfig">ExporterConfig 5700 </h3> 5701 <p> 5702 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.MonitorConfig">MonitorConfig</a>) 5703 </p> 5704 <div> 5705 </div> 5706 <table> 5707 <thead> 5708 <tr> 5709 <th>Field</th> 5710 <th>Description</th> 5711 </tr> 5712 </thead> 5713 <tbody> 5714 <tr> 5715 <td> 5716 <code>scrapePort</code><br/> 5717 <em> 5718 <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> 5719 Kubernetes api utils intstr.IntOrString 5720 </a> 5721 </em> 5722 </td> 5723 <td> 5724 <p>scrapePort is exporter port for Time Series Database to scrape metrics.</p><br /> 5725 </td> 5726 </tr> 5727 <tr> 5728 <td> 5729 <code>scrapePath</code><br/> 5730 <em> 5731 string 5732 </em> 5733 </td> 5734 <td> 5735 <em>(Optional)</em> 5736 <p>scrapePath is exporter url path for Time Series Database to scrape metrics.</p><br /> 5737 </td> 5738 </tr> 5739 </tbody> 5740 </table> 5741 <h3 id="apps.kubeblocks.io/v1alpha1.Expose">Expose 5742 </h3> 5743 <p> 5744 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 5745 </p> 5746 <div> 5747 </div> 5748 <table> 5749 <thead> 5750 <tr> 5751 <th>Field</th> 5752 <th>Description</th> 5753 </tr> 5754 </thead> 5755 <tbody> 5756 <tr> 5757 <td> 5758 <code>ComponentOps</code><br/> 5759 <em> 5760 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 5761 ComponentOps 5762 </a> 5763 </em> 5764 </td> 5765 <td> 5766 <p> 5767 (Members of <code>ComponentOps</code> are embedded into this type.) 5768 </p> 5769 </td> 5770 </tr> 5771 <tr> 5772 <td> 5773 <code>services</code><br/> 5774 <em> 5775 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentService"> 5776 []ClusterComponentService 5777 </a> 5778 </em> 5779 </td> 5780 <td> 5781 <p>Setting the list of services to be exposed.</p><br /> 5782 </td> 5783 </tr> 5784 </tbody> 5785 </table> 5786 <h3 id="apps.kubeblocks.io/v1alpha1.FailurePolicyType">FailurePolicyType 5787 (<code>string</code> alias)</h3> 5788 <p> 5789 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentDefRef">ComponentDefRef</a>) 5790 </p> 5791 <div> 5792 <p>FailurePolicyType specifies the type of failure policy</p><br /> 5793 </div> 5794 <table> 5795 <thead> 5796 <tr> 5797 <th>Value</th> 5798 <th>Description</th> 5799 </tr> 5800 </thead> 5801 <tbody><tr><td><p>"Fail"</p></td> 5802 <td><p>ReportError means that an error will be reported.</p><br /></td> 5803 </tr><tr><td><p>"Ignore"</p></td> 5804 <td><p>Ignore means that an error will be ignored but logged.</p><br /></td> 5805 </tr></tbody> 5806 </table> 5807 <h3 id="apps.kubeblocks.io/v1alpha1.FormatterConfig">FormatterConfig 5808 </h3> 5809 <p> 5810 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec</a>) 5811 </p> 5812 <div> 5813 </div> 5814 <table> 5815 <thead> 5816 <tr> 5817 <th>Field</th> 5818 <th>Description</th> 5819 </tr> 5820 </thead> 5821 <tbody> 5822 <tr> 5823 <td> 5824 <code>FormatterOptions</code><br/> 5825 <em> 5826 <a href="#apps.kubeblocks.io/v1alpha1.FormatterOptions"> 5827 FormatterOptions 5828 </a> 5829 </em> 5830 </td> 5831 <td> 5832 <p> 5833 (Members of <code>FormatterOptions</code> are embedded into this type.) 5834 </p> 5835 <em>(Optional)</em> 5836 <p>The FormatterOptions represents the special options of configuration file.<br />This is optional for now. If not specified.</p><br /> 5837 </td> 5838 </tr> 5839 <tr> 5840 <td> 5841 <code>format</code><br/> 5842 <em> 5843 <a href="#apps.kubeblocks.io/v1alpha1.CfgFileFormat"> 5844 CfgFileFormat 5845 </a> 5846 </em> 5847 </td> 5848 <td> 5849 <p>The configuration file format. Valid values are ini, xml, yaml, json,<br />hcl, dotenv, properties and toml.</p><br /><br /><p>ini: a configuration file that consists of a text-based content with a structure and syntax comprising key–value pairs for properties, reference wiki: <a href="https://en.wikipedia.org/wiki/INI_file">https://en.wikipedia.org/wiki/INI_file</a><br />xml: reference wiki: <a href="https://en.wikipedia.org/wiki/XML">https://en.wikipedia.org/wiki/XML</a><br />yaml: a configuration file support for complex data types and structures.<br />json: reference wiki: <a href="https://en.wikipedia.org/wiki/JSON">https://en.wikipedia.org/wiki/JSON</a><br />hcl: : The HashiCorp Configuration Language (HCL) is a configuration language authored by HashiCorp, reference url: <a href="https://www.linode.com/docs/guides/introduction-to-hcl/">https://www.linode.com/docs/guides/introduction-to-hcl/</a><br />dotenv: this was a plain text file with simple key–value pairs, reference wiki: <a href="https://en.wikipedia.org/wiki/Configuration_file#MS-DOS">https://en.wikipedia.org/wiki/Configuration_file#MS-DOS</a><br />properties: a file extension mainly used in Java, reference wiki: <a href="https://en.wikipedia.org/wiki/.properties">https://en.wikipedia.org/wiki/.properties</a><br />toml: reference wiki: <a href="https://en.wikipedia.org/wiki/TOML">https://en.wikipedia.org/wiki/TOML</a><br />props-plus: a file extension mainly used in Java, support CamelCase(e.g: brokerMaxConnectionsPerIp)</p><br /> 5850 </td> 5851 </tr> 5852 </tbody> 5853 </table> 5854 <h3 id="apps.kubeblocks.io/v1alpha1.FormatterOptions">FormatterOptions 5855 </h3> 5856 <p> 5857 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.FormatterConfig">FormatterConfig</a>) 5858 </p> 5859 <div> 5860 <p>FormatterOptions represents the special options of configuration file.<br />Only one of its members may be specified.</p><br /> 5861 </div> 5862 <table> 5863 <thead> 5864 <tr> 5865 <th>Field</th> 5866 <th>Description</th> 5867 </tr> 5868 </thead> 5869 <tbody> 5870 <tr> 5871 <td> 5872 <code>iniConfig</code><br/> 5873 <em> 5874 <a href="#apps.kubeblocks.io/v1alpha1.IniConfig"> 5875 IniConfig 5876 </a> 5877 </em> 5878 </td> 5879 <td> 5880 <em>(Optional)</em> 5881 <p>iniConfig represents the ini options.</p><br /> 5882 </td> 5883 </tr> 5884 </tbody> 5885 </table> 5886 <h3 id="apps.kubeblocks.io/v1alpha1.GVKResource">GVKResource 5887 </h3> 5888 <p> 5889 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.CustomLabelSpec">CustomLabelSpec</a>) 5890 </p> 5891 <div> 5892 </div> 5893 <table> 5894 <thead> 5895 <tr> 5896 <th>Field</th> 5897 <th>Description</th> 5898 </tr> 5899 </thead> 5900 <tbody> 5901 <tr> 5902 <td> 5903 <code>gvk</code><br/> 5904 <em> 5905 string 5906 </em> 5907 </td> 5908 <td> 5909 <p>gvk is Group/Version/Kind, for example “v1/Pod”, “apps/v1/StatefulSet”, etc.<br />when the gvk resource filtered by the selector already exists, if there is no corresponding custom label, it will be added, and if label already exists, it will be updated.</p><br /> 5910 </td> 5911 </tr> 5912 <tr> 5913 <td> 5914 <code>selector</code><br/> 5915 <em> 5916 map[string]string 5917 </em> 5918 </td> 5919 <td> 5920 <em>(Optional)</em> 5921 <p>selector is a label query over a set of resources.</p><br /> 5922 </td> 5923 </tr> 5924 </tbody> 5925 </table> 5926 <h3 id="apps.kubeblocks.io/v1alpha1.HScaleDataClonePolicyType">HScaleDataClonePolicyType 5927 (<code>string</code> alias)</h3> 5928 <p> 5929 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.HorizontalScalePolicy">HorizontalScalePolicy</a>) 5930 </p> 5931 <div> 5932 <p>HScaleDataClonePolicyType defines data clone policy when horizontal scaling.</p><br /> 5933 </div> 5934 <table> 5935 <thead> 5936 <tr> 5937 <th>Value</th> 5938 <th>Description</th> 5939 </tr> 5940 </thead> 5941 <tbody><tr><td><p>"CloneVolume"</p></td> 5942 <td></td> 5943 </tr><tr><td><p>"Snapshot"</p></td> 5944 <td></td> 5945 </tr><tr><td><p>"None"</p></td> 5946 <td></td> 5947 </tr></tbody> 5948 </table> 5949 <h3 id="apps.kubeblocks.io/v1alpha1.HorizontalScalePolicy">HorizontalScalePolicy 5950 </h3> 5951 <p> 5952 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 5953 </p> 5954 <div> 5955 </div> 5956 <table> 5957 <thead> 5958 <tr> 5959 <th>Field</th> 5960 <th>Description</th> 5961 </tr> 5962 </thead> 5963 <tbody> 5964 <tr> 5965 <td> 5966 <code>type</code><br/> 5967 <em> 5968 <a href="#apps.kubeblocks.io/v1alpha1.HScaleDataClonePolicyType"> 5969 HScaleDataClonePolicyType 5970 </a> 5971 </em> 5972 </td> 5973 <td> 5974 <em>(Optional)</em> 5975 <p>type controls what kind of data synchronization do when component scale out.<br />Policy is in enum of {None, CloneVolume}. The default policy is <code>None</code>.<br />None: Default policy, create empty volume and no data clone.<br />CloneVolume: Do data clone to newly scaled pods. Prefer to use volume snapshot first,<br /> and will try backup tool if volume snapshot is not enabled, finally<br /> report error if both above cannot work.<br />Snapshot: Deprecated, alias for CloneVolume.</p><br /> 5976 </td> 5977 </tr> 5978 <tr> 5979 <td> 5980 <code>backupPolicyTemplateName</code><br/> 5981 <em> 5982 string 5983 </em> 5984 </td> 5985 <td> 5986 <em>(Optional)</em> 5987 <p>BackupPolicyTemplateName reference the backup policy template.</p><br /> 5988 </td> 5989 </tr> 5990 <tr> 5991 <td> 5992 <code>volumeMountsName</code><br/> 5993 <em> 5994 string 5995 </em> 5996 </td> 5997 <td> 5998 <em>(Optional)</em> 5999 <p>volumeMountsName defines which volumeMount of the container to do backup,<br />only work if Type is not None<br />if not specified, the 1st volumeMount will be chosen</p><br /> 6000 </td> 6001 </tr> 6002 </tbody> 6003 </table> 6004 <h3 id="apps.kubeblocks.io/v1alpha1.HorizontalScaling">HorizontalScaling 6005 </h3> 6006 <p> 6007 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 6008 </p> 6009 <div> 6010 <p>HorizontalScaling defines the variables of horizontal scaling operation</p><br /> 6011 </div> 6012 <table> 6013 <thead> 6014 <tr> 6015 <th>Field</th> 6016 <th>Description</th> 6017 </tr> 6018 </thead> 6019 <tbody> 6020 <tr> 6021 <td> 6022 <code>ComponentOps</code><br/> 6023 <em> 6024 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 6025 ComponentOps 6026 </a> 6027 </em> 6028 </td> 6029 <td> 6030 <p> 6031 (Members of <code>ComponentOps</code> are embedded into this type.) 6032 </p> 6033 </td> 6034 </tr> 6035 <tr> 6036 <td> 6037 <code>replicas</code><br/> 6038 <em> 6039 int32 6040 </em> 6041 </td> 6042 <td> 6043 <p>replicas for the workloads.</p><br /> 6044 </td> 6045 </tr> 6046 </tbody> 6047 </table> 6048 <h3 id="apps.kubeblocks.io/v1alpha1.IniConfig">IniConfig 6049 </h3> 6050 <p> 6051 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.FormatterOptions">FormatterOptions</a>) 6052 </p> 6053 <div> 6054 </div> 6055 <table> 6056 <thead> 6057 <tr> 6058 <th>Field</th> 6059 <th>Description</th> 6060 </tr> 6061 </thead> 6062 <tbody> 6063 <tr> 6064 <td> 6065 <code>sectionName</code><br/> 6066 <em> 6067 string 6068 </em> 6069 </td> 6070 <td> 6071 <em>(Optional)</em> 6072 <p>sectionName describes ini section.</p><br /> 6073 </td> 6074 </tr> 6075 </tbody> 6076 </table> 6077 <h3 id="apps.kubeblocks.io/v1alpha1.Issuer">Issuer 6078 </h3> 6079 <p> 6080 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentSpec">ClusterComponentSpec</a>) 6081 </p> 6082 <div> 6083 <p>Issuer defines Tls certs issuer</p><br /> 6084 </div> 6085 <table> 6086 <thead> 6087 <tr> 6088 <th>Field</th> 6089 <th>Description</th> 6090 </tr> 6091 </thead> 6092 <tbody> 6093 <tr> 6094 <td> 6095 <code>name</code><br/> 6096 <em> 6097 <a href="#apps.kubeblocks.io/v1alpha1.IssuerName"> 6098 IssuerName 6099 </a> 6100 </em> 6101 </td> 6102 <td> 6103 <p>Name of issuer.<br />Options supported:<br />- KubeBlocks - Certificates signed by KubeBlocks Operator.<br />- UserProvided - User provided own CA-signed certificates.</p><br /> 6104 </td> 6105 </tr> 6106 <tr> 6107 <td> 6108 <code>secretRef</code><br/> 6109 <em> 6110 <a href="#apps.kubeblocks.io/v1alpha1.TLSSecretRef"> 6111 TLSSecretRef 6112 </a> 6113 </em> 6114 </td> 6115 <td> 6116 <em>(Optional)</em> 6117 <p>secretRef. TLS certs Secret reference<br />required when from is UserProvided</p><br /> 6118 </td> 6119 </tr> 6120 </tbody> 6121 </table> 6122 <h3 id="apps.kubeblocks.io/v1alpha1.IssuerName">IssuerName 6123 (<code>string</code> alias)</h3> 6124 <p> 6125 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Issuer">Issuer</a>) 6126 </p> 6127 <div> 6128 <p>IssuerName defines Tls certs issuer name</p><br /> 6129 </div> 6130 <table> 6131 <thead> 6132 <tr> 6133 <th>Value</th> 6134 <th>Description</th> 6135 </tr> 6136 </thead> 6137 <tbody><tr><td><p>"KubeBlocks"</p></td> 6138 <td><p>IssuerKubeBlocks Certificates signed by KubeBlocks Operator.</p><br /></td> 6139 </tr><tr><td><p>"UserProvided"</p></td> 6140 <td><p>IssuerUserProvided User provided own CA-signed certificates.</p><br /></td> 6141 </tr></tbody> 6142 </table> 6143 <h3 id="apps.kubeblocks.io/v1alpha1.KBAccountType">KBAccountType 6144 (<code>byte</code> alias)</h3> 6145 <div> 6146 <p>KBAccountType is used for bitwise operation.</p><br /> 6147 </div> 6148 <table> 6149 <thead> 6150 <tr> 6151 <th>Value</th> 6152 <th>Description</th> 6153 </tr> 6154 </thead> 6155 <tbody><tr><td><p>0</p></td> 6156 <td></td> 6157 </tr></tbody> 6158 </table> 6159 <h3 id="apps.kubeblocks.io/v1alpha1.LastComponentConfiguration">LastComponentConfiguration 6160 </h3> 6161 <p> 6162 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.LastConfiguration">LastConfiguration</a>) 6163 </p> 6164 <div> 6165 </div> 6166 <table> 6167 <thead> 6168 <tr> 6169 <th>Field</th> 6170 <th>Description</th> 6171 </tr> 6172 </thead> 6173 <tbody> 6174 <tr> 6175 <td> 6176 <code>replicas</code><br/> 6177 <em> 6178 int32 6179 </em> 6180 </td> 6181 <td> 6182 <em>(Optional)</em> 6183 <p>replicas are the last replicas of the component.</p><br /> 6184 </td> 6185 </tr> 6186 <tr> 6187 <td> 6188 <code>ResourceRequirements</code><br/> 6189 <em> 6190 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core"> 6191 Kubernetes core/v1.ResourceRequirements 6192 </a> 6193 </em> 6194 </td> 6195 <td> 6196 <p> 6197 (Members of <code>ResourceRequirements</code> are embedded into this type.) 6198 </p> 6199 <em>(Optional)</em> 6200 <p>the last resources of the component.</p><br /> 6201 </td> 6202 </tr> 6203 <tr> 6204 <td> 6205 <code>classDefRef</code><br/> 6206 <em> 6207 <a href="#apps.kubeblocks.io/v1alpha1.ClassDefRef"> 6208 ClassDefRef 6209 </a> 6210 </em> 6211 </td> 6212 <td> 6213 <em>(Optional)</em> 6214 <p>classDefRef reference class defined in ComponentClassDefinition.</p><br /> 6215 </td> 6216 </tr> 6217 <tr> 6218 <td> 6219 <code>volumeClaimTemplates</code><br/> 6220 <em> 6221 <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestVolumeClaimTemplate"> 6222 []OpsRequestVolumeClaimTemplate 6223 </a> 6224 </em> 6225 </td> 6226 <td> 6227 <em>(Optional)</em> 6228 <p>volumeClaimTemplates records the last volumeClaimTemplates of the component.</p><br /> 6229 </td> 6230 </tr> 6231 <tr> 6232 <td> 6233 <code>services</code><br/> 6234 <em> 6235 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentService"> 6236 []ClusterComponentService 6237 </a> 6238 </em> 6239 </td> 6240 <td> 6241 <em>(Optional)</em> 6242 <p>services records the last services of the component.</p><br /> 6243 </td> 6244 </tr> 6245 <tr> 6246 <td> 6247 <code>targetResources</code><br/> 6248 <em> 6249 map[github.com/apecloud/kubeblocks/apis/apps/v1alpha1.ComponentResourceKey][]string 6250 </em> 6251 </td> 6252 <td> 6253 <em>(Optional)</em> 6254 <p>targetResources records the affecting target resources information for the component.<br />resource key is in list of [pods].</p><br /> 6255 </td> 6256 </tr> 6257 </tbody> 6258 </table> 6259 <h3 id="apps.kubeblocks.io/v1alpha1.LastConfiguration">LastConfiguration 6260 </h3> 6261 <p> 6262 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestStatus">OpsRequestStatus</a>) 6263 </p> 6264 <div> 6265 </div> 6266 <table> 6267 <thead> 6268 <tr> 6269 <th>Field</th> 6270 <th>Description</th> 6271 </tr> 6272 </thead> 6273 <tbody> 6274 <tr> 6275 <td> 6276 <code>clusterVersionRef</code><br/> 6277 <em> 6278 string 6279 </em> 6280 </td> 6281 <td> 6282 <em>(Optional)</em> 6283 <p>clusterVersionRef references ClusterVersion name.</p><br /> 6284 </td> 6285 </tr> 6286 <tr> 6287 <td> 6288 <code>components</code><br/> 6289 <em> 6290 <a href="#apps.kubeblocks.io/v1alpha1.LastComponentConfiguration"> 6291 map[string]github.com/apecloud/kubeblocks/apis/apps/v1alpha1.LastComponentConfiguration 6292 </a> 6293 </em> 6294 </td> 6295 <td> 6296 <em>(Optional)</em> 6297 <p>components records last configuration of the component.</p><br /> 6298 </td> 6299 </tr> 6300 </tbody> 6301 </table> 6302 <h3 id="apps.kubeblocks.io/v1alpha1.LazyRenderedTemplateSpec">LazyRenderedTemplateSpec 6303 </h3> 6304 <p> 6305 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentConfigSpec">ComponentConfigSpec</a>) 6306 </p> 6307 <div> 6308 </div> 6309 <table> 6310 <thead> 6311 <tr> 6312 <th>Field</th> 6313 <th>Description</th> 6314 </tr> 6315 </thead> 6316 <tbody> 6317 <tr> 6318 <td> 6319 <code>templateRef</code><br/> 6320 <em> 6321 string 6322 </em> 6323 </td> 6324 <td> 6325 <p>Specify the name of the referenced the configuration template ConfigMap object.</p><br /> 6326 </td> 6327 </tr> 6328 <tr> 6329 <td> 6330 <code>namespace</code><br/> 6331 <em> 6332 string 6333 </em> 6334 </td> 6335 <td> 6336 <em>(Optional)</em> 6337 <p>Specify the namespace of the referenced the configuration template ConfigMap object.<br />An empty namespace is equivalent to the “default” namespace.</p><br /> 6338 </td> 6339 </tr> 6340 <tr> 6341 <td> 6342 <code>policy</code><br/> 6343 <em> 6344 <a href="#apps.kubeblocks.io/v1alpha1.MergedPolicy"> 6345 MergedPolicy 6346 </a> 6347 </em> 6348 </td> 6349 <td> 6350 <em>(Optional)</em> 6351 <p>policy defines how to merge external imported templates into component templates.</p><br /> 6352 </td> 6353 </tr> 6354 </tbody> 6355 </table> 6356 <h3 id="apps.kubeblocks.io/v1alpha1.LetterCase">LetterCase 6357 (<code>string</code> alias)</h3> 6358 <p> 6359 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.PasswordConfig">PasswordConfig</a>) 6360 </p> 6361 <div> 6362 <p>LetterCase defines cases to use in password generation.</p><br /> 6363 </div> 6364 <table> 6365 <thead> 6366 <tr> 6367 <th>Value</th> 6368 <th>Description</th> 6369 </tr> 6370 </thead> 6371 <tbody><tr><td><p>"LowerCases"</p></td> 6372 <td></td> 6373 </tr><tr><td><p>"MixedCases"</p></td> 6374 <td></td> 6375 </tr><tr><td><p>"UpperCases"</p></td> 6376 <td></td> 6377 </tr></tbody> 6378 </table> 6379 <h3 id="apps.kubeblocks.io/v1alpha1.LogConfig">LogConfig 6380 </h3> 6381 <p> 6382 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 6383 </p> 6384 <div> 6385 </div> 6386 <table> 6387 <thead> 6388 <tr> 6389 <th>Field</th> 6390 <th>Description</th> 6391 </tr> 6392 </thead> 6393 <tbody> 6394 <tr> 6395 <td> 6396 <code>name</code><br/> 6397 <em> 6398 string 6399 </em> 6400 </td> 6401 <td> 6402 <p>name log type name, such as slow for MySQL slow log file.</p><br /> 6403 </td> 6404 </tr> 6405 <tr> 6406 <td> 6407 <code>filePathPattern</code><br/> 6408 <em> 6409 string 6410 </em> 6411 </td> 6412 <td> 6413 <p>filePathPattern log file path pattern which indicate how to find this file<br />corresponding to variable (log path) in database kernel. please don’t set this casually.</p><br /> 6414 </td> 6415 </tr> 6416 </tbody> 6417 </table> 6418 <h3 id="apps.kubeblocks.io/v1alpha1.MemoryConstraint">MemoryConstraint 6419 </h3> 6420 <p> 6421 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ResourceConstraintRule">ResourceConstraintRule</a>) 6422 </p> 6423 <div> 6424 </div> 6425 <table> 6426 <thead> 6427 <tr> 6428 <th>Field</th> 6429 <th>Description</th> 6430 </tr> 6431 </thead> 6432 <tbody> 6433 <tr> 6434 <td> 6435 <code>sizePerCPU</code><br/> 6436 <em> 6437 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 6438 Kubernetes resource.Quantity 6439 </a> 6440 </em> 6441 </td> 6442 <td> 6443 <em>(Optional)</em> 6444 <p>The size of memory per vcpu core.<br />For example: 1Gi, 200Mi.<br />If SizePerCPU is specified, MinPerCPU and MaxPerCPU are ignore.</p><br /> 6445 </td> 6446 </tr> 6447 <tr> 6448 <td> 6449 <code>maxPerCPU</code><br/> 6450 <em> 6451 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 6452 Kubernetes resource.Quantity 6453 </a> 6454 </em> 6455 </td> 6456 <td> 6457 <em>(Optional)</em> 6458 <p>The maximum size of memory per vcpu core, [MinPerCPU, MaxPerCPU] defines a range for valid memory size per vcpu core.<br />It is useful on GCP as the ratio between the CPU and memory may be a range.<br />If SizePerCPU is specified, MinPerCPU and MaxPerCPU are ignored.<br />Reference: <a href="https://cloud.google.com/compute/docs/general-purpose-machines#custom_machine_types">https://cloud.google.com/compute/docs/general-purpose-machines#custom_machine_types</a></p><br /> 6459 </td> 6460 </tr> 6461 <tr> 6462 <td> 6463 <code>minPerCPU</code><br/> 6464 <em> 6465 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 6466 Kubernetes resource.Quantity 6467 </a> 6468 </em> 6469 </td> 6470 <td> 6471 <em>(Optional)</em> 6472 <p>The minimum size of memory per vcpu core, [MinPerCPU, MaxPerCPU] defines a range for valid memory size per vcpu core.<br />It is useful on GCP as the ratio between the CPU and memory may be a range.<br />If SizePerCPU is specified, MinPerCPU and MaxPerCPU are ignored.<br />Reference: <a href="https://cloud.google.com/compute/docs/general-purpose-machines#custom_machine_types">https://cloud.google.com/compute/docs/general-purpose-machines#custom_machine_types</a></p><br /> 6473 </td> 6474 </tr> 6475 </tbody> 6476 </table> 6477 <h3 id="apps.kubeblocks.io/v1alpha1.MergedPolicy">MergedPolicy 6478 (<code>string</code> alias)</h3> 6479 <p> 6480 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.LazyRenderedTemplateSpec">LazyRenderedTemplateSpec</a>) 6481 </p> 6482 <div> 6483 <p>MergedPolicy defines how to merge external imported templates into component templates.</p><br /> 6484 </div> 6485 <table> 6486 <thead> 6487 <tr> 6488 <th>Value</th> 6489 <th>Description</th> 6490 </tr> 6491 </thead> 6492 <tbody><tr><td><p>"none"</p></td> 6493 <td></td> 6494 </tr><tr><td><p>"add"</p></td> 6495 <td></td> 6496 </tr><tr><td><p>"patch"</p></td> 6497 <td></td> 6498 </tr><tr><td><p>"replace"</p></td> 6499 <td></td> 6500 </tr></tbody> 6501 </table> 6502 <h3 id="apps.kubeblocks.io/v1alpha1.MonitorConfig">MonitorConfig 6503 </h3> 6504 <p> 6505 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 6506 </p> 6507 <div> 6508 </div> 6509 <table> 6510 <thead> 6511 <tr> 6512 <th>Field</th> 6513 <th>Description</th> 6514 </tr> 6515 </thead> 6516 <tbody> 6517 <tr> 6518 <td> 6519 <code>builtIn</code><br/> 6520 <em> 6521 bool 6522 </em> 6523 </td> 6524 <td> 6525 <em>(Optional)</em> 6526 <p>builtIn is a switch to enable KubeBlocks builtIn monitoring.<br />If BuiltIn is set to true, monitor metrics will be scraped automatically.<br />If BuiltIn is set to false, the provider should set ExporterConfig and Sidecar container own.</p><br /> 6527 </td> 6528 </tr> 6529 <tr> 6530 <td> 6531 <code>exporterConfig</code><br/> 6532 <em> 6533 <a href="#apps.kubeblocks.io/v1alpha1.ExporterConfig"> 6534 ExporterConfig 6535 </a> 6536 </em> 6537 </td> 6538 <td> 6539 <em>(Optional)</em> 6540 <p>exporterConfig provided by provider, which specify necessary information to Time Series Database.<br />exporterConfig is valid when builtIn is false.</p><br /> 6541 </td> 6542 </tr> 6543 </tbody> 6544 </table> 6545 <h3 id="apps.kubeblocks.io/v1alpha1.OpsPhase">OpsPhase 6546 (<code>string</code> alias)</h3> 6547 <p> 6548 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestStatus">OpsRequestStatus</a>) 6549 </p> 6550 <div> 6551 <p>OpsPhase defines opsRequest phase.</p><br /> 6552 </div> 6553 <table> 6554 <thead> 6555 <tr> 6556 <th>Value</th> 6557 <th>Description</th> 6558 </tr> 6559 </thead> 6560 <tbody><tr><td><p>"Cancelled"</p></td> 6561 <td></td> 6562 </tr><tr><td><p>"Cancelling"</p></td> 6563 <td></td> 6564 </tr><tr><td><p>"Creating"</p></td> 6565 <td></td> 6566 </tr><tr><td><p>"Failed"</p></td> 6567 <td></td> 6568 </tr><tr><td><p>"Pending"</p></td> 6569 <td></td> 6570 </tr><tr><td><p>"Running"</p></td> 6571 <td></td> 6572 </tr><tr><td><p>"Succeed"</p></td> 6573 <td></td> 6574 </tr></tbody> 6575 </table> 6576 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRecorder">OpsRecorder 6577 </h3> 6578 <div> 6579 </div> 6580 <table> 6581 <thead> 6582 <tr> 6583 <th>Field</th> 6584 <th>Description</th> 6585 </tr> 6586 </thead> 6587 <tbody> 6588 <tr> 6589 <td> 6590 <code>name</code><br/> 6591 <em> 6592 string 6593 </em> 6594 </td> 6595 <td> 6596 <p>name OpsRequest name</p><br /> 6597 </td> 6598 </tr> 6599 <tr> 6600 <td> 6601 <code>type</code><br/> 6602 <em> 6603 <a href="#apps.kubeblocks.io/v1alpha1.OpsType"> 6604 OpsType 6605 </a> 6606 </em> 6607 </td> 6608 <td> 6609 <p>clusterPhase the cluster phase when the OpsRequest is running</p><br /> 6610 </td> 6611 </tr> 6612 </tbody> 6613 </table> 6614 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRequestBehaviour">OpsRequestBehaviour 6615 </h3> 6616 <div> 6617 </div> 6618 <table> 6619 <thead> 6620 <tr> 6621 <th>Field</th> 6622 <th>Description</th> 6623 </tr> 6624 </thead> 6625 <tbody> 6626 <tr> 6627 <td> 6628 <code>FromClusterPhases</code><br/> 6629 <em> 6630 <a href="#apps.kubeblocks.io/v1alpha1.ClusterPhase"> 6631 []ClusterPhase 6632 </a> 6633 </em> 6634 </td> 6635 <td> 6636 </td> 6637 </tr> 6638 <tr> 6639 <td> 6640 <code>ToClusterPhase</code><br/> 6641 <em> 6642 <a href="#apps.kubeblocks.io/v1alpha1.ClusterPhase"> 6643 ClusterPhase 6644 </a> 6645 </em> 6646 </td> 6647 <td> 6648 </td> 6649 </tr> 6650 <tr> 6651 <td> 6652 <code>ProcessingReasonInClusterCondition</code><br/> 6653 <em> 6654 string 6655 </em> 6656 </td> 6657 <td> 6658 </td> 6659 </tr> 6660 </tbody> 6661 </table> 6662 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRequestComponentStatus">OpsRequestComponentStatus 6663 </h3> 6664 <p> 6665 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestStatus">OpsRequestStatus</a>) 6666 </p> 6667 <div> 6668 </div> 6669 <table> 6670 <thead> 6671 <tr> 6672 <th>Field</th> 6673 <th>Description</th> 6674 </tr> 6675 </thead> 6676 <tbody> 6677 <tr> 6678 <td> 6679 <code>phase</code><br/> 6680 <em> 6681 <a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentPhase"> 6682 ClusterComponentPhase 6683 </a> 6684 </em> 6685 </td> 6686 <td> 6687 <em>(Optional)</em> 6688 <p>phase describes the component phase, reference Cluster.status.component.phase.</p><br /> 6689 </td> 6690 </tr> 6691 <tr> 6692 <td> 6693 <code>lastFailedTime</code><br/> 6694 <em> 6695 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 6696 Kubernetes meta/v1.Time 6697 </a> 6698 </em> 6699 </td> 6700 <td> 6701 <em>(Optional)</em> 6702 <p>lastFailedTime is the last time the component phase transitioned to Failed or Abnormal.</p><br /> 6703 </td> 6704 </tr> 6705 <tr> 6706 <td> 6707 <code>progressDetails</code><br/> 6708 <em> 6709 <a href="#apps.kubeblocks.io/v1alpha1.ProgressStatusDetail"> 6710 []ProgressStatusDetail 6711 </a> 6712 </em> 6713 </td> 6714 <td> 6715 <em>(Optional)</em> 6716 <p>progressDetails describes the progress details of the component for this operation.</p><br /> 6717 </td> 6718 </tr> 6719 <tr> 6720 <td> 6721 <code>workloadType</code><br/> 6722 <em> 6723 <a href="#apps.kubeblocks.io/v1alpha1.WorkloadType"> 6724 WorkloadType 6725 </a> 6726 </em> 6727 </td> 6728 <td> 6729 <em>(Optional)</em> 6730 <p>workloadType references workload type of component in ClusterDefinition.</p><br /> 6731 </td> 6732 </tr> 6733 <tr> 6734 <td> 6735 <code>reason</code><br/> 6736 <em> 6737 string 6738 </em> 6739 </td> 6740 <td> 6741 <em>(Optional)</em> 6742 <p>reason describes the reason for the component phase.</p><br /> 6743 </td> 6744 </tr> 6745 <tr> 6746 <td> 6747 <code>message</code><br/> 6748 <em> 6749 string 6750 </em> 6751 </td> 6752 <td> 6753 <em>(Optional)</em> 6754 <p>message is a human-readable message indicating details about this operation.</p><br /> 6755 </td> 6756 </tr> 6757 </tbody> 6758 </table> 6759 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec 6760 </h3> 6761 <p> 6762 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequest">OpsRequest</a>) 6763 </p> 6764 <div> 6765 <p>OpsRequestSpec defines the desired state of OpsRequest</p><br /> 6766 </div> 6767 <table> 6768 <thead> 6769 <tr> 6770 <th>Field</th> 6771 <th>Description</th> 6772 </tr> 6773 </thead> 6774 <tbody> 6775 <tr> 6776 <td> 6777 <code>clusterRef</code><br/> 6778 <em> 6779 string 6780 </em> 6781 </td> 6782 <td> 6783 <p>clusterRef references clusterDefinition.</p><br /> 6784 </td> 6785 </tr> 6786 <tr> 6787 <td> 6788 <code>cancel</code><br/> 6789 <em> 6790 bool 6791 </em> 6792 </td> 6793 <td> 6794 <em>(Optional)</em> 6795 <p>cancel defines the action to cancel the Pending/Creating/Running opsRequest, supported types: [VerticalScaling, HorizontalScaling].<br />once cancel is set to true, this opsRequest will be canceled and modifying this property again will not take effect.</p><br /> 6796 </td> 6797 </tr> 6798 <tr> 6799 <td> 6800 <code>type</code><br/> 6801 <em> 6802 <a href="#apps.kubeblocks.io/v1alpha1.OpsType"> 6803 OpsType 6804 </a> 6805 </em> 6806 </td> 6807 <td> 6808 <p>type defines the operation type.</p><br /> 6809 </td> 6810 </tr> 6811 <tr> 6812 <td> 6813 <code>ttlSecondsAfterSucceed</code><br/> 6814 <em> 6815 int32 6816 </em> 6817 </td> 6818 <td> 6819 <em>(Optional)</em> 6820 <p>ttlSecondsAfterSucceed OpsRequest will be deleted after TTLSecondsAfterSucceed second when OpsRequest.status.phase is Succeed.</p><br /> 6821 </td> 6822 </tr> 6823 <tr> 6824 <td> 6825 <code>upgrade</code><br/> 6826 <em> 6827 <a href="#apps.kubeblocks.io/v1alpha1.Upgrade"> 6828 Upgrade 6829 </a> 6830 </em> 6831 </td> 6832 <td> 6833 <em>(Optional)</em> 6834 <p>upgrade specifies the cluster version by specifying clusterVersionRef.</p><br /> 6835 </td> 6836 </tr> 6837 <tr> 6838 <td> 6839 <code>horizontalScaling</code><br/> 6840 <em> 6841 <a href="#apps.kubeblocks.io/v1alpha1.HorizontalScaling"> 6842 []HorizontalScaling 6843 </a> 6844 </em> 6845 </td> 6846 <td> 6847 <em>(Optional)</em> 6848 <p>horizontalScaling defines what component need to horizontal scale the specified replicas.</p><br /> 6849 </td> 6850 </tr> 6851 <tr> 6852 <td> 6853 <code>volumeExpansion</code><br/> 6854 <em> 6855 <a href="#apps.kubeblocks.io/v1alpha1.VolumeExpansion"> 6856 []VolumeExpansion 6857 </a> 6858 </em> 6859 </td> 6860 <td> 6861 <em>(Optional)</em> 6862 <p>volumeExpansion defines what component and volumeClaimTemplate need to expand the specified storage.</p><br /> 6863 </td> 6864 </tr> 6865 <tr> 6866 <td> 6867 <code>restart</code><br/> 6868 <em> 6869 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 6870 []ComponentOps 6871 </a> 6872 </em> 6873 </td> 6874 <td> 6875 <em>(Optional)</em> 6876 <p>restart the specified components.</p><br /> 6877 </td> 6878 </tr> 6879 <tr> 6880 <td> 6881 <code>switchover</code><br/> 6882 <em> 6883 <a href="#apps.kubeblocks.io/v1alpha1.Switchover"> 6884 []Switchover 6885 </a> 6886 </em> 6887 </td> 6888 <td> 6889 <em>(Optional)</em> 6890 <p>switchover the specified components.</p><br /> 6891 </td> 6892 </tr> 6893 <tr> 6894 <td> 6895 <code>verticalScaling</code><br/> 6896 <em> 6897 <a href="#apps.kubeblocks.io/v1alpha1.VerticalScaling"> 6898 []VerticalScaling 6899 </a> 6900 </em> 6901 </td> 6902 <td> 6903 <em>(Optional)</em> 6904 <p>verticalScaling defines what component need to vertical scale the specified compute resources.</p><br /> 6905 </td> 6906 </tr> 6907 <tr> 6908 <td> 6909 <code>reconfigure</code><br/> 6910 <em> 6911 <a href="#apps.kubeblocks.io/v1alpha1.Reconfigure"> 6912 Reconfigure 6913 </a> 6914 </em> 6915 </td> 6916 <td> 6917 <em>(Optional)</em> 6918 <p>reconfigure defines the variables that need to input when updating configuration.</p><br /> 6919 </td> 6920 </tr> 6921 <tr> 6922 <td> 6923 <code>expose</code><br/> 6924 <em> 6925 <a href="#apps.kubeblocks.io/v1alpha1.Expose"> 6926 []Expose 6927 </a> 6928 </em> 6929 </td> 6930 <td> 6931 <em>(Optional)</em> 6932 <p>expose defines services the component needs to expose.</p><br /> 6933 </td> 6934 </tr> 6935 <tr> 6936 <td> 6937 <code>restoreFrom</code><br/> 6938 <em> 6939 <a href="#apps.kubeblocks.io/v1alpha1.RestoreFromSpec"> 6940 RestoreFromSpec 6941 </a> 6942 </em> 6943 </td> 6944 <td> 6945 <em>(Optional)</em> 6946 <p>cluster RestoreFrom backup or point in time</p><br /> 6947 </td> 6948 </tr> 6949 <tr> 6950 <td> 6951 <code>ttlSecondsBeforeAbort</code><br/> 6952 <em> 6953 int32 6954 </em> 6955 </td> 6956 <td> 6957 <em>(Optional)</em> 6958 <p>ttlSecondsBeforeAbort OpsRequest will wait at most TTLSecondsBeforeAbort seconds for start-conditions to be met.<br />If not specified, the default value is 0, which means that the start-conditions must be met immediately.</p><br /> 6959 </td> 6960 </tr> 6961 <tr> 6962 <td> 6963 <code>scriptSpec</code><br/> 6964 <em> 6965 <a href="#apps.kubeblocks.io/v1alpha1.ScriptSpec"> 6966 ScriptSpec 6967 </a> 6968 </em> 6969 </td> 6970 <td> 6971 <em>(Optional)</em> 6972 <p>scriptSpec defines the script to be executed.</p><br /> 6973 </td> 6974 </tr> 6975 </tbody> 6976 </table> 6977 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRequestStatus">OpsRequestStatus 6978 </h3> 6979 <p> 6980 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequest">OpsRequest</a>) 6981 </p> 6982 <div> 6983 <p>OpsRequestStatus defines the observed state of OpsRequest</p><br /> 6984 </div> 6985 <table> 6986 <thead> 6987 <tr> 6988 <th>Field</th> 6989 <th>Description</th> 6990 </tr> 6991 </thead> 6992 <tbody> 6993 <tr> 6994 <td> 6995 <code>clusterGeneration</code><br/> 6996 <em> 6997 int64 6998 </em> 6999 </td> 7000 <td> 7001 <em>(Optional)</em> 7002 <p>ClusterGeneration records the cluster generation after handling the opsRequest action.</p><br /> 7003 </td> 7004 </tr> 7005 <tr> 7006 <td> 7007 <code>phase</code><br/> 7008 <em> 7009 <a href="#apps.kubeblocks.io/v1alpha1.OpsPhase"> 7010 OpsPhase 7011 </a> 7012 </em> 7013 </td> 7014 <td> 7015 <p>phase describes OpsRequest phase.</p><br /> 7016 </td> 7017 </tr> 7018 <tr> 7019 <td> 7020 <code>progress</code><br/> 7021 <em> 7022 string 7023 </em> 7024 </td> 7025 <td> 7026 </td> 7027 </tr> 7028 <tr> 7029 <td> 7030 <code>lastConfiguration</code><br/> 7031 <em> 7032 <a href="#apps.kubeblocks.io/v1alpha1.LastConfiguration"> 7033 LastConfiguration 7034 </a> 7035 </em> 7036 </td> 7037 <td> 7038 <em>(Optional)</em> 7039 <p>lastConfiguration records the last configuration before this operation take effected.</p><br /> 7040 </td> 7041 </tr> 7042 <tr> 7043 <td> 7044 <code>components</code><br/> 7045 <em> 7046 <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestComponentStatus"> 7047 map[string]github.com/apecloud/kubeblocks/apis/apps/v1alpha1.OpsRequestComponentStatus 7048 </a> 7049 </em> 7050 </td> 7051 <td> 7052 <em>(Optional)</em> 7053 <p>components defines the recorded the status information of changed components for operation request.</p><br /> 7054 </td> 7055 </tr> 7056 <tr> 7057 <td> 7058 <code>startTimestamp</code><br/> 7059 <em> 7060 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 7061 Kubernetes meta/v1.Time 7062 </a> 7063 </em> 7064 </td> 7065 <td> 7066 <em>(Optional)</em> 7067 <p>startTimestamp The time when the OpsRequest started processing.</p><br /> 7068 </td> 7069 </tr> 7070 <tr> 7071 <td> 7072 <code>completionTimestamp</code><br/> 7073 <em> 7074 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 7075 Kubernetes meta/v1.Time 7076 </a> 7077 </em> 7078 </td> 7079 <td> 7080 <em>(Optional)</em> 7081 <p>completionTimestamp defines the OpsRequest completion time.</p><br /> 7082 </td> 7083 </tr> 7084 <tr> 7085 <td> 7086 <code>cancelTimestamp</code><br/> 7087 <em> 7088 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 7089 Kubernetes meta/v1.Time 7090 </a> 7091 </em> 7092 </td> 7093 <td> 7094 <em>(Optional)</em> 7095 <p>CancelTimestamp defines cancel time.</p><br /> 7096 </td> 7097 </tr> 7098 <tr> 7099 <td> 7100 <code>reconfiguringStatus</code><br/> 7101 <em> 7102 <a href="#apps.kubeblocks.io/v1alpha1.ReconfiguringStatus"> 7103 ReconfiguringStatus 7104 </a> 7105 </em> 7106 </td> 7107 <td> 7108 <em>(Optional)</em> 7109 <p>reconfiguringStatus defines the status information of reconfiguring.</p><br /> 7110 </td> 7111 </tr> 7112 <tr> 7113 <td> 7114 <code>conditions</code><br/> 7115 <em> 7116 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#condition-v1-meta"> 7117 []Kubernetes meta/v1.Condition 7118 </a> 7119 </em> 7120 </td> 7121 <td> 7122 <em>(Optional)</em> 7123 <p>conditions describes opsRequest detail status.</p><br /> 7124 </td> 7125 </tr> 7126 </tbody> 7127 </table> 7128 <h3 id="apps.kubeblocks.io/v1alpha1.OpsRequestVolumeClaimTemplate">OpsRequestVolumeClaimTemplate 7129 </h3> 7130 <p> 7131 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.LastComponentConfiguration">LastComponentConfiguration</a>, <a href="#apps.kubeblocks.io/v1alpha1.VolumeExpansion">VolumeExpansion</a>) 7132 </p> 7133 <div> 7134 </div> 7135 <table> 7136 <thead> 7137 <tr> 7138 <th>Field</th> 7139 <th>Description</th> 7140 </tr> 7141 </thead> 7142 <tbody> 7143 <tr> 7144 <td> 7145 <code>storage</code><br/> 7146 <em> 7147 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 7148 Kubernetes resource.Quantity 7149 </a> 7150 </em> 7151 </td> 7152 <td> 7153 <p>Request storage size.</p><br /> 7154 </td> 7155 </tr> 7156 <tr> 7157 <td> 7158 <code>name</code><br/> 7159 <em> 7160 string 7161 </em> 7162 </td> 7163 <td> 7164 <p>name references volumeClaimTemplate name from cluster components.</p><br /> 7165 </td> 7166 </tr> 7167 </tbody> 7168 </table> 7169 <h3 id="apps.kubeblocks.io/v1alpha1.OpsType">OpsType 7170 (<code>string</code> alias)</h3> 7171 <p> 7172 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRecorder">OpsRecorder</a>, <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 7173 </p> 7174 <div> 7175 <p>OpsType defines operation types.</p><br /> 7176 </div> 7177 <table> 7178 <thead> 7179 <tr> 7180 <th>Value</th> 7181 <th>Description</th> 7182 </tr> 7183 </thead> 7184 <tbody><tr><td><p>"DataScript"</p></td> 7185 <td></td> 7186 </tr><tr><td><p>"Expose"</p></td> 7187 <td><p>StartType the start operation will start the pods which is deleted in stop operation.</p><br /></td> 7188 </tr><tr><td><p>"HorizontalScaling"</p></td> 7189 <td></td> 7190 </tr><tr><td><p>"Reconfiguring"</p></td> 7191 <td></td> 7192 </tr><tr><td><p>"Restart"</p></td> 7193 <td></td> 7194 </tr><tr><td><p>"Start"</p></td> 7195 <td><p>StopType the stop operation will delete all pods in a cluster concurrently.</p><br /></td> 7196 </tr><tr><td><p>"Stop"</p></td> 7197 <td><p>RestartType the restart operation is a special case of the rolling update operation.</p><br /></td> 7198 </tr><tr><td><p>"Switchover"</p></td> 7199 <td></td> 7200 </tr><tr><td><p>"Upgrade"</p></td> 7201 <td></td> 7202 </tr><tr><td><p>"VerticalScaling"</p></td> 7203 <td></td> 7204 </tr><tr><td><p>"VolumeExpansion"</p></td> 7205 <td></td> 7206 </tr></tbody> 7207 </table> 7208 <h3 id="apps.kubeblocks.io/v1alpha1.ParameterConfig">ParameterConfig 7209 </h3> 7210 <p> 7211 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Configuration">Configuration</a>) 7212 </p> 7213 <div> 7214 </div> 7215 <table> 7216 <thead> 7217 <tr> 7218 <th>Field</th> 7219 <th>Description</th> 7220 </tr> 7221 </thead> 7222 <tbody> 7223 <tr> 7224 <td> 7225 <code>key</code><br/> 7226 <em> 7227 string 7228 </em> 7229 </td> 7230 <td> 7231 <p>key indicates the key name of ConfigMap.</p><br /> 7232 </td> 7233 </tr> 7234 <tr> 7235 <td> 7236 <code>parameters</code><br/> 7237 <em> 7238 <a href="#apps.kubeblocks.io/v1alpha1.ParameterPair"> 7239 []ParameterPair 7240 </a> 7241 </em> 7242 </td> 7243 <td> 7244 <em>(Optional)</em> 7245 <p>Setting the list of parameters for a single configuration file.<br />update specified the parameters.</p><br /> 7246 </td> 7247 </tr> 7248 <tr> 7249 <td> 7250 <code>fileContent</code><br/> 7251 <em> 7252 string 7253 </em> 7254 </td> 7255 <td> 7256 <em>(Optional)</em> 7257 <p>fileContent indicates the configuration file content.<br />update whole file.</p><br /> 7258 </td> 7259 </tr> 7260 </tbody> 7261 </table> 7262 <h3 id="apps.kubeblocks.io/v1alpha1.ParameterPair">ParameterPair 7263 </h3> 7264 <p> 7265 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ParameterConfig">ParameterConfig</a>) 7266 </p> 7267 <div> 7268 </div> 7269 <table> 7270 <thead> 7271 <tr> 7272 <th>Field</th> 7273 <th>Description</th> 7274 </tr> 7275 </thead> 7276 <tbody> 7277 <tr> 7278 <td> 7279 <code>key</code><br/> 7280 <em> 7281 string 7282 </em> 7283 </td> 7284 <td> 7285 <p>key is name of the parameter to be updated.</p><br /> 7286 </td> 7287 </tr> 7288 <tr> 7289 <td> 7290 <code>value</code><br/> 7291 <em> 7292 string 7293 </em> 7294 </td> 7295 <td> 7296 <em>(Optional)</em> 7297 <p>parameter values to be updated.<br />if set nil, the parameter defined by the key field will be deleted from the configuration file.</p><br /> 7298 </td> 7299 </tr> 7300 </tbody> 7301 </table> 7302 <h3 id="apps.kubeblocks.io/v1alpha1.PasswordConfig">PasswordConfig 7303 </h3> 7304 <p> 7305 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SystemAccountSpec">SystemAccountSpec</a>) 7306 </p> 7307 <div> 7308 <p>PasswordConfig helps provide to customize complexity of password generation pattern.</p><br /> 7309 </div> 7310 <table> 7311 <thead> 7312 <tr> 7313 <th>Field</th> 7314 <th>Description</th> 7315 </tr> 7316 </thead> 7317 <tbody> 7318 <tr> 7319 <td> 7320 <code>length</code><br/> 7321 <em> 7322 int32 7323 </em> 7324 </td> 7325 <td> 7326 <em>(Optional)</em> 7327 <p>length defines the length of password.</p><br /> 7328 </td> 7329 </tr> 7330 <tr> 7331 <td> 7332 <code>numDigits</code><br/> 7333 <em> 7334 int32 7335 </em> 7336 </td> 7337 <td> 7338 <em>(Optional)</em> 7339 <p>numDigits defines number of digits.</p><br /> 7340 </td> 7341 </tr> 7342 <tr> 7343 <td> 7344 <code>numSymbols</code><br/> 7345 <em> 7346 int32 7347 </em> 7348 </td> 7349 <td> 7350 <em>(Optional)</em> 7351 <p>numSymbols defines number of symbols.</p><br /> 7352 </td> 7353 </tr> 7354 <tr> 7355 <td> 7356 <code>letterCase</code><br/> 7357 <em> 7358 <a href="#apps.kubeblocks.io/v1alpha1.LetterCase"> 7359 LetterCase 7360 </a> 7361 </em> 7362 </td> 7363 <td> 7364 <em>(Optional)</em> 7365 <p>letterCase defines to use lower-cases, upper-cases or mixed-cases of letters.</p><br /> 7366 </td> 7367 </tr> 7368 </tbody> 7369 </table> 7370 <h3 id="apps.kubeblocks.io/v1alpha1.PersistentVolumeClaimSpec">PersistentVolumeClaimSpec 7371 </h3> 7372 <p> 7373 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVolumeClaimTemplate">ClusterComponentVolumeClaimTemplate</a>) 7374 </p> 7375 <div> 7376 </div> 7377 <table> 7378 <thead> 7379 <tr> 7380 <th>Field</th> 7381 <th>Description</th> 7382 </tr> 7383 </thead> 7384 <tbody> 7385 <tr> 7386 <td> 7387 <code>accessModes</code><br/> 7388 <em> 7389 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#persistentvolumeaccessmode-v1-core"> 7390 []Kubernetes core/v1.PersistentVolumeAccessMode 7391 </a> 7392 </em> 7393 </td> 7394 <td> 7395 <em>(Optional)</em> 7396 <p>accessModes contains the desired access modes the volume should have.<br />More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1">https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1</a>.</p><br /> 7397 </td> 7398 </tr> 7399 <tr> 7400 <td> 7401 <code>resources</code><br/> 7402 <em> 7403 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core"> 7404 Kubernetes core/v1.ResourceRequirements 7405 </a> 7406 </em> 7407 </td> 7408 <td> 7409 <em>(Optional)</em> 7410 <p>resources represents the minimum resources the volume should have.<br />If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements<br />that are lower than previous value but must still be higher than capacity recorded in the<br />status field of the claim.<br />More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources">https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources</a>.</p><br /> 7411 </td> 7412 </tr> 7413 <tr> 7414 <td> 7415 <code>storageClassName</code><br/> 7416 <em> 7417 string 7418 </em> 7419 </td> 7420 <td> 7421 <em>(Optional)</em> 7422 <p>storageClassName is the name of the StorageClass required by the claim.<br />More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1">https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1</a>.</p><br /> 7423 </td> 7424 </tr> 7425 </tbody> 7426 </table> 7427 <h3 id="apps.kubeblocks.io/v1alpha1.Phase">Phase 7428 (<code>string</code> alias)</h3> 7429 <p> 7430 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterDefinitionStatus">ClusterDefinitionStatus</a>, <a href="#apps.kubeblocks.io/v1alpha1.ClusterVersionStatus">ClusterVersionStatus</a>) 7431 </p> 7432 <div> 7433 <p>Phase defines the ClusterDefinition and ClusterVersion CR .status.phase</p><br /> 7434 </div> 7435 <table> 7436 <thead> 7437 <tr> 7438 <th>Value</th> 7439 <th>Description</th> 7440 </tr> 7441 </thead> 7442 <tbody><tr><td><p>"Available"</p></td> 7443 <td></td> 7444 </tr><tr><td><p>"Unavailable"</p></td> 7445 <td></td> 7446 </tr></tbody> 7447 </table> 7448 <h3 id="apps.kubeblocks.io/v1alpha1.PodAntiAffinity">PodAntiAffinity 7449 (<code>string</code> alias)</h3> 7450 <p> 7451 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Affinity">Affinity</a>) 7452 </p> 7453 <div> 7454 <p>PodAntiAffinity defines pod anti-affinity strategy.</p><br /> 7455 </div> 7456 <table> 7457 <thead> 7458 <tr> 7459 <th>Value</th> 7460 <th>Description</th> 7461 </tr> 7462 </thead> 7463 <tbody><tr><td><p>"Preferred"</p></td> 7464 <td></td> 7465 </tr><tr><td><p>"Required"</p></td> 7466 <td></td> 7467 </tr></tbody> 7468 </table> 7469 <h3 id="apps.kubeblocks.io/v1alpha1.PointInTimeRefSpec">PointInTimeRefSpec 7470 </h3> 7471 <p> 7472 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.RestoreFromSpec">RestoreFromSpec</a>) 7473 </p> 7474 <div> 7475 </div> 7476 <table> 7477 <thead> 7478 <tr> 7479 <th>Field</th> 7480 <th>Description</th> 7481 </tr> 7482 </thead> 7483 <tbody> 7484 <tr> 7485 <td> 7486 <code>time</code><br/> 7487 <em> 7488 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 7489 Kubernetes meta/v1.Time 7490 </a> 7491 </em> 7492 </td> 7493 <td> 7494 <em>(Optional)</em> 7495 <p>specify the time point to restore, with UTC as the time zone.</p><br /> 7496 </td> 7497 </tr> 7498 <tr> 7499 <td> 7500 <code>ref</code><br/> 7501 <em> 7502 <a href="#apps.kubeblocks.io/v1alpha1.RefNamespaceName"> 7503 RefNamespaceName 7504 </a> 7505 </em> 7506 </td> 7507 <td> 7508 <em>(Optional)</em> 7509 <p>specify a reference source cluster to restore</p><br /> 7510 </td> 7511 </tr> 7512 </tbody> 7513 </table> 7514 <h3 id="apps.kubeblocks.io/v1alpha1.ProgressStatus">ProgressStatus 7515 (<code>string</code> alias)</h3> 7516 <p> 7517 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ProgressStatusDetail">ProgressStatusDetail</a>) 7518 </p> 7519 <div> 7520 <p>ProgressStatus defines the status of the opsRequest progress.</p><br /> 7521 </div> 7522 <table> 7523 <thead> 7524 <tr> 7525 <th>Value</th> 7526 <th>Description</th> 7527 </tr> 7528 </thead> 7529 <tbody><tr><td><p>"Failed"</p></td> 7530 <td></td> 7531 </tr><tr><td><p>"Pending"</p></td> 7532 <td></td> 7533 </tr><tr><td><p>"Processing"</p></td> 7534 <td></td> 7535 </tr><tr><td><p>"Succeed"</p></td> 7536 <td></td> 7537 </tr></tbody> 7538 </table> 7539 <h3 id="apps.kubeblocks.io/v1alpha1.ProgressStatusDetail">ProgressStatusDetail 7540 </h3> 7541 <p> 7542 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestComponentStatus">OpsRequestComponentStatus</a>) 7543 </p> 7544 <div> 7545 </div> 7546 <table> 7547 <thead> 7548 <tr> 7549 <th>Field</th> 7550 <th>Description</th> 7551 </tr> 7552 </thead> 7553 <tbody> 7554 <tr> 7555 <td> 7556 <code>group</code><br/> 7557 <em> 7558 string 7559 </em> 7560 </td> 7561 <td> 7562 <em>(Optional)</em> 7563 <p>group describes which group the current object belongs to.<br />if the objects of a component belong to the same group, we can ignore it.</p><br /> 7564 </td> 7565 </tr> 7566 <tr> 7567 <td> 7568 <code>objectKey</code><br/> 7569 <em> 7570 string 7571 </em> 7572 </td> 7573 <td> 7574 <p>objectKey is the unique key of the object.</p><br /> 7575 </td> 7576 </tr> 7577 <tr> 7578 <td> 7579 <code>status</code><br/> 7580 <em> 7581 <a href="#apps.kubeblocks.io/v1alpha1.ProgressStatus"> 7582 ProgressStatus 7583 </a> 7584 </em> 7585 </td> 7586 <td> 7587 <p>status describes the state of processing the object.</p><br /> 7588 </td> 7589 </tr> 7590 <tr> 7591 <td> 7592 <code>message</code><br/> 7593 <em> 7594 string 7595 </em> 7596 </td> 7597 <td> 7598 <em>(Optional)</em> 7599 <p>message is a human readable message indicating details about the object condition.</p><br /> 7600 </td> 7601 </tr> 7602 <tr> 7603 <td> 7604 <code>startTime</code><br/> 7605 <em> 7606 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 7607 Kubernetes meta/v1.Time 7608 </a> 7609 </em> 7610 </td> 7611 <td> 7612 <em>(Optional)</em> 7613 <p>startTime is the start time of object processing.</p><br /> 7614 </td> 7615 </tr> 7616 <tr> 7617 <td> 7618 <code>endTime</code><br/> 7619 <em> 7620 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#time-v1-meta"> 7621 Kubernetes meta/v1.Time 7622 </a> 7623 </em> 7624 </td> 7625 <td> 7626 <em>(Optional)</em> 7627 <p>endTime is the completion time of object processing.</p><br /> 7628 </td> 7629 </tr> 7630 </tbody> 7631 </table> 7632 <h3 id="apps.kubeblocks.io/v1alpha1.ProtectedVolume">ProtectedVolume 7633 </h3> 7634 <p> 7635 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.VolumeProtectionSpec">VolumeProtectionSpec</a>) 7636 </p> 7637 <div> 7638 </div> 7639 <table> 7640 <thead> 7641 <tr> 7642 <th>Field</th> 7643 <th>Description</th> 7644 </tr> 7645 </thead> 7646 <tbody> 7647 <tr> 7648 <td> 7649 <code>name</code><br/> 7650 <em> 7651 string 7652 </em> 7653 </td> 7654 <td> 7655 <em>(Optional)</em> 7656 <p>Name of volume to protect.</p><br /> 7657 </td> 7658 </tr> 7659 <tr> 7660 <td> 7661 <code>highWatermark</code><br/> 7662 <em> 7663 int 7664 </em> 7665 </td> 7666 <td> 7667 <em>(Optional)</em> 7668 <p>Volume specified high watermark threshold, it will override the component level threshold.<br />If the value is invalid, it will be ignored and the component level threshold will be used.</p><br /> 7669 </td> 7670 </tr> 7671 </tbody> 7672 </table> 7673 <h3 id="apps.kubeblocks.io/v1alpha1.ProvisionPolicy">ProvisionPolicy 7674 </h3> 7675 <p> 7676 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SystemAccountConfig">SystemAccountConfig</a>) 7677 </p> 7678 <div> 7679 <p>ProvisionPolicy defines the policy details for creating accounts.</p><br /> 7680 </div> 7681 <table> 7682 <thead> 7683 <tr> 7684 <th>Field</th> 7685 <th>Description</th> 7686 </tr> 7687 </thead> 7688 <tbody> 7689 <tr> 7690 <td> 7691 <code>type</code><br/> 7692 <em> 7693 <a href="#apps.kubeblocks.io/v1alpha1.ProvisionPolicyType"> 7694 ProvisionPolicyType 7695 </a> 7696 </em> 7697 </td> 7698 <td> 7699 <p>type defines the way to provision an account, either <code>CreateByStmt</code> or <code>ReferToExisting</code>.</p><br /> 7700 </td> 7701 </tr> 7702 <tr> 7703 <td> 7704 <code>scope</code><br/> 7705 <em> 7706 <a href="#apps.kubeblocks.io/v1alpha1.ProvisionScope"> 7707 ProvisionScope 7708 </a> 7709 </em> 7710 </td> 7711 <td> 7712 <p>scope is the scope to provision account, and the scope could be <code>AnyPods</code> or <code>AllPods</code>.</p><br /> 7713 </td> 7714 </tr> 7715 <tr> 7716 <td> 7717 <code>statements</code><br/> 7718 <em> 7719 <a href="#apps.kubeblocks.io/v1alpha1.ProvisionStatements"> 7720 ProvisionStatements 7721 </a> 7722 </em> 7723 </td> 7724 <td> 7725 <em>(Optional)</em> 7726 <p>statements will be used when Type is CreateByStmt.</p><br /> 7727 </td> 7728 </tr> 7729 <tr> 7730 <td> 7731 <code>secretRef</code><br/> 7732 <em> 7733 <a href="#apps.kubeblocks.io/v1alpha1.ProvisionSecretRef"> 7734 ProvisionSecretRef 7735 </a> 7736 </em> 7737 </td> 7738 <td> 7739 <em>(Optional)</em> 7740 <p>secretRef will be used when Type is ReferToExisting.</p><br /> 7741 </td> 7742 </tr> 7743 </tbody> 7744 </table> 7745 <h3 id="apps.kubeblocks.io/v1alpha1.ProvisionPolicyType">ProvisionPolicyType 7746 (<code>string</code> alias)</h3> 7747 <p> 7748 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ProvisionPolicy">ProvisionPolicy</a>) 7749 </p> 7750 <div> 7751 <p>ProvisionPolicyType defines the policy for creating accounts.</p><br /> 7752 </div> 7753 <table> 7754 <thead> 7755 <tr> 7756 <th>Value</th> 7757 <th>Description</th> 7758 </tr> 7759 </thead> 7760 <tbody><tr><td><p>"CreateByStmt"</p></td> 7761 <td><p>CreateByStmt will create account w.r.t. deletion and creation statement given by provider.</p><br /></td> 7762 </tr><tr><td><p>"ReferToExisting"</p></td> 7763 <td><p>ReferToExisting will not create account, but create a secret by copying data from referred secret file.</p><br /></td> 7764 </tr></tbody> 7765 </table> 7766 <h3 id="apps.kubeblocks.io/v1alpha1.ProvisionScope">ProvisionScope 7767 (<code>string</code> alias)</h3> 7768 <p> 7769 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ProvisionPolicy">ProvisionPolicy</a>) 7770 </p> 7771 <div> 7772 <p>ProvisionScope defines the scope (within component) of provision.</p><br /> 7773 </div> 7774 <table> 7775 <thead> 7776 <tr> 7777 <th>Value</th> 7778 <th>Description</th> 7779 </tr> 7780 </thead> 7781 <tbody><tr><td><p>"AllPods"</p></td> 7782 <td><p>AllPods will create accounts for all pods belong to the component.</p><br /></td> 7783 </tr><tr><td><p>"AnyPods"</p></td> 7784 <td><p>AndyPods will only create accounts on one pod.</p><br /></td> 7785 </tr></tbody> 7786 </table> 7787 <h3 id="apps.kubeblocks.io/v1alpha1.ProvisionSecretRef">ProvisionSecretRef 7788 </h3> 7789 <p> 7790 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ProvisionPolicy">ProvisionPolicy</a>) 7791 </p> 7792 <div> 7793 <p>ProvisionSecretRef defines the information of secret referred to.</p><br /> 7794 </div> 7795 <table> 7796 <thead> 7797 <tr> 7798 <th>Field</th> 7799 <th>Description</th> 7800 </tr> 7801 </thead> 7802 <tbody> 7803 <tr> 7804 <td> 7805 <code>name</code><br/> 7806 <em> 7807 string 7808 </em> 7809 </td> 7810 <td> 7811 <p>name refers to the name of the secret.</p><br /> 7812 </td> 7813 </tr> 7814 <tr> 7815 <td> 7816 <code>namespace</code><br/> 7817 <em> 7818 string 7819 </em> 7820 </td> 7821 <td> 7822 <p>namespace refers to the namespace of the secret.</p><br /> 7823 </td> 7824 </tr> 7825 </tbody> 7826 </table> 7827 <h3 id="apps.kubeblocks.io/v1alpha1.ProvisionStatements">ProvisionStatements 7828 </h3> 7829 <p> 7830 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ProvisionPolicy">ProvisionPolicy</a>) 7831 </p> 7832 <div> 7833 <p>ProvisionStatements defines the statements used to create accounts.</p><br /> 7834 </div> 7835 <table> 7836 <thead> 7837 <tr> 7838 <th>Field</th> 7839 <th>Description</th> 7840 </tr> 7841 </thead> 7842 <tbody> 7843 <tr> 7844 <td> 7845 <code>creation</code><br/> 7846 <em> 7847 string 7848 </em> 7849 </td> 7850 <td> 7851 <p>creation specifies statement how to create this account with required privileges.</p><br /> 7852 </td> 7853 </tr> 7854 <tr> 7855 <td> 7856 <code>update</code><br/> 7857 <em> 7858 string 7859 </em> 7860 </td> 7861 <td> 7862 <em>(Optional)</em> 7863 <p>update specifies statement how to update account’s password.</p><br /> 7864 </td> 7865 </tr> 7866 <tr> 7867 <td> 7868 <code>deletion</code><br/> 7869 <em> 7870 string 7871 </em> 7872 </td> 7873 <td> 7874 <em>(Optional)</em> 7875 <p>deletion specifies statement how to delete this account.<br />Used in combination with <code>CreateionStatement</code> to delete the account before create it.<br />For instance, one usually uses <code>drop user if exists</code> statement followed by <code>create user</code> statement to create an account.<br />Deprecated: this field is deprecated, use <code>update</code> instead.</p><br /> 7876 </td> 7877 </tr> 7878 </tbody> 7879 </table> 7880 <h3 id="apps.kubeblocks.io/v1alpha1.Reconfigure">Reconfigure 7881 </h3> 7882 <p> 7883 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 7884 </p> 7885 <div> 7886 <p>Reconfigure defines the variables that need to input when updating configuration.</p><br /> 7887 </div> 7888 <table> 7889 <thead> 7890 <tr> 7891 <th>Field</th> 7892 <th>Description</th> 7893 </tr> 7894 </thead> 7895 <tbody> 7896 <tr> 7897 <td> 7898 <code>ComponentOps</code><br/> 7899 <em> 7900 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 7901 ComponentOps 7902 </a> 7903 </em> 7904 </td> 7905 <td> 7906 <p> 7907 (Members of <code>ComponentOps</code> are embedded into this type.) 7908 </p> 7909 </td> 7910 </tr> 7911 <tr> 7912 <td> 7913 <code>configurations</code><br/> 7914 <em> 7915 <a href="#apps.kubeblocks.io/v1alpha1.Configuration"> 7916 []Configuration 7917 </a> 7918 </em> 7919 </td> 7920 <td> 7921 <p>configurations defines which components perform the operation.</p><br /> 7922 </td> 7923 </tr> 7924 </tbody> 7925 </table> 7926 <h3 id="apps.kubeblocks.io/v1alpha1.ReconfiguringStatus">ReconfiguringStatus 7927 </h3> 7928 <p> 7929 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestStatus">OpsRequestStatus</a>) 7930 </p> 7931 <div> 7932 </div> 7933 <table> 7934 <thead> 7935 <tr> 7936 <th>Field</th> 7937 <th>Description</th> 7938 </tr> 7939 </thead> 7940 <tbody> 7941 <tr> 7942 <td> 7943 <code>configurationStatus</code><br/> 7944 <em> 7945 <a href="#apps.kubeblocks.io/v1alpha1.ConfigurationStatus"> 7946 []ConfigurationStatus 7947 </a> 7948 </em> 7949 </td> 7950 <td> 7951 <p>configurationStatus describes the status of the component reconfiguring.</p><br /> 7952 </td> 7953 </tr> 7954 </tbody> 7955 </table> 7956 <h3 id="apps.kubeblocks.io/v1alpha1.RefNamespaceName">RefNamespaceName 7957 </h3> 7958 <p> 7959 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupRefSpec">BackupRefSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.PointInTimeRefSpec">PointInTimeRefSpec</a>) 7960 </p> 7961 <div> 7962 </div> 7963 <table> 7964 <thead> 7965 <tr> 7966 <th>Field</th> 7967 <th>Description</th> 7968 </tr> 7969 </thead> 7970 <tbody> 7971 <tr> 7972 <td> 7973 <code>name</code><br/> 7974 <em> 7975 string 7976 </em> 7977 </td> 7978 <td> 7979 <em>(Optional)</em> 7980 <p>specified the name</p><br /> 7981 </td> 7982 </tr> 7983 <tr> 7984 <td> 7985 <code>namespace</code><br/> 7986 <em> 7987 string 7988 </em> 7989 </td> 7990 <td> 7991 <em>(Optional)</em> 7992 <p>specified the namespace</p><br /> 7993 </td> 7994 </tr> 7995 </tbody> 7996 </table> 7997 <h3 id="apps.kubeblocks.io/v1alpha1.ReloadOptions">ReloadOptions 7998 </h3> 7999 <p> 8000 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec</a>) 8001 </p> 8002 <div> 8003 <p>ReloadOptions defines reload options<br />Only one of its members may be specified.</p><br /> 8004 </div> 8005 <table> 8006 <thead> 8007 <tr> 8008 <th>Field</th> 8009 <th>Description</th> 8010 </tr> 8011 </thead> 8012 <tbody> 8013 <tr> 8014 <td> 8015 <code>unixSignalTrigger</code><br/> 8016 <em> 8017 <a href="#apps.kubeblocks.io/v1alpha1.UnixSignalTrigger"> 8018 UnixSignalTrigger 8019 </a> 8020 </em> 8021 </td> 8022 <td> 8023 <em>(Optional)</em> 8024 <p>unixSignalTrigger used to reload by sending a signal.</p><br /> 8025 </td> 8026 </tr> 8027 <tr> 8028 <td> 8029 <code>shellTrigger</code><br/> 8030 <em> 8031 <a href="#apps.kubeblocks.io/v1alpha1.ShellTrigger"> 8032 ShellTrigger 8033 </a> 8034 </em> 8035 </td> 8036 <td> 8037 <em>(Optional)</em> 8038 <p>shellTrigger performs the reload command.</p><br /> 8039 </td> 8040 </tr> 8041 <tr> 8042 <td> 8043 <code>tplScriptTrigger</code><br/> 8044 <em> 8045 <a href="#apps.kubeblocks.io/v1alpha1.TPLScriptTrigger"> 8046 TPLScriptTrigger 8047 </a> 8048 </em> 8049 </td> 8050 <td> 8051 <em>(Optional)</em> 8052 <p>goTplTrigger performs the reload command.</p><br /> 8053 </td> 8054 </tr> 8055 </tbody> 8056 </table> 8057 <h3 id="apps.kubeblocks.io/v1alpha1.ReplicationMemberStatus">ReplicationMemberStatus 8058 </h3> 8059 <p> 8060 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ReplicationSetStatus">ReplicationSetStatus</a>) 8061 </p> 8062 <div> 8063 </div> 8064 <table> 8065 <thead> 8066 <tr> 8067 <th>Field</th> 8068 <th>Description</th> 8069 </tr> 8070 </thead> 8071 <tbody> 8072 <tr> 8073 <td> 8074 <code>pod</code><br/> 8075 <em> 8076 string 8077 </em> 8078 </td> 8079 <td> 8080 <p>Pod name.</p><br /> 8081 </td> 8082 </tr> 8083 </tbody> 8084 </table> 8085 <h3 id="apps.kubeblocks.io/v1alpha1.ReplicationSetSpec">ReplicationSetSpec 8086 </h3> 8087 <p> 8088 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 8089 </p> 8090 <div> 8091 </div> 8092 <table> 8093 <thead> 8094 <tr> 8095 <th>Field</th> 8096 <th>Description</th> 8097 </tr> 8098 </thead> 8099 <tbody> 8100 <tr> 8101 <td> 8102 <code>StatefulSetSpec</code><br/> 8103 <em> 8104 <a href="#apps.kubeblocks.io/v1alpha1.StatefulSetSpec"> 8105 StatefulSetSpec 8106 </a> 8107 </em> 8108 </td> 8109 <td> 8110 <p> 8111 (Members of <code>StatefulSetSpec</code> are embedded into this type.) 8112 </p> 8113 </td> 8114 </tr> 8115 </tbody> 8116 </table> 8117 <h3 id="apps.kubeblocks.io/v1alpha1.ReplicationSetStatus">ReplicationSetStatus 8118 </h3> 8119 <p> 8120 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentStatus">ClusterComponentStatus</a>) 8121 </p> 8122 <div> 8123 </div> 8124 <table> 8125 <thead> 8126 <tr> 8127 <th>Field</th> 8128 <th>Description</th> 8129 </tr> 8130 </thead> 8131 <tbody> 8132 <tr> 8133 <td> 8134 <code>primary</code><br/> 8135 <em> 8136 <a href="#apps.kubeblocks.io/v1alpha1.ReplicationMemberStatus"> 8137 ReplicationMemberStatus 8138 </a> 8139 </em> 8140 </td> 8141 <td> 8142 <p>Primary status.</p><br /> 8143 </td> 8144 </tr> 8145 <tr> 8146 <td> 8147 <code>secondaries</code><br/> 8148 <em> 8149 <a href="#apps.kubeblocks.io/v1alpha1.ReplicationMemberStatus"> 8150 []ReplicationMemberStatus 8151 </a> 8152 </em> 8153 </td> 8154 <td> 8155 <em>(Optional)</em> 8156 <p>Secondaries status.</p><br /> 8157 </td> 8158 </tr> 8159 </tbody> 8160 </table> 8161 <h3 id="apps.kubeblocks.io/v1alpha1.ResourceConstraintRule">ResourceConstraintRule 8162 </h3> 8163 <p> 8164 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ComponentResourceConstraintSpec">ComponentResourceConstraintSpec</a>) 8165 </p> 8166 <div> 8167 </div> 8168 <table> 8169 <thead> 8170 <tr> 8171 <th>Field</th> 8172 <th>Description</th> 8173 </tr> 8174 </thead> 8175 <tbody> 8176 <tr> 8177 <td> 8178 <code>name</code><br/> 8179 <em> 8180 string 8181 </em> 8182 </td> 8183 <td> 8184 <p>The name of the constraint.</p><br /> 8185 </td> 8186 </tr> 8187 <tr> 8188 <td> 8189 <code>cpu</code><br/> 8190 <em> 8191 <a href="#apps.kubeblocks.io/v1alpha1.CPUConstraint"> 8192 CPUConstraint 8193 </a> 8194 </em> 8195 </td> 8196 <td> 8197 <p>The constraint for vcpu cores.</p><br /> 8198 </td> 8199 </tr> 8200 <tr> 8201 <td> 8202 <code>memory</code><br/> 8203 <em> 8204 <a href="#apps.kubeblocks.io/v1alpha1.MemoryConstraint"> 8205 MemoryConstraint 8206 </a> 8207 </em> 8208 </td> 8209 <td> 8210 <p>The constraint for memory size.</p><br /> 8211 </td> 8212 </tr> 8213 <tr> 8214 <td> 8215 <code>storage</code><br/> 8216 <em> 8217 <a href="#apps.kubeblocks.io/v1alpha1.StorageConstraint"> 8218 StorageConstraint 8219 </a> 8220 </em> 8221 </td> 8222 <td> 8223 <em>(Optional)</em> 8224 <p>The constraint for storage size.</p><br /> 8225 </td> 8226 </tr> 8227 </tbody> 8228 </table> 8229 <h3 id="apps.kubeblocks.io/v1alpha1.RestoreFromSpec">RestoreFromSpec 8230 </h3> 8231 <p> 8232 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 8233 </p> 8234 <div> 8235 </div> 8236 <table> 8237 <thead> 8238 <tr> 8239 <th>Field</th> 8240 <th>Description</th> 8241 </tr> 8242 </thead> 8243 <tbody> 8244 <tr> 8245 <td> 8246 <code>backup</code><br/> 8247 <em> 8248 <a href="#apps.kubeblocks.io/v1alpha1.BackupRefSpec"> 8249 []BackupRefSpec 8250 </a> 8251 </em> 8252 </td> 8253 <td> 8254 <em>(Optional)</em> 8255 <p>use the backup name and component name for restore, support for multiple components’ recovery.</p><br /> 8256 </td> 8257 </tr> 8258 <tr> 8259 <td> 8260 <code>pointInTime</code><br/> 8261 <em> 8262 <a href="#apps.kubeblocks.io/v1alpha1.PointInTimeRefSpec"> 8263 PointInTimeRefSpec 8264 </a> 8265 </em> 8266 </td> 8267 <td> 8268 <em>(Optional)</em> 8269 <p>specified the point in time to recovery</p><br /> 8270 </td> 8271 </tr> 8272 </tbody> 8273 </table> 8274 <h3 id="apps.kubeblocks.io/v1alpha1.RetentionSpec">RetentionSpec 8275 </h3> 8276 <p> 8277 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicy">BackupPolicy</a>) 8278 </p> 8279 <div> 8280 </div> 8281 <table> 8282 <thead> 8283 <tr> 8284 <th>Field</th> 8285 <th>Description</th> 8286 </tr> 8287 </thead> 8288 <tbody> 8289 <tr> 8290 <td> 8291 <code>ttl</code><br/> 8292 <em> 8293 string 8294 </em> 8295 </td> 8296 <td> 8297 <em>(Optional)</em> 8298 <p>ttl is a time string ending with the ’d’|’D’|‘h’|‘H’ character to describe how long<br />the Backup should be retained. if not set, will be retained forever.</p><br /> 8299 </td> 8300 </tr> 8301 </tbody> 8302 </table> 8303 <h3 id="apps.kubeblocks.io/v1alpha1.Schedule">Schedule 8304 </h3> 8305 <p> 8306 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicy">BackupPolicy</a>) 8307 </p> 8308 <div> 8309 </div> 8310 <table> 8311 <thead> 8312 <tr> 8313 <th>Field</th> 8314 <th>Description</th> 8315 </tr> 8316 </thead> 8317 <tbody> 8318 <tr> 8319 <td> 8320 <code>startingDeadlineMinutes</code><br/> 8321 <em> 8322 int64 8323 </em> 8324 </td> 8325 <td> 8326 <em>(Optional)</em> 8327 <p>startingDeadlineMinutes defines the deadline in minutes for starting the backup job<br />if it misses scheduled time for any reason.</p><br /> 8328 </td> 8329 </tr> 8330 <tr> 8331 <td> 8332 <code>snapshot</code><br/> 8333 <em> 8334 <a href="#apps.kubeblocks.io/v1alpha1.SchedulePolicy"> 8335 SchedulePolicy 8336 </a> 8337 </em> 8338 </td> 8339 <td> 8340 <em>(Optional)</em> 8341 <p>schedule policy for snapshot backup.</p><br /> 8342 </td> 8343 </tr> 8344 <tr> 8345 <td> 8346 <code>datafile</code><br/> 8347 <em> 8348 <a href="#apps.kubeblocks.io/v1alpha1.SchedulePolicy"> 8349 SchedulePolicy 8350 </a> 8351 </em> 8352 </td> 8353 <td> 8354 <em>(Optional)</em> 8355 <p>schedule policy for datafile backup.</p><br /> 8356 </td> 8357 </tr> 8358 <tr> 8359 <td> 8360 <code>logfile</code><br/> 8361 <em> 8362 <a href="#apps.kubeblocks.io/v1alpha1.SchedulePolicy"> 8363 SchedulePolicy 8364 </a> 8365 </em> 8366 </td> 8367 <td> 8368 <em>(Optional)</em> 8369 <p>schedule policy for logfile backup.</p><br /> 8370 </td> 8371 </tr> 8372 </tbody> 8373 </table> 8374 <h3 id="apps.kubeblocks.io/v1alpha1.SchedulePolicy">SchedulePolicy 8375 </h3> 8376 <p> 8377 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Schedule">Schedule</a>) 8378 </p> 8379 <div> 8380 </div> 8381 <table> 8382 <thead> 8383 <tr> 8384 <th>Field</th> 8385 <th>Description</th> 8386 </tr> 8387 </thead> 8388 <tbody> 8389 <tr> 8390 <td> 8391 <code>cronExpression</code><br/> 8392 <em> 8393 string 8394 </em> 8395 </td> 8396 <td> 8397 <p>the cron expression for schedule, the timezone is in UTC. see <a href="https://en.wikipedia.org/wiki/Cron">https://en.wikipedia.org/wiki/Cron</a>.</p><br /> 8398 </td> 8399 </tr> 8400 <tr> 8401 <td> 8402 <code>enable</code><br/> 8403 <em> 8404 bool 8405 </em> 8406 </td> 8407 <td> 8408 <p>enable or disable the schedule.</p><br /> 8409 </td> 8410 </tr> 8411 </tbody> 8412 </table> 8413 <h3 id="apps.kubeblocks.io/v1alpha1.ScriptConfig">ScriptConfig 8414 </h3> 8415 <p> 8416 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.TPLScriptTrigger">TPLScriptTrigger</a>) 8417 </p> 8418 <div> 8419 </div> 8420 <table> 8421 <thead> 8422 <tr> 8423 <th>Field</th> 8424 <th>Description</th> 8425 </tr> 8426 </thead> 8427 <tbody> 8428 <tr> 8429 <td> 8430 <code>scriptConfigMapRef</code><br/> 8431 <em> 8432 string 8433 </em> 8434 </td> 8435 <td> 8436 <p>scriptConfigMapRef used to execute for reload.</p><br /> 8437 </td> 8438 </tr> 8439 <tr> 8440 <td> 8441 <code>namespace</code><br/> 8442 <em> 8443 string 8444 </em> 8445 </td> 8446 <td> 8447 <em>(Optional)</em> 8448 <p>Specify the namespace of the referenced the tpl script ConfigMap object.<br />An empty namespace is equivalent to the “default” namespace.</p><br /> 8449 </td> 8450 </tr> 8451 </tbody> 8452 </table> 8453 <h3 id="apps.kubeblocks.io/v1alpha1.ScriptFrom">ScriptFrom 8454 </h3> 8455 <p> 8456 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ScriptSpec">ScriptSpec</a>) 8457 </p> 8458 <div> 8459 <p>ScriptFrom defines the script to be executed from configMap or secret.</p><br /> 8460 </div> 8461 <table> 8462 <thead> 8463 <tr> 8464 <th>Field</th> 8465 <th>Description</th> 8466 </tr> 8467 </thead> 8468 <tbody> 8469 <tr> 8470 <td> 8471 <code>configMapRef</code><br/> 8472 <em> 8473 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#configmapkeyselector-v1-core"> 8474 []Kubernetes core/v1.ConfigMapKeySelector 8475 </a> 8476 </em> 8477 </td> 8478 <td> 8479 <em>(Optional)</em> 8480 <p>configMapRef defines the configMap to be executed.</p><br /> 8481 </td> 8482 </tr> 8483 <tr> 8484 <td> 8485 <code>secretRef</code><br/> 8486 <em> 8487 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#secretkeyselector-v1-core"> 8488 []Kubernetes core/v1.SecretKeySelector 8489 </a> 8490 </em> 8491 </td> 8492 <td> 8493 <em>(Optional)</em> 8494 <p>secretRef defines the secret to be executed.</p><br /> 8495 </td> 8496 </tr> 8497 </tbody> 8498 </table> 8499 <h3 id="apps.kubeblocks.io/v1alpha1.ScriptSecret">ScriptSecret 8500 </h3> 8501 <p> 8502 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ScriptSpec">ScriptSpec</a>) 8503 </p> 8504 <div> 8505 <p>ScriptSecret defines the secret to be used to execute the script.</p><br /> 8506 </div> 8507 <table> 8508 <thead> 8509 <tr> 8510 <th>Field</th> 8511 <th>Description</th> 8512 </tr> 8513 </thead> 8514 <tbody> 8515 <tr> 8516 <td> 8517 <code>name</code><br/> 8518 <em> 8519 string 8520 </em> 8521 </td> 8522 <td> 8523 <p>name is the name of the secret.</p><br /> 8524 </td> 8525 </tr> 8526 <tr> 8527 <td> 8528 <code>usernameKey</code><br/> 8529 <em> 8530 string 8531 </em> 8532 </td> 8533 <td> 8534 <em>(Optional)</em> 8535 <p>usernameKey field is used to specify the username of the secret.</p><br /> 8536 </td> 8537 </tr> 8538 <tr> 8539 <td> 8540 <code>passwordKey</code><br/> 8541 <em> 8542 string 8543 </em> 8544 </td> 8545 <td> 8546 <em>(Optional)</em> 8547 <p>passwordKey field is used to specify the password of the secret.</p><br /> 8548 </td> 8549 </tr> 8550 </tbody> 8551 </table> 8552 <h3 id="apps.kubeblocks.io/v1alpha1.ScriptSpec">ScriptSpec 8553 </h3> 8554 <p> 8555 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 8556 </p> 8557 <div> 8558 <p>ScriptSpec defines the script to be executed. It is not a general purpose script executor.<br />It is designed to execute the script to perform some specific operations, such as create database, create user, etc.<br />It is applicable for engines, such as MySQL, PostgreSQL, Redis, MongoDB, etc.</p><br /> 8559 </div> 8560 <table> 8561 <thead> 8562 <tr> 8563 <th>Field</th> 8564 <th>Description</th> 8565 </tr> 8566 </thead> 8567 <tbody> 8568 <tr> 8569 <td> 8570 <code>ComponentOps</code><br/> 8571 <em> 8572 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 8573 ComponentOps 8574 </a> 8575 </em> 8576 </td> 8577 <td> 8578 <p> 8579 (Members of <code>ComponentOps</code> are embedded into this type.) 8580 </p> 8581 </td> 8582 </tr> 8583 <tr> 8584 <td> 8585 <code>image</code><br/> 8586 <em> 8587 string 8588 </em> 8589 </td> 8590 <td> 8591 <em>(Optional)</em> 8592 <p>exec command with image, by default use the image of kubeblocks-datascript.</p><br /> 8593 </td> 8594 </tr> 8595 <tr> 8596 <td> 8597 <code>secret</code><br/> 8598 <em> 8599 <a href="#apps.kubeblocks.io/v1alpha1.ScriptSecret"> 8600 ScriptSecret 8601 </a> 8602 </em> 8603 </td> 8604 <td> 8605 <em>(Optional)</em> 8606 <p>secret defines the secret to be used to execute the script.<br />If not specified, the default cluster root credential secret will be used.</p><br /> 8607 </td> 8608 </tr> 8609 <tr> 8610 <td> 8611 <code>script</code><br/> 8612 <em> 8613 []string 8614 </em> 8615 </td> 8616 <td> 8617 <em>(Optional)</em> 8618 <p>script defines the script to be executed.</p><br /> 8619 </td> 8620 </tr> 8621 <tr> 8622 <td> 8623 <code>scriptFrom</code><br/> 8624 <em> 8625 <a href="#apps.kubeblocks.io/v1alpha1.ScriptFrom"> 8626 ScriptFrom 8627 </a> 8628 </em> 8629 </td> 8630 <td> 8631 <em>(Optional)</em> 8632 <p>scriptFrom defines the script to be executed from configMap or secret.</p><br /> 8633 </td> 8634 </tr> 8635 </tbody> 8636 </table> 8637 <h3 id="apps.kubeblocks.io/v1alpha1.ScriptSpecSelector">ScriptSpecSelector 8638 </h3> 8639 <p> 8640 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SwitchoverAction">SwitchoverAction</a>) 8641 </p> 8642 <div> 8643 </div> 8644 <table> 8645 <thead> 8646 <tr> 8647 <th>Field</th> 8648 <th>Description</th> 8649 </tr> 8650 </thead> 8651 <tbody> 8652 <tr> 8653 <td> 8654 <code>name</code><br/> 8655 <em> 8656 string 8657 </em> 8658 </td> 8659 <td> 8660 <p>ScriptSpec name of the referent, refer to componentDefs[x].scriptSpecs[y].Name.</p><br /> 8661 </td> 8662 </tr> 8663 </tbody> 8664 </table> 8665 <h3 id="apps.kubeblocks.io/v1alpha1.ServicePort">ServicePort 8666 </h3> 8667 <p> 8668 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ServiceSpec">ServiceSpec</a>) 8669 </p> 8670 <div> 8671 </div> 8672 <table> 8673 <thead> 8674 <tr> 8675 <th>Field</th> 8676 <th>Description</th> 8677 </tr> 8678 </thead> 8679 <tbody> 8680 <tr> 8681 <td> 8682 <code>name</code><br/> 8683 <em> 8684 string 8685 </em> 8686 </td> 8687 <td> 8688 <p>The name of this port within the service. This must be a DNS_LABEL.<br />All ports within a ServiceSpec must have unique names. When considering<br />the endpoints for a Service, this must match the ‘name’ field in the<br />EndpointPort.</p><br /> 8689 </td> 8690 </tr> 8691 <tr> 8692 <td> 8693 <code>protocol</code><br/> 8694 <em> 8695 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#protocol-v1-core"> 8696 Kubernetes core/v1.Protocol 8697 </a> 8698 </em> 8699 </td> 8700 <td> 8701 <em>(Optional)</em> 8702 <p>The IP protocol for this port. Supports “TCP”, “UDP”, and “SCTP”.<br />Default is TCP.</p><br /> 8703 </td> 8704 </tr> 8705 <tr> 8706 <td> 8707 <code>appProtocol</code><br/> 8708 <em> 8709 string 8710 </em> 8711 </td> 8712 <td> 8713 <em>(Optional)</em> 8714 <p>The application protocol for this port.<br />This field follows standard Kubernetes label syntax.<br />Un-prefixed names are reserved for IANA standard service names (as per<br />RFC-6335 and <a href="https://www.iana.org/assignments/service-names)">https://www.iana.org/assignments/service-names)</a>.<br />Non-standard protocols should use prefixed names such as<br />mycompany.com/my-custom-protocol.</p><br /> 8715 </td> 8716 </tr> 8717 <tr> 8718 <td> 8719 <code>port</code><br/> 8720 <em> 8721 int32 8722 </em> 8723 </td> 8724 <td> 8725 <p>The port that will be exposed by this service.</p><br /> 8726 </td> 8727 </tr> 8728 <tr> 8729 <td> 8730 <code>targetPort</code><br/> 8731 <em> 8732 <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> 8733 Kubernetes api utils intstr.IntOrString 8734 </a> 8735 </em> 8736 </td> 8737 <td> 8738 <em>(Optional)</em> 8739 <p>Number or name of the port to access on the pods targeted by the service.<br />Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.<br />If this is a string, it will be looked up as a named port in the<br />target Pod’s container ports. If this is not specified, the value<br />of the ‘port’ field is used (an identity map).<br />This field is ignored for services with clusterIP=None, and should be<br />omitted or set equal to the ‘port’ field.<br />More info: <a href="https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service">https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service</a></p><br /> 8740 </td> 8741 </tr> 8742 </tbody> 8743 </table> 8744 <h3 id="apps.kubeblocks.io/v1alpha1.ServiceSpec">ServiceSpec 8745 </h3> 8746 <p> 8747 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 8748 </p> 8749 <div> 8750 </div> 8751 <table> 8752 <thead> 8753 <tr> 8754 <th>Field</th> 8755 <th>Description</th> 8756 </tr> 8757 </thead> 8758 <tbody> 8759 <tr> 8760 <td> 8761 <code>ports</code><br/> 8762 <em> 8763 <a href="#apps.kubeblocks.io/v1alpha1.ServicePort"> 8764 []ServicePort 8765 </a> 8766 </em> 8767 </td> 8768 <td> 8769 <em>(Optional)</em> 8770 <p>The list of ports that are exposed by this service.<br />More info: <a href="https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies">https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies</a></p><br /> 8771 </td> 8772 </tr> 8773 </tbody> 8774 </table> 8775 <h3 id="apps.kubeblocks.io/v1alpha1.ShellTrigger">ShellTrigger 8776 </h3> 8777 <p> 8778 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ReloadOptions">ReloadOptions</a>) 8779 </p> 8780 <div> 8781 </div> 8782 <table> 8783 <thead> 8784 <tr> 8785 <th>Field</th> 8786 <th>Description</th> 8787 </tr> 8788 </thead> 8789 <tbody> 8790 <tr> 8791 <td> 8792 <code>command</code><br/> 8793 <em> 8794 []string 8795 </em> 8796 </td> 8797 <td> 8798 <p>command used to execute for reload.</p><br /> 8799 </td> 8800 </tr> 8801 <tr> 8802 <td> 8803 <code>sync</code><br/> 8804 <em> 8805 bool 8806 </em> 8807 </td> 8808 <td> 8809 <em>(Optional)</em> 8810 <p>Specify synchronize updates parameters to the config manager.</p><br /> 8811 </td> 8812 </tr> 8813 </tbody> 8814 </table> 8815 <h3 id="apps.kubeblocks.io/v1alpha1.SignalType">SignalType 8816 (<code>string</code> alias)</h3> 8817 <p> 8818 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.UnixSignalTrigger">UnixSignalTrigger</a>) 8819 </p> 8820 <div> 8821 <p>SignalType defines which signals are valid.</p><br /> 8822 </div> 8823 <table> 8824 <thead> 8825 <tr> 8826 <th>Value</th> 8827 <th>Description</th> 8828 </tr> 8829 </thead> 8830 <tbody><tr><td><p>"SIGABRT"</p></td> 8831 <td></td> 8832 </tr><tr><td><p>"SIGALRM"</p></td> 8833 <td></td> 8834 </tr><tr><td><p>"SIGBUS"</p></td> 8835 <td></td> 8836 </tr><tr><td><p>"SIGCHLD"</p></td> 8837 <td></td> 8838 </tr><tr><td><p>"SIGCONT"</p></td> 8839 <td></td> 8840 </tr><tr><td><p>"SIGFPE"</p></td> 8841 <td></td> 8842 </tr><tr><td><p>"SIGHUP"</p></td> 8843 <td></td> 8844 </tr><tr><td><p>"SIGILL"</p></td> 8845 <td></td> 8846 </tr><tr><td><p>"SIGINT"</p></td> 8847 <td></td> 8848 </tr><tr><td><p>"SIGIO"</p></td> 8849 <td></td> 8850 </tr><tr><td><p>"SIGKILL"</p></td> 8851 <td></td> 8852 </tr><tr><td><p>"SIGPIPE"</p></td> 8853 <td></td> 8854 </tr><tr><td><p>"SIGPROF"</p></td> 8855 <td></td> 8856 </tr><tr><td><p>"SIGPWR"</p></td> 8857 <td></td> 8858 </tr><tr><td><p>"SIGQUIT"</p></td> 8859 <td></td> 8860 </tr><tr><td><p>"SIGSEGV"</p></td> 8861 <td></td> 8862 </tr><tr><td><p>"SIGSTKFLT"</p></td> 8863 <td></td> 8864 </tr><tr><td><p>"SIGSTOP"</p></td> 8865 <td></td> 8866 </tr><tr><td><p>"SIGSYS"</p></td> 8867 <td></td> 8868 </tr><tr><td><p>"SIGTERM"</p></td> 8869 <td></td> 8870 </tr><tr><td><p>"SIGTRAP"</p></td> 8871 <td></td> 8872 </tr><tr><td><p>"SIGTSTP"</p></td> 8873 <td></td> 8874 </tr><tr><td><p>"SIGTTIN"</p></td> 8875 <td></td> 8876 </tr><tr><td><p>"SIGTTOU"</p></td> 8877 <td></td> 8878 </tr><tr><td><p>"SIGURG"</p></td> 8879 <td></td> 8880 </tr><tr><td><p>"SIGUSR1"</p></td> 8881 <td></td> 8882 </tr><tr><td><p>"SIGUSR2"</p></td> 8883 <td></td> 8884 </tr><tr><td><p>"SIGVTALRM"</p></td> 8885 <td></td> 8886 </tr><tr><td><p>"SIGWINCH"</p></td> 8887 <td></td> 8888 </tr><tr><td><p>"SIGXCPU"</p></td> 8889 <td></td> 8890 </tr><tr><td><p>"SIGXFSZ"</p></td> 8891 <td></td> 8892 </tr></tbody> 8893 </table> 8894 <h3 id="apps.kubeblocks.io/v1alpha1.SnapshotPolicy">SnapshotPolicy 8895 </h3> 8896 <p> 8897 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BackupPolicy">BackupPolicy</a>) 8898 </p> 8899 <div> 8900 </div> 8901 <table> 8902 <thead> 8903 <tr> 8904 <th>Field</th> 8905 <th>Description</th> 8906 </tr> 8907 </thead> 8908 <tbody> 8909 <tr> 8910 <td> 8911 <code>BasePolicy</code><br/> 8912 <em> 8913 <a href="#apps.kubeblocks.io/v1alpha1.BasePolicy"> 8914 BasePolicy 8915 </a> 8916 </em> 8917 </td> 8918 <td> 8919 <p> 8920 (Members of <code>BasePolicy</code> are embedded into this type.) 8921 </p> 8922 </td> 8923 </tr> 8924 <tr> 8925 <td> 8926 <code>hooks</code><br/> 8927 <em> 8928 <a href="#apps.kubeblocks.io/v1alpha1.BackupPolicyHook"> 8929 BackupPolicyHook 8930 </a> 8931 </em> 8932 </td> 8933 <td> 8934 <em>(Optional)</em> 8935 <p>execute hook commands for backup.</p><br /> 8936 </td> 8937 </tr> 8938 </tbody> 8939 </table> 8940 <h3 id="apps.kubeblocks.io/v1alpha1.StatefulSetSpec">StatefulSetSpec 8941 </h3> 8942 <p> 8943 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>, <a href="#apps.kubeblocks.io/v1alpha1.ConsensusSetSpec">ConsensusSetSpec</a>, <a href="#apps.kubeblocks.io/v1alpha1.ReplicationSetSpec">ReplicationSetSpec</a>) 8944 </p> 8945 <div> 8946 </div> 8947 <table> 8948 <thead> 8949 <tr> 8950 <th>Field</th> 8951 <th>Description</th> 8952 </tr> 8953 </thead> 8954 <tbody> 8955 <tr> 8956 <td> 8957 <code>updateStrategy</code><br/> 8958 <em> 8959 <a href="#apps.kubeblocks.io/v1alpha1.UpdateStrategy"> 8960 UpdateStrategy 8961 </a> 8962 </em> 8963 </td> 8964 <td> 8965 <em>(Optional)</em> 8966 <p>updateStrategy, Pods update strategy.<br />In case of workloadType=Consensus the update strategy will be following:</p><br /><br /><p>serial: update Pods one by one that guarantee minimum component unavailable time.<br /> Learner -> Follower(with AccessMode=none) -> Follower(with AccessMode=readonly) -> Follower(with AccessMode=readWrite) -> Leader<br />bestEffortParallel: update Pods in parallel that guarantee minimum component un-writable time.<br /> Learner, Follower(minority) in parallel -> Follower(majority) -> Leader, keep majority online all the time.<br />parallel: force parallel</p><br /> 8967 </td> 8968 </tr> 8969 <tr> 8970 <td> 8971 <code>llPodManagementPolicy</code><br/> 8972 <em> 8973 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#podmanagementpolicytype-v1-apps"> 8974 Kubernetes apps/v1.PodManagementPolicyType 8975 </a> 8976 </em> 8977 </td> 8978 <td> 8979 <em>(Optional)</em> 8980 <p>llPodManagementPolicy is the low-level controls how pods are created during initial scale up,<br />when replacing pods on nodes, or when scaling down.<br /><code>OrderedReady</code> policy specify where pods are created in increasing order (pod-0, then<br />pod-1, etc) and the controller will wait until each pod is ready before<br />continuing. When scaling down, the pods are removed in the opposite order.<br /><code>Parallel</code> policy specify create pods in parallel<br />to match the desired scale without waiting, and on scale down will delete<br />all pods at once.</p><br /> 8981 </td> 8982 </tr> 8983 <tr> 8984 <td> 8985 <code>llUpdateStrategy</code><br/> 8986 <em> 8987 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#statefulsetupdatestrategy-v1-apps"> 8988 Kubernetes apps/v1.StatefulSetUpdateStrategy 8989 </a> 8990 </em> 8991 </td> 8992 <td> 8993 <em>(Optional)</em> 8994 <p>llUpdateStrategy indicates the low-level StatefulSetUpdateStrategy that will be<br />employed to update Pods in the StatefulSet when a revision is made to<br />Template. Will ignore <code>updateStrategy</code> attribute if provided.</p><br /> 8995 </td> 8996 </tr> 8997 </tbody> 8998 </table> 8999 <h3 id="apps.kubeblocks.io/v1alpha1.StatefulSetWorkload">StatefulSetWorkload 9000 </h3> 9001 <div> 9002 <p>StatefulSetWorkload interface</p><br /> 9003 </div> 9004 <h3 id="apps.kubeblocks.io/v1alpha1.StatelessSetSpec">StatelessSetSpec 9005 </h3> 9006 <p> 9007 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 9008 </p> 9009 <div> 9010 </div> 9011 <table> 9012 <thead> 9013 <tr> 9014 <th>Field</th> 9015 <th>Description</th> 9016 </tr> 9017 </thead> 9018 <tbody> 9019 <tr> 9020 <td> 9021 <code>updateStrategy</code><br/> 9022 <em> 9023 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#deploymentstrategy-v1-apps"> 9024 Kubernetes apps/v1.DeploymentStrategy 9025 </a> 9026 </em> 9027 </td> 9028 <td> 9029 <em>(Optional)</em> 9030 <p>updateStrategy defines the underlying deployment strategy to use to replace existing pods with new ones.</p><br /> 9031 </td> 9032 </tr> 9033 </tbody> 9034 </table> 9035 <h3 id="apps.kubeblocks.io/v1alpha1.StorageConstraint">StorageConstraint 9036 </h3> 9037 <p> 9038 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ResourceConstraintRule">ResourceConstraintRule</a>) 9039 </p> 9040 <div> 9041 </div> 9042 <table> 9043 <thead> 9044 <tr> 9045 <th>Field</th> 9046 <th>Description</th> 9047 </tr> 9048 </thead> 9049 <tbody> 9050 <tr> 9051 <td> 9052 <code>min</code><br/> 9053 <em> 9054 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 9055 Kubernetes resource.Quantity 9056 </a> 9057 </em> 9058 </td> 9059 <td> 9060 <em>(Optional)</em> 9061 <p>The minimum size of storage.</p><br /> 9062 </td> 9063 </tr> 9064 <tr> 9065 <td> 9066 <code>max</code><br/> 9067 <em> 9068 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#quantity-resource-core"> 9069 Kubernetes resource.Quantity 9070 </a> 9071 </em> 9072 </td> 9073 <td> 9074 <em>(Optional)</em> 9075 <p>The maximum size of storage.</p><br /> 9076 </td> 9077 </tr> 9078 </tbody> 9079 </table> 9080 <h3 id="apps.kubeblocks.io/v1alpha1.SwitchPolicyType">SwitchPolicyType 9081 (<code>string</code> alias)</h3> 9082 <p> 9083 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSwitchPolicy">ClusterSwitchPolicy</a>) 9084 </p> 9085 <div> 9086 <p>SwitchPolicyType defines switchPolicy type.<br />Currently, only Noop is supported. MaximumAvailability and MaximumDataProtection will be supported in the future.</p><br /> 9087 </div> 9088 <table> 9089 <thead> 9090 <tr> 9091 <th>Value</th> 9092 <th>Description</th> 9093 </tr> 9094 </thead> 9095 <tbody><tr><td><p>"MaximumAvailability"</p></td> 9096 <td></td> 9097 </tr><tr><td><p>"MaximumDataProtection"</p></td> 9098 <td></td> 9099 </tr><tr><td><p>"Noop"</p></td> 9100 <td></td> 9101 </tr></tbody> 9102 </table> 9103 <h3 id="apps.kubeblocks.io/v1alpha1.SwitchStepRole">SwitchStepRole 9104 (<code>string</code> alias)</h3> 9105 <div> 9106 <p>SwitchStepRole defines the role to execute the switch command.</p><br /> 9107 </div> 9108 <table> 9109 <thead> 9110 <tr> 9111 <th>Value</th> 9112 <th>Description</th> 9113 </tr> 9114 </thead> 9115 <tbody><tr><td><p>"NewPrimary"</p></td> 9116 <td></td> 9117 </tr><tr><td><p>"OldPrimary"</p></td> 9118 <td></td> 9119 </tr><tr><td><p>"Secondaries"</p></td> 9120 <td></td> 9121 </tr></tbody> 9122 </table> 9123 <h3 id="apps.kubeblocks.io/v1alpha1.Switchover">Switchover 9124 </h3> 9125 <p> 9126 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 9127 </p> 9128 <div> 9129 </div> 9130 <table> 9131 <thead> 9132 <tr> 9133 <th>Field</th> 9134 <th>Description</th> 9135 </tr> 9136 </thead> 9137 <tbody> 9138 <tr> 9139 <td> 9140 <code>ComponentOps</code><br/> 9141 <em> 9142 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 9143 ComponentOps 9144 </a> 9145 </em> 9146 </td> 9147 <td> 9148 <p> 9149 (Members of <code>ComponentOps</code> are embedded into this type.) 9150 </p> 9151 </td> 9152 </tr> 9153 <tr> 9154 <td> 9155 <code>instanceName</code><br/> 9156 <em> 9157 string 9158 </em> 9159 </td> 9160 <td> 9161 <p>instanceName is used to specify the candidate primary or leader instanceName for switchover.<br />If instanceName is set to “<em>”, it means that no specific primary or leader is specified for the switchover,<br />and the switchoverAction defined in clusterDefinition.componentDefs[x].switchoverSpec.withoutCandidate will be executed,<br />It is required that clusterDefinition.componentDefs[x].switchoverSpec.withoutCandidate is not empty.<br />If instanceName is set to a valid instanceName other than “</em>”, it means that a specific candidate primary or leader is specified for the switchover.<br />the value of instanceName can be obtained using <code>kbcli cluster list-instances</code>, any other value is invalid.<br />In this case, the <code>switchoverAction</code> defined in clusterDefinition.componentDefs[x].switchoverSpec.withCandidate will be executed,<br />and it is required that clusterDefinition.componentDefs[x].switchoverSpec.withCandidate is not empty.</p><br /> 9162 </td> 9163 </tr> 9164 </tbody> 9165 </table> 9166 <h3 id="apps.kubeblocks.io/v1alpha1.SwitchoverAction">SwitchoverAction 9167 </h3> 9168 <p> 9169 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SwitchoverSpec">SwitchoverSpec</a>) 9170 </p> 9171 <div> 9172 </div> 9173 <table> 9174 <thead> 9175 <tr> 9176 <th>Field</th> 9177 <th>Description</th> 9178 </tr> 9179 </thead> 9180 <tbody> 9181 <tr> 9182 <td> 9183 <code>cmdExecutorConfig</code><br/> 9184 <em> 9185 <a href="#apps.kubeblocks.io/v1alpha1.CmdExecutorConfig"> 9186 CmdExecutorConfig 9187 </a> 9188 </em> 9189 </td> 9190 <td> 9191 <p>cmdExecutorConfig is the executor configuration of the switchover command.</p><br /> 9192 </td> 9193 </tr> 9194 <tr> 9195 <td> 9196 <code>scriptSpecSelectors</code><br/> 9197 <em> 9198 <a href="#apps.kubeblocks.io/v1alpha1.ScriptSpecSelector"> 9199 []ScriptSpecSelector 9200 </a> 9201 </em> 9202 </td> 9203 <td> 9204 <em>(Optional)</em> 9205 <p>scriptSpecSelectors defines the selector of the scriptSpecs that need to be referenced.<br />Once ScriptSpecSelectors is defined, the scripts defined in scriptSpecs can be referenced in the SwitchoverAction.CmdExecutorConfig.</p><br /> 9206 </td> 9207 </tr> 9208 </tbody> 9209 </table> 9210 <h3 id="apps.kubeblocks.io/v1alpha1.SwitchoverShortSpec">SwitchoverShortSpec 9211 </h3> 9212 <p> 9213 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVersion">ClusterComponentVersion</a>) 9214 </p> 9215 <div> 9216 <p>SwitchoverShortSpec is a short version of SwitchoverSpec, with only CommandExecutorEnvItem field.</p><br /> 9217 </div> 9218 <table> 9219 <thead> 9220 <tr> 9221 <th>Field</th> 9222 <th>Description</th> 9223 </tr> 9224 </thead> 9225 <tbody> 9226 <tr> 9227 <td> 9228 <code>cmdExecutorConfig</code><br/> 9229 <em> 9230 <a href="#apps.kubeblocks.io/v1alpha1.CommandExecutorEnvItem"> 9231 CommandExecutorEnvItem 9232 </a> 9233 </em> 9234 </td> 9235 <td> 9236 <p>CmdExecutorConfig is the command executor config.</p><br /> 9237 </td> 9238 </tr> 9239 </tbody> 9240 </table> 9241 <h3 id="apps.kubeblocks.io/v1alpha1.SwitchoverSpec">SwitchoverSpec 9242 </h3> 9243 <p> 9244 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 9245 </p> 9246 <div> 9247 </div> 9248 <table> 9249 <thead> 9250 <tr> 9251 <th>Field</th> 9252 <th>Description</th> 9253 </tr> 9254 </thead> 9255 <tbody> 9256 <tr> 9257 <td> 9258 <code>withCandidate</code><br/> 9259 <em> 9260 <a href="#apps.kubeblocks.io/v1alpha1.SwitchoverAction"> 9261 SwitchoverAction 9262 </a> 9263 </em> 9264 </td> 9265 <td> 9266 <em>(Optional)</em> 9267 <p>withCandidate corresponds to the switchover of the specified candidate primary or leader instance.</p><br /> 9268 </td> 9269 </tr> 9270 <tr> 9271 <td> 9272 <code>withoutCandidate</code><br/> 9273 <em> 9274 <a href="#apps.kubeblocks.io/v1alpha1.SwitchoverAction"> 9275 SwitchoverAction 9276 </a> 9277 </em> 9278 </td> 9279 <td> 9280 <em>(Optional)</em> 9281 <p>withoutCandidate corresponds to a switchover that does not specify a candidate primary or leader instance.</p><br /> 9282 </td> 9283 </tr> 9284 </tbody> 9285 </table> 9286 <h3 id="apps.kubeblocks.io/v1alpha1.SystemAccountConfig">SystemAccountConfig 9287 </h3> 9288 <p> 9289 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.SystemAccountSpec">SystemAccountSpec</a>) 9290 </p> 9291 <div> 9292 <p>SystemAccountConfig specifies how to create and delete system accounts.</p><br /> 9293 </div> 9294 <table> 9295 <thead> 9296 <tr> 9297 <th>Field</th> 9298 <th>Description</th> 9299 </tr> 9300 </thead> 9301 <tbody> 9302 <tr> 9303 <td> 9304 <code>name</code><br/> 9305 <em> 9306 <a href="#apps.kubeblocks.io/v1alpha1.AccountName"> 9307 AccountName 9308 </a> 9309 </em> 9310 </td> 9311 <td> 9312 <p>name is the name of a system account.</p><br /> 9313 </td> 9314 </tr> 9315 <tr> 9316 <td> 9317 <code>provisionPolicy</code><br/> 9318 <em> 9319 <a href="#apps.kubeblocks.io/v1alpha1.ProvisionPolicy"> 9320 ProvisionPolicy 9321 </a> 9322 </em> 9323 </td> 9324 <td> 9325 <p>provisionPolicy defines how to create account.</p><br /> 9326 </td> 9327 </tr> 9328 </tbody> 9329 </table> 9330 <h3 id="apps.kubeblocks.io/v1alpha1.SystemAccountShortSpec">SystemAccountShortSpec 9331 </h3> 9332 <p> 9333 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVersion">ClusterComponentVersion</a>) 9334 </p> 9335 <div> 9336 <p>SystemAccountShortSpec is a short version of SystemAccountSpec, with only CmdExecutorConfig field.</p><br /> 9337 </div> 9338 <table> 9339 <thead> 9340 <tr> 9341 <th>Field</th> 9342 <th>Description</th> 9343 </tr> 9344 </thead> 9345 <tbody> 9346 <tr> 9347 <td> 9348 <code>cmdExecutorConfig</code><br/> 9349 <em> 9350 <a href="#apps.kubeblocks.io/v1alpha1.CommandExecutorEnvItem"> 9351 CommandExecutorEnvItem 9352 </a> 9353 </em> 9354 </td> 9355 <td> 9356 <p>cmdExecutorConfig configs how to get client SDK and perform statements.</p><br /> 9357 </td> 9358 </tr> 9359 </tbody> 9360 </table> 9361 <h3 id="apps.kubeblocks.io/v1alpha1.SystemAccountSpec">SystemAccountSpec 9362 </h3> 9363 <p> 9364 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 9365 </p> 9366 <div> 9367 <p>SystemAccountSpec specifies information to create system accounts.</p><br /> 9368 </div> 9369 <table> 9370 <thead> 9371 <tr> 9372 <th>Field</th> 9373 <th>Description</th> 9374 </tr> 9375 </thead> 9376 <tbody> 9377 <tr> 9378 <td> 9379 <code>cmdExecutorConfig</code><br/> 9380 <em> 9381 <a href="#apps.kubeblocks.io/v1alpha1.CmdExecutorConfig"> 9382 CmdExecutorConfig 9383 </a> 9384 </em> 9385 </td> 9386 <td> 9387 <p>cmdExecutorConfig configs how to get client SDK and perform statements.</p><br /> 9388 </td> 9389 </tr> 9390 <tr> 9391 <td> 9392 <code>passwordConfig</code><br/> 9393 <em> 9394 <a href="#apps.kubeblocks.io/v1alpha1.PasswordConfig"> 9395 PasswordConfig 9396 </a> 9397 </em> 9398 </td> 9399 <td> 9400 <p>passwordConfig defines the pattern to generate password.</p><br /> 9401 </td> 9402 </tr> 9403 <tr> 9404 <td> 9405 <code>accounts</code><br/> 9406 <em> 9407 <a href="#apps.kubeblocks.io/v1alpha1.SystemAccountConfig"> 9408 []SystemAccountConfig 9409 </a> 9410 </em> 9411 </td> 9412 <td> 9413 <p>accounts defines system account config settings.</p><br /> 9414 </td> 9415 </tr> 9416 </tbody> 9417 </table> 9418 <h3 id="apps.kubeblocks.io/v1alpha1.TLSSecretRef">TLSSecretRef 9419 </h3> 9420 <p> 9421 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Issuer">Issuer</a>) 9422 </p> 9423 <div> 9424 <p>TLSSecretRef defines Secret contains Tls certs</p><br /> 9425 </div> 9426 <table> 9427 <thead> 9428 <tr> 9429 <th>Field</th> 9430 <th>Description</th> 9431 </tr> 9432 </thead> 9433 <tbody> 9434 <tr> 9435 <td> 9436 <code>name</code><br/> 9437 <em> 9438 string 9439 </em> 9440 </td> 9441 <td> 9442 <p>Name of the Secret</p><br /> 9443 </td> 9444 </tr> 9445 <tr> 9446 <td> 9447 <code>ca</code><br/> 9448 <em> 9449 string 9450 </em> 9451 </td> 9452 <td> 9453 <p>CA cert key in Secret</p><br /> 9454 </td> 9455 </tr> 9456 <tr> 9457 <td> 9458 <code>cert</code><br/> 9459 <em> 9460 string 9461 </em> 9462 </td> 9463 <td> 9464 <p>Cert key in Secret</p><br /> 9465 </td> 9466 </tr> 9467 <tr> 9468 <td> 9469 <code>key</code><br/> 9470 <em> 9471 string 9472 </em> 9473 </td> 9474 <td> 9475 <p>Key of TLS private key in Secret</p><br /> 9476 </td> 9477 </tr> 9478 </tbody> 9479 </table> 9480 <h3 id="apps.kubeblocks.io/v1alpha1.TPLScriptTrigger">TPLScriptTrigger 9481 </h3> 9482 <p> 9483 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ReloadOptions">ReloadOptions</a>) 9484 </p> 9485 <div> 9486 </div> 9487 <table> 9488 <thead> 9489 <tr> 9490 <th>Field</th> 9491 <th>Description</th> 9492 </tr> 9493 </thead> 9494 <tbody> 9495 <tr> 9496 <td> 9497 <code>ScriptConfig</code><br/> 9498 <em> 9499 <a href="#apps.kubeblocks.io/v1alpha1.ScriptConfig"> 9500 ScriptConfig 9501 </a> 9502 </em> 9503 </td> 9504 <td> 9505 <p> 9506 (Members of <code>ScriptConfig</code> are embedded into this type.) 9507 </p> 9508 </td> 9509 </tr> 9510 <tr> 9511 <td> 9512 <code>sync</code><br/> 9513 <em> 9514 bool 9515 </em> 9516 </td> 9517 <td> 9518 <em>(Optional)</em> 9519 <p>Specify synchronize updates parameters to the config manager.</p><br /> 9520 </td> 9521 </tr> 9522 </tbody> 9523 </table> 9524 <h3 id="apps.kubeblocks.io/v1alpha1.TargetInstance">TargetInstance 9525 </h3> 9526 <p> 9527 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.BasePolicy">BasePolicy</a>) 9528 </p> 9529 <div> 9530 </div> 9531 <table> 9532 <thead> 9533 <tr> 9534 <th>Field</th> 9535 <th>Description</th> 9536 </tr> 9537 </thead> 9538 <tbody> 9539 <tr> 9540 <td> 9541 <code>role</code><br/> 9542 <em> 9543 string 9544 </em> 9545 </td> 9546 <td> 9547 <em>(Optional)</em> 9548 <p>select instance of corresponding role for backup, role are:<br />- the name of Leader/Follower/Leaner for Consensus component.<br />- primary or secondary for Replication component.<br />finally, invalid role of the component will be ignored.<br />such as if workload type is Replication and component’s replicas is 1,<br />the secondary role is invalid. and it also will be ignored when component is Stateful/Stateless.<br />the role will be transformed to a role LabelSelector for BackupPolicy’s target attribute.</p><br /> 9549 </td> 9550 </tr> 9551 <tr> 9552 <td> 9553 <code>account</code><br/> 9554 <em> 9555 string 9556 </em> 9557 </td> 9558 <td> 9559 <em>(Optional)</em> 9560 <p>refer to spec.componentDef.systemAccounts.accounts[*].name in ClusterDefinition.<br />the secret created by this account will be used to connect the database.<br />if not set, the secret created by spec.ConnectionCredential of the ClusterDefinition will be used.<br />it will be transformed to a secret for BackupPolicy’s target secret.</p><br /> 9561 </td> 9562 </tr> 9563 <tr> 9564 <td> 9565 <code>connectionCredentialKey</code><br/> 9566 <em> 9567 <a href="#apps.kubeblocks.io/v1alpha1.ConnectionCredentialKey"> 9568 ConnectionCredentialKey 9569 </a> 9570 </em> 9571 </td> 9572 <td> 9573 <p>connectionCredentialKey defines connection credential key in secret<br />which created by spec.ConnectionCredential of the ClusterDefinition.<br />it will be ignored when “account” is set.</p><br /> 9574 </td> 9575 </tr> 9576 </tbody> 9577 </table> 9578 <h3 id="apps.kubeblocks.io/v1alpha1.TenancyType">TenancyType 9579 (<code>string</code> alias)</h3> 9580 <p> 9581 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Affinity">Affinity</a>, <a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 9582 </p> 9583 <div> 9584 <p>TenancyType for cluster tenant resources.</p><br /> 9585 </div> 9586 <table> 9587 <thead> 9588 <tr> 9589 <th>Value</th> 9590 <th>Description</th> 9591 </tr> 9592 </thead> 9593 <tbody><tr><td><p>"DedicatedNode"</p></td> 9594 <td></td> 9595 </tr><tr><td><p>"SharedNode"</p></td> 9596 <td></td> 9597 </tr></tbody> 9598 </table> 9599 <h3 id="apps.kubeblocks.io/v1alpha1.TerminationPolicyType">TerminationPolicyType 9600 (<code>string</code> alias)</h3> 9601 <p> 9602 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterSpec">ClusterSpec</a>) 9603 </p> 9604 <div> 9605 <p>TerminationPolicyType defines termination policy types.</p><br /> 9606 </div> 9607 <table> 9608 <thead> 9609 <tr> 9610 <th>Value</th> 9611 <th>Description</th> 9612 </tr> 9613 </thead> 9614 <tbody><tr><td><p>"Delete"</p></td> 9615 <td></td> 9616 </tr><tr><td><p>"DoNotTerminate"</p></td> 9617 <td></td> 9618 </tr><tr><td><p>"Halt"</p></td> 9619 <td></td> 9620 </tr><tr><td><p>"WipeOut"</p></td> 9621 <td></td> 9622 </tr></tbody> 9623 </table> 9624 <h3 id="apps.kubeblocks.io/v1alpha1.ToolConfig">ToolConfig 9625 </h3> 9626 <p> 9627 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ToolsImageSpec">ToolsImageSpec</a>) 9628 </p> 9629 <div> 9630 </div> 9631 <table> 9632 <thead> 9633 <tr> 9634 <th>Field</th> 9635 <th>Description</th> 9636 </tr> 9637 </thead> 9638 <tbody> 9639 <tr> 9640 <td> 9641 <code>name</code><br/> 9642 <em> 9643 string 9644 </em> 9645 </td> 9646 <td> 9647 <p>Specify the name of initContainer. Must be a DNS_LABEL name.</p><br /> 9648 </td> 9649 </tr> 9650 <tr> 9651 <td> 9652 <code>image</code><br/> 9653 <em> 9654 string 9655 </em> 9656 </td> 9657 <td> 9658 <em>(Optional)</em> 9659 <p>tools Container image name.</p><br /> 9660 </td> 9661 </tr> 9662 <tr> 9663 <td> 9664 <code>command</code><br/> 9665 <em> 9666 []string 9667 </em> 9668 </td> 9669 <td> 9670 <p>exec used to execute for init containers.</p><br /> 9671 </td> 9672 </tr> 9673 </tbody> 9674 </table> 9675 <h3 id="apps.kubeblocks.io/v1alpha1.ToolsImageSpec">ToolsImageSpec 9676 </h3> 9677 <p> 9678 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigConstraintSpec">ConfigConstraintSpec</a>) 9679 </p> 9680 <div> 9681 </div> 9682 <table> 9683 <thead> 9684 <tr> 9685 <th>Field</th> 9686 <th>Description</th> 9687 </tr> 9688 </thead> 9689 <tbody> 9690 <tr> 9691 <td> 9692 <code>mountPoint</code><br/> 9693 <em> 9694 string 9695 </em> 9696 </td> 9697 <td> 9698 <p>mountPoint is the mount point of the scripts file.</p><br /> 9699 </td> 9700 </tr> 9701 <tr> 9702 <td> 9703 <code>toolConfigs</code><br/> 9704 <em> 9705 <a href="#apps.kubeblocks.io/v1alpha1.ToolConfig"> 9706 []ToolConfig 9707 </a> 9708 </em> 9709 </td> 9710 <td> 9711 <em>(Optional)</em> 9712 <p>toolConfig used to config init container.</p><br /> 9713 </td> 9714 </tr> 9715 </tbody> 9716 </table> 9717 <h3 id="apps.kubeblocks.io/v1alpha1.UnixSignalTrigger">UnixSignalTrigger 9718 </h3> 9719 <p> 9720 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ReloadOptions">ReloadOptions</a>) 9721 </p> 9722 <div> 9723 </div> 9724 <table> 9725 <thead> 9726 <tr> 9727 <th>Field</th> 9728 <th>Description</th> 9729 </tr> 9730 </thead> 9731 <tbody> 9732 <tr> 9733 <td> 9734 <code>signal</code><br/> 9735 <em> 9736 <a href="#apps.kubeblocks.io/v1alpha1.SignalType"> 9737 SignalType 9738 </a> 9739 </em> 9740 </td> 9741 <td> 9742 <p>signal is valid for unix signal.<br />e.g: SIGHUP<br />url: ../../pkg/configuration/configmap/handler.go:allUnixSignals</p><br /> 9743 </td> 9744 </tr> 9745 <tr> 9746 <td> 9747 <code>processName</code><br/> 9748 <em> 9749 string 9750 </em> 9751 </td> 9752 <td> 9753 <p>processName is process name, sends unix signal to proc.</p><br /> 9754 </td> 9755 </tr> 9756 </tbody> 9757 </table> 9758 <h3 id="apps.kubeblocks.io/v1alpha1.UpdateStrategy">UpdateStrategy 9759 (<code>string</code> alias)</h3> 9760 <p> 9761 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.StatefulSetSpec">StatefulSetSpec</a>) 9762 </p> 9763 <div> 9764 <p>UpdateStrategy defines Cluster Component update strategy.</p><br /> 9765 </div> 9766 <table> 9767 <thead> 9768 <tr> 9769 <th>Value</th> 9770 <th>Description</th> 9771 </tr> 9772 </thead> 9773 <tbody><tr><td><p>"BestEffortParallel"</p></td> 9774 <td></td> 9775 </tr><tr><td><p>"Parallel"</p></td> 9776 <td></td> 9777 </tr><tr><td><p>"Serial"</p></td> 9778 <td></td> 9779 </tr></tbody> 9780 </table> 9781 <h3 id="apps.kubeblocks.io/v1alpha1.UpdatedParameters">UpdatedParameters 9782 </h3> 9783 <p> 9784 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ConfigurationStatus">ConfigurationStatus</a>) 9785 </p> 9786 <div> 9787 </div> 9788 <table> 9789 <thead> 9790 <tr> 9791 <th>Field</th> 9792 <th>Description</th> 9793 </tr> 9794 </thead> 9795 <tbody> 9796 <tr> 9797 <td> 9798 <code>addedKeys</code><br/> 9799 <em> 9800 map[string]string 9801 </em> 9802 </td> 9803 <td> 9804 <em>(Optional)</em> 9805 <p>addedKeys describes the key added.</p><br /> 9806 </td> 9807 </tr> 9808 <tr> 9809 <td> 9810 <code>deletedKeys</code><br/> 9811 <em> 9812 map[string]string 9813 </em> 9814 </td> 9815 <td> 9816 <em>(Optional)</em> 9817 <p>deletedKeys describes the key deleted.</p><br /> 9818 </td> 9819 </tr> 9820 <tr> 9821 <td> 9822 <code>updatedKeys</code><br/> 9823 <em> 9824 map[string]string 9825 </em> 9826 </td> 9827 <td> 9828 <em>(Optional)</em> 9829 <p>updatedKeys describes the key updated.</p><br /> 9830 </td> 9831 </tr> 9832 </tbody> 9833 </table> 9834 <h3 id="apps.kubeblocks.io/v1alpha1.Upgrade">Upgrade 9835 </h3> 9836 <p> 9837 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 9838 </p> 9839 <div> 9840 <p>Upgrade defines the variables of upgrade operation.</p><br /> 9841 </div> 9842 <table> 9843 <thead> 9844 <tr> 9845 <th>Field</th> 9846 <th>Description</th> 9847 </tr> 9848 </thead> 9849 <tbody> 9850 <tr> 9851 <td> 9852 <code>clusterVersionRef</code><br/> 9853 <em> 9854 string 9855 </em> 9856 </td> 9857 <td> 9858 <p>clusterVersionRef references ClusterVersion name.</p><br /> 9859 </td> 9860 </tr> 9861 </tbody> 9862 </table> 9863 <h3 id="apps.kubeblocks.io/v1alpha1.UpgradePolicy">UpgradePolicy 9864 (<code>string</code> alias)</h3> 9865 <p> 9866 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.Configuration">Configuration</a>, <a href="#apps.kubeblocks.io/v1alpha1.ConfigurationStatus">ConfigurationStatus</a>) 9867 </p> 9868 <div> 9869 <p>UpgradePolicy defines the policy of reconfiguring.</p><br /> 9870 </div> 9871 <table> 9872 <thead> 9873 <tr> 9874 <th>Value</th> 9875 <th>Description</th> 9876 </tr> 9877 </thead> 9878 <tbody><tr><td><p>"autoReload"</p></td> 9879 <td></td> 9880 </tr><tr><td><p>"none"</p></td> 9881 <td></td> 9882 </tr><tr><td><p>"simple"</p></td> 9883 <td></td> 9884 </tr><tr><td><p>"operatorSyncUpdate"</p></td> 9885 <td></td> 9886 </tr><tr><td><p>"parallel"</p></td> 9887 <td></td> 9888 </tr><tr><td><p>"rolling"</p></td> 9889 <td></td> 9890 </tr></tbody> 9891 </table> 9892 <h3 id="apps.kubeblocks.io/v1alpha1.VersionsContext">VersionsContext 9893 </h3> 9894 <p> 9895 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentVersion">ClusterComponentVersion</a>) 9896 </p> 9897 <div> 9898 </div> 9899 <table> 9900 <thead> 9901 <tr> 9902 <th>Field</th> 9903 <th>Description</th> 9904 </tr> 9905 </thead> 9906 <tbody> 9907 <tr> 9908 <td> 9909 <code>initContainers</code><br/> 9910 <em> 9911 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#container-v1-core"> 9912 []Kubernetes core/v1.Container 9913 </a> 9914 </em> 9915 </td> 9916 <td> 9917 <em>(Optional)</em> 9918 <p>Provide ClusterDefinition.spec.componentDefs.podSpec.initContainers override<br />values, typical scenarios are application container image updates.</p><br /> 9919 </td> 9920 </tr> 9921 <tr> 9922 <td> 9923 <code>containers</code><br/> 9924 <em> 9925 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#container-v1-core"> 9926 []Kubernetes core/v1.Container 9927 </a> 9928 </em> 9929 </td> 9930 <td> 9931 <em>(Optional)</em> 9932 <p>Provide ClusterDefinition.spec.componentDefs.podSpec.containers override<br />values, typical scenarios are application container image updates.</p><br /> 9933 </td> 9934 </tr> 9935 </tbody> 9936 </table> 9937 <h3 id="apps.kubeblocks.io/v1alpha1.VerticalScaling">VerticalScaling 9938 </h3> 9939 <p> 9940 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 9941 </p> 9942 <div> 9943 <p>VerticalScaling defines the variables that need to input when scaling compute resources.</p><br /> 9944 </div> 9945 <table> 9946 <thead> 9947 <tr> 9948 <th>Field</th> 9949 <th>Description</th> 9950 </tr> 9951 </thead> 9952 <tbody> 9953 <tr> 9954 <td> 9955 <code>ComponentOps</code><br/> 9956 <em> 9957 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 9958 ComponentOps 9959 </a> 9960 </em> 9961 </td> 9962 <td> 9963 <p> 9964 (Members of <code>ComponentOps</code> are embedded into this type.) 9965 </p> 9966 </td> 9967 </tr> 9968 <tr> 9969 <td> 9970 <code>ResourceRequirements</code><br/> 9971 <em> 9972 <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core"> 9973 Kubernetes core/v1.ResourceRequirements 9974 </a> 9975 </em> 9976 </td> 9977 <td> 9978 <p> 9979 (Members of <code>ResourceRequirements</code> are embedded into this type.) 9980 </p> 9981 <p>resources specifies the computing resource size of verticalScaling.</p><br /> 9982 </td> 9983 </tr> 9984 <tr> 9985 <td> 9986 <code>classDefRef</code><br/> 9987 <em> 9988 <a href="#apps.kubeblocks.io/v1alpha1.ClassDefRef"> 9989 ClassDefRef 9990 </a> 9991 </em> 9992 </td> 9993 <td> 9994 <em>(Optional)</em> 9995 <p>classDefRef reference class defined in ComponentClassDefinition.</p><br /> 9996 </td> 9997 </tr> 9998 </tbody> 9999 </table> 10000 <h3 id="apps.kubeblocks.io/v1alpha1.VolumeExpansion">VolumeExpansion 10001 </h3> 10002 <p> 10003 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.OpsRequestSpec">OpsRequestSpec</a>) 10004 </p> 10005 <div> 10006 <p>VolumeExpansion defines the variables of volume expansion operation.</p><br /> 10007 </div> 10008 <table> 10009 <thead> 10010 <tr> 10011 <th>Field</th> 10012 <th>Description</th> 10013 </tr> 10014 </thead> 10015 <tbody> 10016 <tr> 10017 <td> 10018 <code>ComponentOps</code><br/> 10019 <em> 10020 <a href="#apps.kubeblocks.io/v1alpha1.ComponentOps"> 10021 ComponentOps 10022 </a> 10023 </em> 10024 </td> 10025 <td> 10026 <p> 10027 (Members of <code>ComponentOps</code> are embedded into this type.) 10028 </p> 10029 </td> 10030 </tr> 10031 <tr> 10032 <td> 10033 <code>volumeClaimTemplates</code><br/> 10034 <em> 10035 <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestVolumeClaimTemplate"> 10036 []OpsRequestVolumeClaimTemplate 10037 </a> 10038 </em> 10039 </td> 10040 <td> 10041 <p>volumeClaimTemplates specifies the storage size and volumeClaimTemplate name.</p><br /> 10042 </td> 10043 </tr> 10044 </tbody> 10045 </table> 10046 <h3 id="apps.kubeblocks.io/v1alpha1.VolumeProtectionSpec">VolumeProtectionSpec 10047 </h3> 10048 <p> 10049 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 10050 </p> 10051 <div> 10052 </div> 10053 <table> 10054 <thead> 10055 <tr> 10056 <th>Field</th> 10057 <th>Description</th> 10058 </tr> 10059 </thead> 10060 <tbody> 10061 <tr> 10062 <td> 10063 <code>highWatermark</code><br/> 10064 <em> 10065 int 10066 </em> 10067 </td> 10068 <td> 10069 <em>(Optional)</em> 10070 <p>The high watermark threshold for volume space usage.<br />If there is any specified volumes who’s space usage is over the threshold, the pre-defined “LOCK” action<br />will be triggered to degrade the service to protect volume from space exhaustion, such as to set the instance<br />as read-only. And after that, if all volumes’ space usage drops under the threshold later, the pre-defined<br />“UNLOCK” action will be performed to recover the service normally.</p><br /> 10071 </td> 10072 </tr> 10073 <tr> 10074 <td> 10075 <code>volumes</code><br/> 10076 <em> 10077 <a href="#apps.kubeblocks.io/v1alpha1.ProtectedVolume"> 10078 []ProtectedVolume 10079 </a> 10080 </em> 10081 </td> 10082 <td> 10083 <em>(Optional)</em> 10084 <p>Volumes to protect.</p><br /> 10085 </td> 10086 </tr> 10087 </tbody> 10088 </table> 10089 <h3 id="apps.kubeblocks.io/v1alpha1.VolumeType">VolumeType 10090 (<code>string</code> alias)</h3> 10091 <p> 10092 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.VolumeTypeSpec">VolumeTypeSpec</a>) 10093 </p> 10094 <div> 10095 <p>VolumeType defines volume type for backup data or log.</p><br /> 10096 </div> 10097 <table> 10098 <thead> 10099 <tr> 10100 <th>Value</th> 10101 <th>Description</th> 10102 </tr> 10103 </thead> 10104 <tbody><tr><td><p>"data"</p></td> 10105 <td></td> 10106 </tr><tr><td><p>"log"</p></td> 10107 <td></td> 10108 </tr></tbody> 10109 </table> 10110 <h3 id="apps.kubeblocks.io/v1alpha1.VolumeTypeSpec">VolumeTypeSpec 10111 </h3> 10112 <p> 10113 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>) 10114 </p> 10115 <div> 10116 </div> 10117 <table> 10118 <thead> 10119 <tr> 10120 <th>Field</th> 10121 <th>Description</th> 10122 </tr> 10123 </thead> 10124 <tbody> 10125 <tr> 10126 <td> 10127 <code>name</code><br/> 10128 <em> 10129 string 10130 </em> 10131 </td> 10132 <td> 10133 <p>name definition is the same as the name of the VolumeMounts field in PodSpec.Container,<br />similar to the relations of Volumes[<em>].name and VolumesMounts[</em>].name in Pod.Spec.</p><br /> 10134 </td> 10135 </tr> 10136 <tr> 10137 <td> 10138 <code>type</code><br/> 10139 <em> 10140 <a href="#apps.kubeblocks.io/v1alpha1.VolumeType"> 10141 VolumeType 10142 </a> 10143 </em> 10144 </td> 10145 <td> 10146 <em>(Optional)</em> 10147 <p>type is in enum of {data, log}.<br />VolumeTypeData: the volume is for the persistent data storage.<br />VolumeTypeLog: the volume is for the persistent log storage.</p><br /> 10148 </td> 10149 </tr> 10150 </tbody> 10151 </table> 10152 <h3 id="apps.kubeblocks.io/v1alpha1.WorkloadType">WorkloadType 10153 (<code>string</code> alias)</h3> 10154 <p> 10155 (<em>Appears on:</em><a href="#apps.kubeblocks.io/v1alpha1.ClusterComponentDefinition">ClusterComponentDefinition</a>, <a href="#apps.kubeblocks.io/v1alpha1.OpsRequestComponentStatus">OpsRequestComponentStatus</a>) 10156 </p> 10157 <div> 10158 <p>WorkloadType defines ClusterDefinition’s component workload type.</p><br /> 10159 </div> 10160 <table> 10161 <thead> 10162 <tr> 10163 <th>Value</th> 10164 <th>Description</th> 10165 </tr> 10166 </thead> 10167 <tbody><tr><td><p>"Consensus"</p></td> 10168 <td></td> 10169 </tr><tr><td><p>"Replication"</p></td> 10170 <td></td> 10171 </tr><tr><td><p>"Stateful"</p></td> 10172 <td></td> 10173 </tr><tr><td><p>"Stateless"</p></td> 10174 <td></td> 10175 </tr></tbody> 10176 </table> 10177 <hr/> 10178 <p><em> 10179 Generated with <code>gen-crd-api-reference-docs</code> 10180 </em></p>