<p>I am going through enabling mTLS to my mesh, and came across this below command.</p>

<pre><code>istioctl manifest apply --set profile=demo,values.global.mtls.enabled=true
</code></pre>

<p>I also found this below yaml file enable mTLS</p>

<pre><code>apiVersion: "authentication.istio.io/v1alpha1"
kind: "MeshPolicy"
metadata:
  name: "default"
spec:
  peers:
  - mtls: {}
</code></pre>

<p>What is the difference betwen command and yaml file? Are they both doing same thing?</p>

<p>Yes they do the same. Doing it via istioctl is imperative way versus doing it via yaml is declarative way.</p>
