|
| 1 | +--- |
| 2 | +title: Kubelet Configuration (v1alpha1) |
| 3 | +content_type: tool-reference |
| 4 | +package: kubelet.config.k8s.io/v1alpha1 |
| 5 | +auto_generated: true |
| 6 | +--- |
| 7 | + |
| 8 | + |
| 9 | +## Resource Types |
| 10 | + |
| 11 | + |
| 12 | +- [CredentialProviderConfig](#kubelet-config-k8s-io-v1alpha1-CredentialProviderConfig) |
| 13 | + |
| 14 | + |
| 15 | + |
| 16 | +## `FormatOptions` {#FormatOptions} |
| 17 | + |
| 18 | + |
| 19 | + |
| 20 | + |
| 21 | +**Appears in:** |
| 22 | + |
| 23 | +- [LoggingConfiguration](#LoggingConfiguration) |
| 24 | + |
| 25 | + |
| 26 | +FormatOptions contains options for the different logging formats. |
| 27 | + |
| 28 | +<table class="table"> |
| 29 | +<thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> |
| 30 | +<tbody> |
| 31 | + |
| 32 | + |
| 33 | + |
| 34 | +<tr><td><code>json</code> <B>[Required]</B><br/> |
| 35 | +<a href="#JSONOptions"><code>JSONOptions</code></a> |
| 36 | +</td> |
| 37 | +<td> |
| 38 | + [Experimental] JSON contains options for logging format "json".</td> |
| 39 | +</tr> |
| 40 | + |
| 41 | + |
| 42 | +</tbody> |
| 43 | +</table> |
| 44 | + |
| 45 | +## `JSONOptions` {#JSONOptions} |
| 46 | + |
| 47 | + |
| 48 | + |
| 49 | + |
| 50 | +**Appears in:** |
| 51 | + |
| 52 | +- [FormatOptions](#FormatOptions) |
| 53 | + |
| 54 | + |
| 55 | +JSONOptions contains options for logging format "json". |
| 56 | + |
| 57 | +<table class="table"> |
| 58 | +<thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> |
| 59 | +<tbody> |
| 60 | + |
| 61 | + |
| 62 | + |
| 63 | +<tr><td><code>splitStream</code> <B>[Required]</B><br/> |
| 64 | +<code>bool</code> |
| 65 | +</td> |
| 66 | +<td> |
| 67 | + [Experimental] SplitStream redirects error messages to stderr while |
| 68 | +info messages go to stdout, with buffering. The default is to write |
| 69 | +both to stdout, without buffering.</td> |
| 70 | +</tr> |
| 71 | + |
| 72 | + |
| 73 | +<tr><td><code>infoBufferSize</code> <B>[Required]</B><br/> |
| 74 | +<a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/api/resource#QuantityValue"><code>k8s.io/apimachinery/pkg/api/resource.QuantityValue</code></a> |
| 75 | +</td> |
| 76 | +<td> |
| 77 | + [Experimental] InfoBufferSize sets the size of the info stream when |
| 78 | +using split streams. The default is zero, which disables buffering.</td> |
| 79 | +</tr> |
| 80 | + |
| 81 | + |
| 82 | +</tbody> |
| 83 | +</table> |
| 84 | + |
| 85 | +## `VModuleConfiguration` {#VModuleConfiguration} |
| 86 | + |
| 87 | +(Alias of `[]k8s.io/component-base/config/v1alpha1.VModuleItem`) |
| 88 | + |
| 89 | + |
| 90 | +**Appears in:** |
| 91 | + |
| 92 | +- [LoggingConfiguration](#LoggingConfiguration) |
| 93 | + |
| 94 | + |
| 95 | +VModuleConfiguration is a collection of individual file names or patterns |
| 96 | +and the corresponding verbosity threshold. |
| 97 | + |
| 98 | + |
| 99 | + |
| 100 | + |
| 101 | + |
| 102 | + |
| 103 | +## `CredentialProviderConfig` {#kubelet-config-k8s-io-v1alpha1-CredentialProviderConfig} |
| 104 | + |
| 105 | + |
| 106 | + |
| 107 | + |
| 108 | + |
| 109 | +CredentialProviderConfig is the configuration containing information about |
| 110 | +each exec credential provider. Kubelet reads this configuration from disk and enables |
| 111 | +each provider as specified by the CredentialProvider type. |
| 112 | + |
| 113 | +<table class="table"> |
| 114 | +<thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> |
| 115 | +<tbody> |
| 116 | + |
| 117 | +<tr><td><code>apiVersion</code><br/>string</td><td><code>kubelet.config.k8s.io/v1alpha1</code></td></tr> |
| 118 | +<tr><td><code>kind</code><br/>string</td><td><code>CredentialProviderConfig</code></td></tr> |
| 119 | + |
| 120 | + |
| 121 | + |
| 122 | + |
| 123 | +<tr><td><code>providers</code> <B>[Required]</B><br/> |
| 124 | +<a href="#kubelet-config-k8s-io-v1alpha1-CredentialProvider"><code>[]CredentialProvider</code></a> |
| 125 | +</td> |
| 126 | +<td> |
| 127 | + providers is a list of credential provider plugins that will be enabled by the kubelet. |
| 128 | +Multiple providers may match against a single image, in which case credentials |
| 129 | +from all providers will be returned to the kubelet. If multiple providers are called |
| 130 | +for a single image, the results are combined. If providers return overlapping |
| 131 | +auth keys, the value from the provider earlier in this list is used.</td> |
| 132 | +</tr> |
| 133 | + |
| 134 | + |
| 135 | +</tbody> |
| 136 | +</table> |
| 137 | + |
| 138 | + |
| 139 | + |
| 140 | +## `CredentialProvider` {#kubelet-config-k8s-io-v1alpha1-CredentialProvider} |
| 141 | + |
| 142 | + |
| 143 | + |
| 144 | + |
| 145 | +**Appears in:** |
| 146 | + |
| 147 | +- [CredentialProviderConfig](#kubelet-config-k8s-io-v1alpha1-CredentialProviderConfig) |
| 148 | + |
| 149 | + |
| 150 | +CredentialProvider represents an exec plugin to be invoked by the kubelet. The plugin is only |
| 151 | +invoked when an image being pulled matches the images handled by the plugin (see matchImages). |
| 152 | + |
| 153 | +<table class="table"> |
| 154 | +<thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> |
| 155 | +<tbody> |
| 156 | + |
| 157 | + |
| 158 | + |
| 159 | +<tr><td><code>name</code> <B>[Required]</B><br/> |
| 160 | +<code>string</code> |
| 161 | +</td> |
| 162 | +<td> |
| 163 | + name is the required name of the credential provider. It must match the name of the |
| 164 | +provider executable as seen by the kubelet. The executable must be in the kubelet's |
| 165 | +bin directory (set by the --image-credential-provider-bin-dir flag).</td> |
| 166 | +</tr> |
| 167 | + |
| 168 | + |
| 169 | +<tr><td><code>matchImages</code> <B>[Required]</B><br/> |
| 170 | +<code>[]string</code> |
| 171 | +</td> |
| 172 | +<td> |
| 173 | + matchImages is a required list of strings used to match against images in order to |
| 174 | +determine if this provider should be invoked. If one of the strings matches the |
| 175 | +requested image from the kubelet, the plugin will be invoked and given a chance |
| 176 | +to provide credentials. Images are expected to contain the registry domain |
| 177 | +and URL path. |
| 178 | + |
| 179 | +Each entry in matchImages is a pattern which can optionally contain a port and a path. |
| 180 | +Globs can be used in the domain, but not in the port or the path. Globs are supported |
| 181 | +as subdomains like '∗.k8s.io' or 'k8s.∗.io', and top-level-domains such as 'k8s.∗'. |
| 182 | +Matching partial subdomains like 'app∗.k8s.io' is also supported. Each glob can only match |
| 183 | +a single subdomain segment, so ∗.io does not match ∗.k8s.io. |
| 184 | + |
| 185 | +A match exists between an image and a matchImage when all of the below are true: |
| 186 | +- Both contain the same number of domain parts and each part matches. |
| 187 | +- The URL path of an imageMatch must be a prefix of the target image URL path. |
| 188 | +- If the imageMatch contains a port, then the port must match in the image as well. |
| 189 | + |
| 190 | +Example values of matchImages: |
| 191 | + - 123456789.dkr.ecr.us-east-1.amazonaws.com |
| 192 | + - ∗.azurecr.io |
| 193 | + - gcr.io |
| 194 | + - ∗.∗.registry.io |
| 195 | + - registry.io:8080/path</td> |
| 196 | +</tr> |
| 197 | + |
| 198 | + |
| 199 | +<tr><td><code>defaultCacheDuration</code> <B>[Required]</B><br/> |
| 200 | +<a href="https://godoc.org/k8s.io/apimachinery/pkg/apis/meta/v1#Duration"><code>meta/v1.Duration</code></a> |
| 201 | +</td> |
| 202 | +<td> |
| 203 | + defaultCacheDuration is the default duration the plugin will cache credentials in-memory |
| 204 | +if a cache duration is not provided in the plugin response. This field is required.</td> |
| 205 | +</tr> |
| 206 | + |
| 207 | + |
| 208 | +<tr><td><code>apiVersion</code> <B>[Required]</B><br/> |
| 209 | +<code>string</code> |
| 210 | +</td> |
| 211 | +<td> |
| 212 | + Required input version of the exec CredentialProviderRequest. The returned CredentialProviderResponse |
| 213 | +MUST use the same encoding version as the input. Current supported values are: |
| 214 | +- credentialprovider.kubelet.k8s.io/v1alpha1</td> |
| 215 | +</tr> |
| 216 | + |
| 217 | + |
| 218 | +<tr><td><code>args</code><br/> |
| 219 | +<code>[]string</code> |
| 220 | +</td> |
| 221 | +<td> |
| 222 | + Arguments to pass to the command when executing it.</td> |
| 223 | +</tr> |
| 224 | + |
| 225 | + |
| 226 | +<tr><td><code>env</code><br/> |
| 227 | +<a href="#kubelet-config-k8s-io-v1alpha1-ExecEnvVar"><code>[]ExecEnvVar</code></a> |
| 228 | +</td> |
| 229 | +<td> |
| 230 | + Env defines additional environment variables to expose to the process. These |
| 231 | +are unioned with the host's environment, as well as variables client-go uses |
| 232 | +to pass argument to the plugin.</td> |
| 233 | +</tr> |
| 234 | + |
| 235 | + |
| 236 | +</tbody> |
| 237 | +</table> |
| 238 | + |
| 239 | + |
| 240 | + |
| 241 | +## `ExecEnvVar` {#kubelet-config-k8s-io-v1alpha1-ExecEnvVar} |
| 242 | + |
| 243 | + |
| 244 | + |
| 245 | + |
| 246 | +**Appears in:** |
| 247 | + |
| 248 | +- [CredentialProvider](#kubelet-config-k8s-io-v1alpha1-CredentialProvider) |
| 249 | + |
| 250 | + |
| 251 | +ExecEnvVar is used for setting environment variables when executing an exec-based |
| 252 | +credential plugin. |
| 253 | + |
| 254 | +<table class="table"> |
| 255 | +<thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> |
| 256 | +<tbody> |
| 257 | + |
| 258 | + |
| 259 | + |
| 260 | +<tr><td><code>name</code> <B>[Required]</B><br/> |
| 261 | +<code>string</code> |
| 262 | +</td> |
| 263 | +<td> |
| 264 | + <span class="text-muted">No description provided.</span> |
| 265 | + </td> |
| 266 | +</tr> |
| 267 | + |
| 268 | + |
| 269 | +<tr><td><code>value</code> <B>[Required]</B><br/> |
| 270 | +<code>string</code> |
| 271 | +</td> |
| 272 | +<td> |
| 273 | + <span class="text-muted">No description provided.</span> |
| 274 | + </td> |
| 275 | +</tr> |
| 276 | + |
| 277 | + |
| 278 | +</tbody> |
| 279 | +</table> |
| 280 | + |
| 281 | + |
0 commit comments