mirror of https://github.com/istio/istio.io.git
1606 lines
56 KiB
HTML
1606 lines
56 KiB
HTML
---
|
|
title: istioctl
|
|
description: Istio control interface
|
|
generator: pkg-collateral-docs
|
|
number_of_entries: 19
|
|
---
|
|
<p>
|
|
Istio configuration command line utility.</p>
|
|
<p>Create, list, modify, and delete configuration resources in the Istio
|
|
system.</p>
|
|
<p>Available routing and traffic management configuration types:</p>
|
|
<p> [virtualservice gateway destinationrule serviceentry httpapispec httpapispecbinding quotaspec quotaspecbinding servicerole servicerolebinding policy]</p>
|
|
<p>Legacy routing and traffic management configuration types:</p>
|
|
<p> [routerule egressrule destinationpolicy]</p>
|
|
<p>See https://istio.io/docs/reference/ for an overview of Istio routing.</p>
|
|
<p></p>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 context-create">istioctl context-create</h2>
|
|
<p>Create a kubeconfig file suitable for use with istioctl in a non kubernetes environment</p>
|
|
<pre class="language-bash"><code>istioctl context-create --api-server http://<ip>:<port> [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--api-server <string></code></td>
|
|
<td></td>
|
|
<td>URL for Istio api server (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--context <string></code></td>
|
|
<td></td>
|
|
<td>Kubernetes configuration file context name (default `istio`)</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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 context-create Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Create a config file for the api server.
|
|
istioctl context-create --api-server http://127.0.0.1:8080
|
|
|
|
</code></pre>
|
|
<h2 id="istioctl create">istioctl create</h2>
|
|
<p>Create policies and rules</p>
|
|
<pre class="language-bash"><code>istioctl create [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--file <string></code></td>
|
|
<td><code>-f</code></td>
|
|
<td>Input file with the content of the configuration objects (if not set, command reads from the standard input) (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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 create Examples">Examples</h3>
|
|
<pre class="language-bash"><code>istioctl create -f example-routing.yaml
|
|
</code></pre>
|
|
<h2 id="istioctl delete">istioctl delete</h2>
|
|
<p>Delete policies or rules</p>
|
|
<pre class="language-bash"><code>istioctl delete <type> <name> [<name2> ... <nameN>] [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--file <string></code></td>
|
|
<td><code>-f</code></td>
|
|
<td>Input file with the content of the configuration objects (if not set, command reads from the standard input) (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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 delete Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Delete a rule using the definition in example-routing.yaml.
|
|
istioctl delete -f example-routing.yaml
|
|
|
|
# Delete the virtual service bookinfo
|
|
istioctl delete virtualservice bookinfo
|
|
|
|
</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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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">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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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-networking-config">istioctl experimental convert-networking-config</h2>
|
|
<p>Converts sets of v1alpha1 configs to v1alpha3 equivalents on a best effort basis. The output should be considered a starting point for your v1alpha3 configs and probably require some minor modification. Warnings will (hopefully) be generated where configs cannot be converted perfectly, or in certain edge cases. The input must be the set of configs that would be in place in an environment at a given time. This allows the command to attempt to create and merge output configs intelligently.Output configs are given the namespace and domain of the first input config so it is recommended that input configs be part of the same namespace and domain.</p>
|
|
<pre class="language-bash"><code>istioctl experimental convert-networking-config [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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-networking-config Examples">Examples</h3>
|
|
<pre class="language-bash"><code>istioctl experimental convert-networking-config -f v1alpha1/default-route.yaml -f v1alpha1/header-delay.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 service to
|
|
find the following top-level service 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 service 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 <service name>...
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 service metrics for productpage service
|
|
istioctl experimental metrics productpage
|
|
|
|
# Retrieve service metrics for various services in the different namespaces
|
|
istioctl experimental metrics productpage.foo reviews.bar ratings.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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 get">istioctl get</h2>
|
|
<p>Retrieve policies and rules</p>
|
|
<pre class="language-bash"><code>istioctl get <type> [<name>] [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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:yaml|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 get Examples">Examples</h3>
|
|
<pre class="language-bash"><code># List all virtual services
|
|
istioctl get virtualservices
|
|
|
|
# List all destination rules
|
|
istioctl get destinationrules
|
|
|
|
# Get a specific virtual service named bookinfo
|
|
istioctl get virtualservice bookinfo
|
|
|
|
</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, 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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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>
|
|
</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>
|
|
Retrieves proxy configuration for the specified pod from the endpoint proxy or Pilot when running in Kubernetes.
|
|
It is also able to retrieve the state of the entire mesh by using mesh instead of <pod-name>. This is only available when querying Pilot.</p>
|
|
<p>Available configuration types:</p>
|
|
<p> Endpoint:
|
|
[clusters listeners routes static]</p>
|
|
<p> Pilot:
|
|
[ads eds]</p>
|
|
<p></p>
|
|
<pre class="language-bash"><code>istioctl proxy-config <endpoint|pilot> <pod-name|mesh> [<configuration-type>] [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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-config Examples">Examples</h3>
|
|
<pre class="language-bash"><code># Retrieve all config for productpage-v1-bb8d5cbc7-k7qbm pod from the endpoint proxy
|
|
istioctl proxy-config endpoint productpage-v1-bb8d5cbc7-k7qbm
|
|
|
|
# Retrieve eds config for productpage-v1-bb8d5cbc7-k7qbm pod from Pilot
|
|
istioctl proxy-config pilot productpage-v1-bb8d5cbc7-k7qbm eds
|
|
|
|
# Retrieve ads config for the mesh from Pilot
|
|
istioctl proxy-config pilot mesh ads
|
|
|
|
# Retrieve static config for productpage-v1-bb8d5cbc7-k7qbm pod in the application namespace from the endpoint proxy
|
|
istioctl proxy-config endpoint -n application productpage-v1-bb8d5cbc7-k7qbm static
|
|
</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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 replace">istioctl replace</h2>
|
|
<p>Replace existing policies and rules</p>
|
|
<pre class="language-bash"><code>istioctl replace [flags]
|
|
</code></pre>
|
|
<table class="command-flags">
|
|
<thead>
|
|
<th>Flags</th>
|
|
<th>Shorthand</th>
|
|
<th>Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>--file <string></code></td>
|
|
<td><code>-f</code></td>
|
|
<td>Input file with the content of the configuration objects (if not set, command reads from the standard input) (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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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 replace Examples">Examples</h3>
|
|
<pre class="language-bash"><code>istioctl replace -f example-routing.yaml
|
|
</code></pre>
|
|
<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>--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 `$KUBECONFIG else $HOME/.kube/config`)</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 called information, scopes can be any of [default] (default ``)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>--log_output_level <string></code></td>
|
|
<td></td>
|
|
<td>The minimum logging level of messages to output, can be one of [debug, info, warn, error, 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>The minimum logging level at which stack traces are captured, can be one of [debug, info, warn, error, 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>
|