Using itsioctl how can i define pdb for all resources and chnage min replicas

i m exploring istio1.5.1 with istioctl

this is how i am setting 2 replicas for istiod and kiali, giving full file so you can refer other options as well.

beware about bug in values.global.prometheusNamespace which will be fixed in 1.6 but the other better option will be fixed in 1.5.2

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  addonComponents:
    grafana:
      enabled: false
    istiocoredns:
      enabled: false
    kiali:
      enabled: true
      k8s:
        replicaCount: 2
    prometheus:
      enabled: false
    tracing:
      enabled: false

  components:
    base:
      enabled: true
    citadel:
      enabled: false
    cni:
      enabled: false
    galley:
      enabled: false
    nodeAgent:
      enabled: false
    policy:
      enabled: false
    sidecarInjector:
      enabled: false
    telemetry:
      enabled: false
    pilot:
      enabled: true
      k8s:
        replicaCount: 2

    egressGateways:
    - enabled: false

    ingressGateways:
    - enabled: true
      k8s:
        service:
          type: ClusterIP
          ports:
          - name: http2
            port: 80
            targetPort: 80
          - name: https
            port: 443
          
      name: istio-ingressgateway

  values:
    global:
      prometheusNamespace: monitoring
      proxy:
        accessLogFile: /dev/stdout

PDB would be something like this, refer the api doc for more options.

    pilot:
      enabled: true
      k8s:
        replicaCount: 2
        podDisruptionBudget:
          minAvailable: 2
          maxUnavailable: 10