You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/concepts/api-extension/custom-resources.md
+19-19Lines changed: 19 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,24 +48,24 @@ When creating a new API, consider whether to [aggregate your API with the Kubern
48
48
#### Declarative APIs
49
49
50
50
In a Declarative API, typically:
51
-
-your API consists of a relatively small number of relatively small objects (resources).
52
-
-the objects define configuration of applications or infrastructure
53
-
-the objects are updated relatively infrequently
54
-
-humans often need to read and write the objects
55
-
-the main operations on the objects are CRUD-y (creating, reading, updating and deleting)
56
-
-transactions across objects are not required: the API represents a desired state, not an exact state.
51
+
-Your API consists of a relatively small number of relatively small objects (resources).
52
+
-The objects define configuration of applications or infrastructure.
53
+
-The objects are updated relatively infrequently.
54
+
-Humans often need to read and write the objects.
55
+
-The main operations on the objects are CRUD-y (creating, reading, updating and deleting).
56
+
-Transactions across objects are not required: the API represents a desired state, not an exact state.
57
57
58
58
Imperative APIs are not declarative.
59
59
Signs that your API might not be declarative include:
60
-
-the client says "do this", and then gets a synchornous response back when it is done.
61
-
-the client says "do this", and then gets an operation ID back, and has to check a separate Operation objects to determine completion of the request.
62
-
-you talk about Remote Procedure Calls (RPCs)
63
-
-directly stoing large amounts of data (e.g. > a few kB per object, or >1000s of objects)
64
-
-high bandwidth access (10s of requests per second sustained) needed
65
-
-store end-user data (such as images, PII, etc) or other large-scale data processed by applications
66
-
-the natural operations on the objects are not CRUD-y.
67
-
-the API is not easily modeled as objects.
68
-
-you chose to represent pending operations with an operation ID or operation object.
60
+
-The client says "do this", and then gets a synchornous response back when it is done.
61
+
-The client says "do this", and then gets an operation ID back, and has to check a separate Operation objects to determine completion of the request.
62
+
-You talk about Remote Procedure Calls (RPCs).
63
+
-Directly storing large amounts of data (e.g. > a few kB per object, or >1000s of objects).
64
+
-High bandwidth access (10s of requests per second sustained) needed.
65
+
-Store end-user data (such as images, PII, etc) or other large-scale data processed by applications.
66
+
-The natural operations on the objects are not CRUD-y.
67
+
-The API is not easily modeled as objects.
68
+
-You chose to represent pending operations with an operation ID or operation object.
69
69
70
70
### Should I use a configMap or a custom resource?
71
71
@@ -102,7 +102,7 @@ Aggregated APIs are subordinate APIServers that sit behind the primary API serve
102
102
103
103
Custom Resource Definitions (CRDS) allow users to create new types of resources without adding another APIserver. You do not need to understand API Aggregation to use CRDs.
104
104
105
-
Regardless of whether they are installed via CRDs or AA, the new resources are called Custom Resources to distinguish them from built-in Kubernetes resources (like pods)
105
+
Regardless of whether they are installed via CRDs or AA, the new resources are called Custom Resources to distinguish them from built-in Kubernetes resources (like pods).
106
106
107
107
## CustomResourceDefinitions
108
108
@@ -215,9 +215,9 @@ Kubernetes [client libraries](/docs/reference/client-libraries/) can be used to
215
215
216
216
When you add a custom resource, you can access it using:
217
217
- kubectl
218
-
-the kubernetes dynamic client
219
-
-a REST client that you write
220
-
-a client generated using Kubernetes client generation tools (generating one is an advanced undertaking, but some projects may provide a client along with the CRD or AA).
218
+
-The kubernetes dynamic client.
219
+
-A REST client that you write.
220
+
-A client generated using Kubernetes client generation tools (generating one is an advanced undertaking, but some projects may provide a client along with the CRD or AA).
Copy file name to clipboardExpand all lines: docs/concepts/storage/persistent-volumes.md
+6-4Lines changed: 6 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -245,10 +245,12 @@ Generally, a PV will have a specific storage capacity. This is set using the PV
245
245
Currently, storage size is the only resource that can be set or requested. Future attributes may include IOPS, throughput, etc.
246
246
247
247
### Volume Mode
248
-
{% assign for_k8s_version="v1.9" %}{% include feature-state-alpha.md %}
249
248
250
249
Prior to v1.9, the default behavior for all volume plugins was to create a filesystem on the persistent volume. With v1.9, the user can specify a volumeMode which will now support raw block devices in addition to file systems. Valid values for volumeMode are "Filesystem" or "Block". If left unspecified, volumeMode defaults to "Filesystem" internally. This is an optional API parameter.
251
250
251
+
**Note:** This feature is alpha in v1.9 and may change in the future.
252
+
{: .note}
253
+
252
254
### Access Modes
253
255
254
256
A `PersistentVolume` can be mounted on a host in any way supported by the resource provider. As shown in the table below, providers will have different capabilities and each PV's access modes are set to the specific modes supported by that particular volume. For example, NFS can support multiple read/write clients, but a specific NFS PV might be exported on the server as read-only. Each PV gets its own set of access modes describing that specific PV's capabilities.
@@ -384,7 +386,7 @@ Claims use the same conventions as volumes when requesting storage with specific
384
386
385
387
### Volume Modes
386
388
387
-
Claims use the same convention as volumes to indicate the consumption of the volume as either a filesystem or block device.
389
+
Claims use the same convention as volumes to indicates the consumption of the volume as either a filesystem or block device.
388
390
389
391
### Resources
390
392
@@ -470,7 +472,7 @@ spec:
470
472
471
473
## Raw Block Volume Support
472
474
473
-
Static provisioning support for Raw Block Volumes is included as an alpha feature for v1.9. Raw block volumes can be specified through new API fields. Currently, Fibre Channel is the only supported plugin for this feature.
475
+
Static provisioning support for Raw Block Volumes is included as an alpha feature for v1.9. With this change are some new API fields that need to be used to facilitate this functionality. Currently, Fibre Channel is the only supported plugin for this feature.
474
476
475
477
### Persistent Volumes using a Raw Block Volume
476
478
```
@@ -530,7 +532,7 @@ spec:
530
532
531
533
### Binding Block Volumes
532
534
533
-
If a user requests a raw block volume through the persistentVolumeClaim.volumeMode field, it can only bind to PersistentVolume with the matching volumeMode field.
535
+
If a user requests a raw block volume by indicating this using the volumeMode field in the PersistentVolumeClaim spec, the binding rules differ slighty from previous releases that didn't consider this mode as part of the spec.
534
536
Listed is a table of possible combinations the user and admin might specify for requesting a raw block device. The table indicates if the volume will be bound or not given the combinations:
535
537
Volume binding matrix for statically provisioned volumes:
0 commit comments