<p>I install with this</p>
<pre><code>istioctl install --set profile=demo
</code></pre>
<p>and I got this error</p>
<pre><code>2020-06-23T06:53:12.111697Zerrorinstallerfailed to create &quot;PeerAuthentication/istio-s
ystem/grafana-ports-mtls-disabled&quot;: Timeout: request did not complete within requested timeout 30s
✘ Addons encountered an error: failed to create &quot;PeerAuthentication/istio-system/grafana-ports-mtls-
disabled&quot;: Timeout: request did not complete within requested timeout 30s
- Pruning removed resources                                                                         
Error: failed to apply manifests: errors occurred during operation
</code></pre>

Possathon Chitpidakorn
<p>I assume there is something wrong either with</p>
<ul>
<li>istioctl install and aws</li>
<li>your cluster</li>
</ul>
<p>You could try to create new eks cluster and check if it works, if it´s not I would suggest to open new thread on <a href="https://github.com/istio/istio/issues" rel="nofollow noreferrer">istio github</a>.</p>
<hr />
<p>If you have same problem as @Possathon Chitpidakorn, you can use istio operator as a <strong>workaround</strong> to install istio, more about it below.</p>
<h2><a href="https://istio.io/latest/blog/2019/introducing-istio-operator/#the-operator-api" rel="nofollow noreferrer">istio operator</a></h2>
<blockquote>
<p>Every operator implementation requires a custom resource definition (CRD) to define its custom resource, that is, its API. Istio’s operator API is defined by the IstioControlPlane CRD, which is generated from an IstioControlPlane proto. The API supports all of Istio’s current configuration profiles using a single field to select the profile. For example, the following IstioControlPlane resource configures Istio using the demo profile:</p>
</blockquote>
<pre><code>apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
metadata:
  namespace: istio-operator
  name: example-istiocontrolplane
spec:
  profile: demo
</code></pre>
<blockquote>
<p>You can then customize the configuration with additional settings. For example, to disable telemetry:</p>
</blockquote>
<pre><code>apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
metadata:
  namespace: istio-operator
  name: example-istiocontrolplane
spec:
  profile: demo
  telemetry:
    enabled: false
</code></pre>
<h2>How to <a href="https://istio.io/latest/docs/setup/install/standalone-operator/" rel="nofollow noreferrer">install istio with istio operator</a></h2>
<blockquote>
<p>Prerequisites</p>
</blockquote>
<ul>
<li>Perform any necessary <a href="https://istio.io/latest/docs/setup/platform-setup/" rel="nofollow noreferrer">platform-specific setup</a>.</li>
<li>Check the <a href="https://istio.io/latest/docs/ops/deployment/requirements/" rel="nofollow noreferrer">Requirements for Pods and Services</a>.</li>
<li>Install the <a href="https://istio.io/latest/docs/ops/diagnostic-tools/istioctl/" rel="nofollow noreferrer">istioctl command</a>.</li>
</ul>
<blockquote>
<p>Deploy the <strong>Istio operator:</strong></p>
</blockquote>
<pre><code>istioctl operator init
</code></pre>
<p>This command runs the operator by creating the following resources in the istio-operator namespace:</p>
<ul>
<li>The operator custom resource definition</li>
<li>The operator controller deployment</li>
<li>A service to access operator metrics</li>
<li>Necessary Istio operator RBAC rules</li>
</ul>
<blockquote>
<p>See the available istioctl operator init flags to control which namespaces the &gt;controller and Istio are installed into and the installed Istio image sources and versions.</p>
</blockquote>
<hr />
<p>You can alternatively deploy the operator using Helm:</p>
<pre><code>$ helm template manifests/charts/istio-operator/ \
  --set hub=docker.io/istio \
  --set tag=1.6.3 \
  --set operatorNamespace=istio-operator \
  --set istioNamespace=istio-system | kubectl apply -f -
</code></pre>
<p>Note that you need to download <a href="https://istio.io/latest/docs/setup/getting-started/#download" rel="nofollow noreferrer">the Istio release</a> to run the above command.</p>
<hr />
<blockquote>
<p>To install the Istio demo configuration profile using the operator, run the following command:</p>
</blockquote>
<pre><code>$ kubectl create ns istio-system
$ kubectl apply -f - &lt;&lt;EOF
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: istio-system
  name: example-istiocontrolplane
spec:
  profile: demo
EOF
</code></pre>
<blockquote>
<p>The controller will detect the IstioOperator resource and then install the Istio components corresponding to the specified (demo) configuration.</p>
</blockquote>
