github.com/openebs/api@v1.12.0/config/crds/bases/cstor.openebs.io_cstorpoolinstances.yaml (about) 1 2 --- 3 apiVersion: apiextensions.k8s.io/v1beta1 4 kind: CustomResourceDefinition 5 metadata: 6 annotations: 7 controller-gen.kubebuilder.io/version: v0.2.9 8 creationTimestamp: null 9 name: cstorpoolinstances.cstor.openebs.io 10 spec: 11 group: cstor.openebs.io 12 names: 13 kind: CStorPoolInstance 14 listKind: CStorPoolInstanceList 15 plural: cstorpoolinstances 16 singular: cstorpoolinstance 17 scope: Namespaced 18 validation: 19 openAPIV3Schema: 20 description: CStorPoolInstance describes a cstor pool instance resource. 21 properties: 22 apiVersion: 23 description: 'APIVersion defines the versioned schema of this representation 24 of an object. Servers should convert recognized schemas to the latest 25 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 26 type: string 27 kind: 28 description: 'Kind is a string value representing the REST resource this 29 object represents. Servers may infer this from the endpoint the client 30 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 31 type: string 32 metadata: 33 type: object 34 spec: 35 description: Spec is the specification of the cstorpoolinstance resource. 36 properties: 37 dataRaidGroups: 38 description: DataRaidGroups is the raid group configuration for the 39 given pool. 40 items: 41 description: RaidGroup contains the details of a raid group for the 42 pool 43 properties: 44 blockDevices: 45 items: 46 description: CStorPoolInstanceBlockDevice contains the details 47 of block devices that constitutes a raid group. 48 properties: 49 blockDeviceName: 50 description: BlockDeviceName is the name of the block device. 51 type: string 52 capacity: 53 description: Capacity is the capacity of the block device. 54 It is system generated 55 format: int64 56 type: integer 57 devLink: 58 description: DevLink is the dev link for block devices 59 type: string 60 required: 61 - blockDeviceName 62 - capacity 63 - devLink 64 type: object 65 type: array 66 required: 67 - blockDevices 68 type: object 69 type: array 70 hostName: 71 description: HostName is the name of kubernetes node where the pool 72 should be created. 73 type: string 74 nodeSelector: 75 additionalProperties: 76 type: string 77 description: NodeSelector is the labels that will be used to select 78 a node for pool provisioning. Required field 79 type: object 80 poolConfig: 81 description: PoolConfig is the default pool config that applies to the 82 pool on node. 83 properties: 84 auxResources: 85 description: AuxResources are the compute resources required by 86 the cstor-pool pod side car containers. 87 properties: 88 limits: 89 additionalProperties: 90 anyOf: 91 - type: integer 92 - type: string 93 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 94 x-kubernetes-int-or-string: true 95 description: 'Limits describes the maximum amount of compute 96 resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' 97 type: object 98 requests: 99 additionalProperties: 100 anyOf: 101 - type: integer 102 - type: string 103 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 104 x-kubernetes-int-or-string: true 105 description: 'Requests describes the minimum amount of compute 106 resources required. If Requests is omitted for a container, 107 it defaults to Limits if that is explicitly specified, otherwise 108 to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' 109 type: object 110 type: object 111 compression: 112 description: 'Compression to enable compression Optional -- defaults 113 to off Possible values : lz, off' 114 type: string 115 dataRaidGroupType: 116 description: DataRaidGroupType is the raid type. 117 type: string 118 priorityClassName: 119 description: PriorityClassName if specified applies to this pool 120 pod If left empty, DefaultPriorityClassName is applied. (See CStorPoolClusterSpec.DefaultPriorityClassName) 121 If both are empty, not priority class is applied. 122 type: string 123 resources: 124 description: Resources are the compute resources required by the 125 cstor-pool container. 126 properties: 127 limits: 128 additionalProperties: 129 anyOf: 130 - type: integer 131 - type: string 132 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 133 x-kubernetes-int-or-string: true 134 description: 'Limits describes the maximum amount of compute 135 resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' 136 type: object 137 requests: 138 additionalProperties: 139 anyOf: 140 - type: integer 141 - type: string 142 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 143 x-kubernetes-int-or-string: true 144 description: 'Requests describes the minimum amount of compute 145 resources required. If Requests is omitted for a container, 146 it defaults to Limits if that is explicitly specified, otherwise 147 to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' 148 type: object 149 type: object 150 roThresholdLimit: 151 description: 'ROThresholdLimit is threshold(percentage base) limit 152 for pool read only mode. If ROThresholdLimit(%) amount of pool 153 storage is reached then pool will set to readonly. NOTE: 1. If 154 ROThresholdLimit is set to 100 then entire pool storage will 155 be used by default it will be set to 85%. 2. ROThresholdLimit 156 value will be 0 <= ROThresholdLimit <= 100.' 157 type: integer 158 thickProvision: 159 description: ThickProvision to enable thick provisioning Optional 160 -- defaults to false 161 type: boolean 162 tolerations: 163 description: Tolerations, if specified, the pool pod's tolerations. 164 items: 165 description: The pod this Toleration is attached to tolerates 166 any taint that matches the triple <key,value,effect> using the 167 matching operator <operator>. 168 properties: 169 effect: 170 description: Effect indicates the taint effect to match. Empty 171 means match all taint effects. When specified, allowed values 172 are NoSchedule, PreferNoSchedule and NoExecute. 173 type: string 174 key: 175 description: Key is the taint key that the toleration applies 176 to. Empty means match all taint keys. If the key is empty, 177 operator must be Exists; this combination means to match 178 all values and all keys. 179 type: string 180 operator: 181 description: Operator represents a key's relationship to the 182 value. Valid operators are Exists and Equal. Defaults to 183 Equal. Exists is equivalent to wildcard for value, so that 184 a pod can tolerate all taints of a particular category. 185 type: string 186 tolerationSeconds: 187 description: TolerationSeconds represents the period of time 188 the toleration (which must be of effect NoExecute, otherwise 189 this field is ignored) tolerates the taint. By default, 190 it is not set, which means tolerate the taint forever (do 191 not evict). Zero and negative values will be treated as 192 0 (evict immediately) by the system. 193 format: int64 194 type: integer 195 value: 196 description: Value is the taint value the toleration matches 197 to. If the operator is Exists, the value should be empty, 198 otherwise just a regular string. 199 type: string 200 type: object 201 type: array 202 writeCacheGroupType: 203 description: WriteCacheGroupType is the write cache raid type. 204 type: string 205 required: 206 - auxResources 207 - compression 208 - dataRaidGroupType 209 - priorityClassName 210 - resources 211 - roThresholdLimit 212 - thickProvision 213 - tolerations 214 - writeCacheGroupType 215 type: object 216 writeCacheRaidGroups: 217 description: WriteCacheRaidGroups is the write cache raid group. 218 items: 219 description: RaidGroup contains the details of a raid group for the 220 pool 221 properties: 222 blockDevices: 223 items: 224 description: CStorPoolInstanceBlockDevice contains the details 225 of block devices that constitutes a raid group. 226 properties: 227 blockDeviceName: 228 description: BlockDeviceName is the name of the block device. 229 type: string 230 capacity: 231 description: Capacity is the capacity of the block device. 232 It is system generated 233 format: int64 234 type: integer 235 devLink: 236 description: DevLink is the dev link for block devices 237 type: string 238 required: 239 - blockDeviceName 240 - capacity 241 - devLink 242 type: object 243 type: array 244 required: 245 - blockDevices 246 type: object 247 type: array 248 required: 249 - dataRaidGroups 250 - hostName 251 - nodeSelector 252 - poolConfig 253 - writeCacheRaidGroups 254 type: object 255 status: 256 description: Status is the possible statuses of the cstorpoolinstance resource. 257 properties: 258 capacity: 259 description: Capacity describes the capacity details of a cstor pool 260 properties: 261 free: 262 anyOf: 263 - type: integer 264 - type: string 265 description: Unsed capacity in the pool 266 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 267 x-kubernetes-int-or-string: true 268 total: 269 anyOf: 270 - type: integer 271 - type: string 272 description: Total capacity of the pool, equal to the sum of the 273 all data raidgroups 274 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 275 x-kubernetes-int-or-string: true 276 used: 277 anyOf: 278 - type: integer 279 - type: string 280 description: The amount of capacity allocated to all datasets and 281 internal metadata 282 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 283 x-kubernetes-int-or-string: true 284 required: 285 - free 286 - total 287 - used 288 type: object 289 conditions: 290 description: Current state of CSPI with details. 291 items: 292 description: CSPIConditionType describes the state of a CSPI at a 293 certain point. 294 properties: 295 lastTransitionTime: 296 description: Last time the condition transitioned from one status 297 to another. 298 format: date-time 299 type: string 300 lastUpdateTime: 301 description: The last time this condition was updated. 302 format: date-time 303 type: string 304 message: 305 description: A human readable message indicating details about 306 the transition. 307 type: string 308 reason: 309 description: The reason for the condition's last transition. 310 type: string 311 status: 312 description: Status of the condition, one of True, False, Unknown. 313 type: string 314 type: 315 description: Type of CSPC condition. 316 type: string 317 required: 318 - status 319 - type 320 type: object 321 type: array 322 phase: 323 description: ' The phase of a CStorPool is a simple, high-level summary 324 of the pool state on the node.' 325 type: string 326 readOnly: 327 description: ReadOnly if pool is readOnly or not 328 type: boolean 329 required: 330 - capacity 331 - phase 332 - readOnly 333 type: object 334 versionDetails: 335 description: VersionDetails is the openebs version. 336 properties: 337 autoUpgrade: 338 description: If AutoUpgrade is set to true then the resource is upgraded 339 automatically without any manual steps 340 type: boolean 341 desired: 342 description: Desired is the version that we want to upgrade or the control 343 plane version 344 type: string 345 status: 346 description: Status gives the status of reconciliation triggered when 347 the desired and current version are not same 348 properties: 349 current: 350 description: Current is the version of resource 351 type: string 352 dependentsUpgraded: 353 description: DependentsUpgraded gives the details whether all children 354 of a resource are upgraded to desired version or not 355 type: boolean 356 lastUpdateTime: 357 description: LastUpdateTime is the time the status was last updated 358 format: date-time 359 type: string 360 message: 361 description: Message is a human readable message if some error occurs 362 type: string 363 reason: 364 description: Reason is the actual reason for the error state 365 type: string 366 state: 367 description: State is the state of reconciliation 368 type: string 369 required: 370 - current 371 - dependentsUpgraded 372 - state 373 type: object 374 required: 375 - autoUpgrade 376 - desired 377 - status 378 type: object 379 required: 380 - spec 381 - status 382 - versionDetails 383 type: object 384 version: v1 385 versions: 386 - name: v1 387 served: true 388 storage: true 389 status: 390 acceptedNames: 391 kind: "" 392 plural: "" 393 conditions: [] 394 storedVersions: []