mirror of https://github.com/istio/istio.io.git
2073 lines
77 KiB
HTML
2073 lines
77 KiB
HTML
---
|
|
title: istioctl
|
|
description: Istio control interface.
|
|
generator: pkg-collateral-docs
|
|
number_of_entries: 27
|
|
---
|
|
<p>Istio configuration command line utility for service operators to
|
|
debug and diagnose their Istio mesh.
|
|
</p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h2 id="istioctl-authn">istioctl authn</h2>
|
|
<p>
|
|
A group of commands used to interact with Istio authentication policies.
|
|
tls-check
|
|
</p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-authn Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Check whether TLS setting are matching between authentication policy and destination rules:
|
|
istioctl authn tls-check
|
|
</code></pre>
|
|
<h2 id="istioctl-authn-tls-check">istioctl authn tls-check</h2>
|
|
<p>
|
|
Requests Pilot to check for what authentication policy and destination rule it uses for each service in
|
|
service registry, and check if TLS settings are compatible between them.
|
|
</p>
|
|
<pre class="language-bash"><code>istioctl authn tls-check [<service>] [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-authn-tls-check Examples">Examples</h3>
|
|
<pre class="language-bash"><code>
|
|
# Check settings for all known services in the service registry:
|
|
istioctl authn tls-check
|
|
|
|
# Check settings for a specific service
|
|
istioctl authn tls-check foo.bar.svc.cluster.local
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-deregister">istioctl deregister</h2>
|
|
<p>De-registers a service instance</p>
|
|
<pre class="language-bash"><code>istioctl deregister <svcname> <ip> [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-deregister Examples">Examples</h3>
|
|
<pre class="language-bash"><code># de-register an endpoint 172.17.0.2 from service my-svc:
|
|
istioctl deregister my-svc 172.17.0.2
|
|
</code></pre>
|
|
<h2 id="istioctl-experimental">istioctl experimental</h2>
|
|
<p>Experimental commands that may be modified or deprecated</p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h2 id="istioctl-experimental-convert-ingress">istioctl experimental convert-ingress</h2>
|
|
<p>Converts Ingresses into VirtualService configuration on a best effort basis. The output should be considered a starting point for your Istio configuration and probably require some minor modification. Warnings will be generated where configs cannot be converted perfectly. The input must be a Kubernetes Ingress. The conversion of v1alpha1 Istio rules has been removed from istioctl.</p>
|
|
<pre class="language-bash"><code>istioctl experimental convert-ingress [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--filenames <stringSlice></code></td>
|
|
<td><code>-f</code></td>
|
|
<td>Input filenames (default `[]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output filename (default `-`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-experimental-convert-ingress Examples">Examples</h3>
|
|
<pre class="language-bash"><code>istioctl experimental convert-ingress -f samples/bookinfo/platform/kube/bookinfo-ingress.yaml
|
|
</code></pre>
|
|
<h2 id="istioctl-experimental-metrics">istioctl experimental metrics</h2>
|
|
<p>
|
|
Prints the metrics for the specified service(s) when running in Kubernetes.</p>
|
|
<p>This command finds a Prometheus pod running in the specified istio system
|
|
namespace. It then executes a series of queries per requested workload to
|
|
find the following top-level workload metrics: total requests per second,
|
|
error rate, and request latency at p50, p90, and p99 percentiles. The
|
|
query results are printed to the console, organized by workload name.</p>
|
|
<p>All metrics returned are from server-side reports. This means that latencies
|
|
and error rates are from the perspective of the service itself and not of an
|
|
individual client (or aggregate set of clients). Rates and latencies are
|
|
calculated over a time interval of 1 minute.
|
|
</p>
|
|
<pre class="language-bash"><code>istioctl experimental metrics <workload name>...
|
|
</code></pre>
|
|
<p>
|
|
m
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-experimental-metrics Examples">Examples</h3>
|
|
<pre class="language-bash"><code>
|
|
# Retrieve workload metrics for productpage-v1 workload
|
|
istioctl experimental metrics productpage-v1
|
|
|
|
# Retrieve workload metrics for various services in the different namespaces
|
|
istioctl experimental metrics productpage-v1.foo reviews-v1.bar ratings-v1.baz
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-experimental-rbac">istioctl experimental rbac</h2>
|
|
<p>
|
|
A group of commands used to interact with Istio RBAC policies. For example, Query whether a specific
|
|
request is allowed or denied under the current Istio RBAC policies.</p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-experimental-rbac Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Query if user test is allowed to GET /v1/health of service rating.
|
|
istioctl experimental rbac can -u test GET rating /v1/health
|
|
</code></pre>
|
|
<h2 id="istioctl-experimental-rbac-can">istioctl experimental rbac can</h2>
|
|
<p>
|
|
This command lets you query whether a specific request will be allowed or denied under current Istio
|
|
RBAC policies. It constructs a fake request with the custom subject and action specified in the command
|
|
line to check if your Istio RBAC policies are working as expected. Note the fake request is only used
|
|
locally to evaluate the effect of the Istio RBAC policies, no actual request will be issued.</p>
|
|
<p>METHOD is the HTTP method being taken, like GET, POST, etc. SERVICE is the short service name the action
|
|
is being taken on. PATH is the HTTP path within the service.</p>
|
|
<pre class="language-bash"><code>istioctl experimental rbac can METHOD SERVICE PATH [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--action-properties <stringArray></code></td>
|
|
<td><code>-a</code></td>
|
|
<td>[Action] Additional data about the action. Specified as name1=value1,name2=value2,... (default `[]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--groups <string></code></td>
|
|
<td><code>-g</code></td>
|
|
<td>[Subject] Group name/ID that the subject represents. (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--subject-properties <stringArray></code></td>
|
|
<td><code>-s</code></td>
|
|
<td>[Subject] Additional data about the subject. Specified as name1=value1,name2=value2,... (default `[]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--user <string></code></td>
|
|
<td><code>-u</code></td>
|
|
<td>[Subject] User name/ID that the subject represents. (default ``)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-experimental-rbac-can Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Query if user test is allowed to GET /v1/health of service rating.
|
|
istioctl experimental rbac can -u test GET rating /v1/health
|
|
|
|
# Query if service product-page is allowed to POST to /data of service rating with label version=dev.
|
|
istioctl experimental rbac can -s service=product-page POST rating /data -a version=dev
|
|
</code></pre>
|
|
<h2 id="istioctl-gen-deploy">istioctl gen-deploy</h2>
|
|
<p>istioctl gen-deploy produces deployment files to run the Istio.</p>
|
|
<pre class="language-bash"><code>istioctl gen-deploy [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--debug</code></td>
|
|
<td></td>
|
|
<td>If true, uses debug images instead of release images </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--helm-chart-dir <string></code></td>
|
|
<td></td>
|
|
<td>The directory to find the helm charts used to render Istio deployments. -o yaml uses these to render the helm chart locally. (default `.`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--hyperkube-hub <string></code></td>
|
|
<td></td>
|
|
<td>The container registry to pull Hyperkube images from (default `quay.io/coreos/hyperkube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--hyperkube-tag <Hyperkube></code></td>
|
|
<td></td>
|
|
<td>The tag to use to pull the Hyperkube container (default `v1.7.6_coreos.0`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--ingress-node-port <uint16></code></td>
|
|
<td></td>
|
|
<td>If provided, Istio ingress proxies will run as a NodePort service mapped to the port provided by this flag. Note that this flag is ignored unless the "ingress" feature flag is provided too. (default `0`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--values <string></code></td>
|
|
<td></td>
|
|
<td>Path to the Helm values.yaml file used to render YAML deployments locally when --out=yaml. Flag values are ignored in favor of using the file directly. (default ``)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-gen-deploy Examples">Examples</h3>
|
|
<pre class="language-bash"><code>istioctl gen-deploy --values myvalues.yaml
|
|
</code></pre>
|
|
<h2 id="istioctl-kube-inject">istioctl kube-inject</h2>
|
|
<p></p>
|
|
<p>kube-inject manually injects envoy sidecar into kubernetes
|
|
workloads. Unsupported resources are left unmodified so it is safe to
|
|
run kube-inject over a single file that contains multiple Service,
|
|
ConfigMap, Deployment, etc. definitions for a complex application. Its
|
|
best to do this when the resource is initially created.</p>
|
|
<p>k8s.io/docs/concepts/workloads/pods/pod-overview/#pod-templates is
|
|
updated for Job, DaemonSet, ReplicaSet, Pod and Deployment YAML resource
|
|
documents. Support for additional pod-based resource types can be
|
|
added as necessary.</p>
|
|
<p>The Istio project is continually evolving so the Istio sidecar
|
|
configuration may change unannounced. When in doubt re-run istioctl
|
|
kube-inject on deployments to get the most up-to-date changes.</p>
|
|
<p>To override the sidecar injection template built into istioctl, the
|
|
parameters --injectConfigFile or --injectConfigMapName can be used.
|
|
Both options override any other template configuration parameters, eg.
|
|
--hub and --tag. These options would typically be used with the
|
|
file/configmap created with a new Istio release.
|
|
</p>
|
|
<pre class="language-bash"><code>istioctl kube-inject [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--filename <string></code></td>
|
|
<td><code>-f</code></td>
|
|
<td>Input Kubernetes resource filename (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--injectConfigFile <string></code></td>
|
|
<td></td>
|
|
<td>injection configuration filename. Cannot be used with --injectConfigMapName (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--injectConfigMapName <string></code></td>
|
|
<td></td>
|
|
<td>ConfigMap name for Istio sidecar injection, key should be "config".This option overrides any other sidecar injection config options, eg. --hub (default `istio-sidecar-injector`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--meshConfigFile <string></code></td>
|
|
<td></td>
|
|
<td>mesh configuration filename. Takes precedence over --meshConfigMapName if set (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--meshConfigMapName <string></code></td>
|
|
<td></td>
|
|
<td>ConfigMap name for Istio mesh configuration, key should be "mesh" (default `istio`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Modified output Kubernetes resource filename (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--readinessFailureThreshold <uint32></code></td>
|
|
<td></td>
|
|
<td>The threshold for successive failed readiness probes. (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--readinessInitialDelaySeconds <uint32></code></td>
|
|
<td></td>
|
|
<td>The initial delay (in seconds) for the readiness probe. (default `1`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--readinessPeriodSeconds <uint32></code></td>
|
|
<td></td>
|
|
<td>The period between readiness probes (in seconds). (default `2`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--statusPort <int></code></td>
|
|
<td></td>
|
|
<td>HTTP Port on which to serve pilot agent status. The path /healthz/ can be used for health checking. If zero, agent status will not be provided. (default `15020`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-kube-inject Examples">Examples</h3>
|
|
<pre class="language-bash"><code>
|
|
# Update resources on the fly before applying.
|
|
kubectl apply -f <(istioctl kube-inject -f <resource.yaml>)
|
|
|
|
# Create a persistent version of the deployment with Envoy sidecar
|
|
# injected.
|
|
istioctl kube-inject -f deployment.yaml -o deployment-injected.yaml
|
|
|
|
# Update an existing deployment.
|
|
kubectl get deployment -o yaml | istioctl kube-inject -f - | kubectl apply -f -
|
|
|
|
# Create a persistent version of the deployment with Envoy sidecar
|
|
# injected configuration from kubernetes configmap 'istio-inject'
|
|
istioctl kube-inject -f deployment.yaml -o deployment-injected.yaml --injectConfigMapName istio-inject
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-config">istioctl proxy-config</h2>
|
|
<p>A group of commands used to retrieve information about proxy configuration from the Envoy config dump</p>
|
|
<p>
|
|
pc
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output format: one of json|short (default `short`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-config Examples">Examples</h3>
|
|
<pre class="language-bash"><code> # Retrieve information about proxy configuration from an Envoy instance.
|
|
istioctl proxy-config <clusters|listeners|routes|endpoints|bootstrap> <pod-name>
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-config-bootstrap">istioctl proxy-config bootstrap</h2>
|
|
<p>Retrieve information about bootstrap configuration for the Envoy instance in the specified pod.</p>
|
|
<pre class="language-bash"><code>istioctl proxy-config bootstrap <pod-name> [flags]
|
|
</code></pre>
|
|
<p>
|
|
b
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output format: one of json|short (default `short`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-config-bootstrap Examples">Examples</h3>
|
|
<pre class="language-bash"><code> # Retrieve full bootstrap configuration for a given pod from Envoy.
|
|
istioctl proxy-config bootstrap <pod-name>
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-config-cluster">istioctl proxy-config cluster</h2>
|
|
<p>Retrieve information about cluster configuration for the Envoy instance in the specified pod.</p>
|
|
<pre class="language-bash"><code>istioctl proxy-config cluster <pod-name> [flags]
|
|
</code></pre>
|
|
<p>
|
|
clustersc
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--direction <string></code></td>
|
|
<td></td>
|
|
<td>Filter clusters by Direction field (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--fqdn <string></code></td>
|
|
<td></td>
|
|
<td>Filter clusters by substring of Service FQDN field (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output format: one of json|short (default `short`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--port <int></code></td>
|
|
<td></td>
|
|
<td>Filter clusters by Port field (default `0`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--subset <string></code></td>
|
|
<td></td>
|
|
<td>Filter clusters by substring of Subset field (default ``)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-config-cluster Examples">Examples</h3>
|
|
<pre class="language-bash"><code> # Retrieve summary about cluster configuration for a given pod from Envoy.
|
|
istioctl proxy-config clusters <pod-name>
|
|
|
|
# Retrieve cluster summary for clusters with port 9080.
|
|
istioctl proxy-config clusters <pod-name> --port 9080
|
|
|
|
# Retrieve full cluster dump for clusters that are inbound with a FQDN of details.default.svc.cluster.local.
|
|
istioctl proxy-config clusters <pod-name> --fqdn details.default.svc.cluster.local --direction inbound -o json
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-config-endpoint">istioctl proxy-config endpoint</h2>
|
|
<p>Retrieve information about endpoint configuration for the Envoy instance in the specified pod.</p>
|
|
<pre class="language-bash"><code>istioctl proxy-config endpoint <pod-name> [flags]
|
|
</code></pre>
|
|
<p>
|
|
endpointsep
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--address <string></code></td>
|
|
<td></td>
|
|
<td>Filter endpoints by address field (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--cluster <string></code></td>
|
|
<td></td>
|
|
<td>Filter endpoints by cluster name field (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output format: one of json|short (default `short`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--port <int></code></td>
|
|
<td></td>
|
|
<td>Filter endpoints by Port field (default `0`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--status <string></code></td>
|
|
<td></td>
|
|
<td>Filter endpoints by status field (default ``)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-config-endpoint Examples">Examples</h3>
|
|
<pre class="language-bash"><code> # Retrieve full endpoint configuration for a given pod from Envoy.
|
|
istioctl proxy-config endpoint <pod-name>
|
|
|
|
# Retrieve endpoint summary for endpoint with port 9080.
|
|
istioctl proxy-config endpoint <pod-name> --port 9080
|
|
|
|
# Retrieve full endpoint with a address (172.17.0.2).
|
|
istioctl proxy-config endpoint <pod-name> --address 172.17.0.2 -o json
|
|
|
|
# Retrieve full endpoint with a cluster name (outbound|9411||zipkin.istio-system.svc.cluster.local).
|
|
istioctl proxy-config endpoint <pod-name> --cluster "outbound|9411||zipkin.istio-system.svc.cluster.local" -o json
|
|
# Retrieve full endpoint with the status (healthy).
|
|
istioctl proxy-config endpoint <pod-name> --status healthy -ojson
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-config-listener">istioctl proxy-config listener</h2>
|
|
<p>Retrieve information about listener configuration for the Envoy instance in the specified pod.</p>
|
|
<pre class="language-bash"><code>istioctl proxy-config listener <pod-name> [flags]
|
|
</code></pre>
|
|
<p>
|
|
listenersl
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--address <string></code></td>
|
|
<td></td>
|
|
<td>Filter listeners by address field (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output format: one of json|short (default `short`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--port <int></code></td>
|
|
<td></td>
|
|
<td>Filter listeners by Port field (default `0`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--type <string></code></td>
|
|
<td></td>
|
|
<td>Filter listeners by type field (default ``)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-config-listener Examples">Examples</h3>
|
|
<pre class="language-bash"><code> # Retrieve summary about listener configuration for a given pod from Envoy.
|
|
istioctl proxy-config listeners <pod-name>
|
|
|
|
# Retrieve listener summary for listeners with port 9080.
|
|
istioctl proxy-config listeners <pod-name> --port 9080
|
|
|
|
# Retrieve full listener dump for HTTP listeners with a wildcard address (0.0.0.0).
|
|
istioctl proxy-config listeners <pod-name> --type HTTP --address 0.0.0.0 -o json
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-config-route">istioctl proxy-config route</h2>
|
|
<p>Retrieve information about route configuration for the Envoy instance in the specified pod.</p>
|
|
<pre class="language-bash"><code>istioctl proxy-config route <pod-name> [flags]
|
|
</code></pre>
|
|
<p>
|
|
routesr
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--name <string></code></td>
|
|
<td></td>
|
|
<td>Filter listeners by route name field (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--output <string></code></td>
|
|
<td><code>-o</code></td>
|
|
<td>Output format: one of json|short (default `short`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-config-route Examples">Examples</h3>
|
|
<pre class="language-bash"><code> # Retrieve summary about route configuration for a given pod from Envoy.
|
|
istioctl proxy-config routes <pod-name>
|
|
|
|
# Retrieve route summary for route 9080.
|
|
istioctl proxy-config route <pod-name> --name 9080
|
|
|
|
# Retrieve full route dump for route 9080
|
|
istioctl proxy-config route <pod-name> --name 9080 -o json
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-proxy-status">istioctl proxy-status</h2>
|
|
<p>
|
|
Retrieves last sent and last acknowledged xDS sync from Pilot to each Envoy in the mesh</p>
|
|
<p></p>
|
|
<pre class="language-bash"><code>istioctl proxy-status [<proxy-name>] [flags]
|
|
</code></pre>
|
|
<p>
|
|
ps
|
|
<p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="istioctl-proxy-status Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Retrieve sync status for all Envoys in a mesh
|
|
istioctl proxy-status
|
|
|
|
# Retrieve sync diff for a single Envoy and Pilot
|
|
istioctl proxy-status istio-egressgateway-59585c5b9c-ndc59.istio-system
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl-register">istioctl register</h2>
|
|
<p>Registers a service instance (e.g. VM) joining the mesh</p>
|
|
<pre class="language-bash"><code>istioctl register <svcname> <ip> [name1:]port1 [name2:]port2 ... [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--annotations <stringSlice></code></td>
|
|
<td><code>-a</code></td>
|
|
<td>List of string annotations to apply if creating a service/endpoint; e.g. -a foo=bar,test,x=y (default `[]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--labels <stringSlice></code></td>
|
|
<td><code>-l</code></td>
|
|
<td>List of labels to apply if creating a service/endpoint; e.g. -l env=prod,vers=2 (default `[]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--serviceaccount <string></code></td>
|
|
<td><code>-s</code></td>
|
|
<td>Service account to link to the service (default `default`)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h2 id="istioctl-version">istioctl version</h2>
|
|
<p>Prints out build version information</p>
|
|
<pre class="language-bash"><code>istioctl version [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>The name of the kubeconfig context to use (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--istioNamespace <string></code></td>
|
|
<td><code>-i</code></td>
|
|
<td>Istio system namespace (default `istio-system`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--kubeconfig <string></code></td>
|
|
<td><code>-c</code></td>
|
|
<td>Kubernetes configuration file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_as_json</code></td>
|
|
<td></td>
|
|
<td>Whether to format output as JSON or in plain console-friendly format </td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_caller <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated list of scopes for which to include caller information, scopes can be any of [ads, default, mcp, mcp-creds, model, rbac] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate <string></code></td>
|
|
<td></td>
|
|
<td>The path for the optional rotating log file (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_age <int></code></td>
|
|
<td></td>
|
|
<td>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_backups <int></code></td>
|
|
<td></td>
|
|
<td>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_rotate_max_size <int></code></td>
|
|
<td></td>
|
|
<td>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_stacktrace_level <string></code></td>
|
|
<td></td>
|
|
<td>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [ads, default, mcp, mcp-creds, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_target <stringArray></code></td>
|
|
<td></td>
|
|
<td>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--namespace <string></code></td>
|
|
<td><code>-n</code></td>
|
|
<td>Config namespace (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--platform <string></code></td>
|
|
<td><code>-p</code></td>
|
|
<td>Istio host platform (default `kube`)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--short</code></td>
|
|
<td><code>-s</code></td>
|
|
<td>Displays a short form of the version information </td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|