Sample Service Mesh Pattern Files πŸ“„

Hello Everyone,
Here I’ll be posting about some pattern files which I come across, most of them will be sample ones to help you get started with them : )

#staymeshy :tada:

4 Likes

A Istio Service Mesh Pattern File :point_down:

name: IstioSM
version: 1.0.1
services:
  istio:
    type: IstioMesh
    namespace: istio-system
    settings:
      version: 1.9.1
    traits:
      mTLS:
        policy: mutual
        namespaces:
          - istio-test
      automaticSidecarInjection:
        namespaces:
          - default
          - istio-test
​
  grafana:
    type: GrafanaIstioAddon
    namespace: istio-system
    dependsOn:
      - istio
      - prometheus
​
  prometheus:
    type: PrometheusIstioAddon
    namespace: istio-system
    dependsOn:
      - istio
      
  prometheus2:
    type: PrometheusIstioAddon
    namespace: istio-system
    dependsOn:
      - istio
1 Like

Probably this might be a bit more useful to deal with Filter Patterns :eyes:

name: IstioFilterPatternXYZ
version: 0.0.1
services:
  genericIstioFilter:
    type: EnvoyFilterIstio
    namespace: test-ns
    settings:
      configPatches:
      - applyTo: NETWORK_FILTER
        match:
          context: SIDECAR_OUTBOUND 
          listener:
            portNumber: 9307
            filterChain:
              filter:
                name: "envoy.filters.network.tcp_proxy"
        patch:
          operation: INSERT_BEFORE
          value:
            name: "envoy.config.filter.network.custom_protocol"
            typed_config:
             ...
      - applyTo: NETWORK_FILTER 
        match:
          listener:
            filterChain:
              filter:
                name: "envoy.filters.network.http_connection_manager"
        patch:
          operation: MERGE
          value:
            name: "envoy.filters.network.http_connection_manager"
            typed_config:
              "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager"
              common_http_protocol_options:
                idle_timeout: 30s
3 Likes

I have another one to add. This may be useful for deploying an application using patterns :eyes:

name: ApplicationPattern
services:
  app:
    type: Application
    namespace: test
    settings:
      replicas: 1
      containers:
        - name: svc-demo
          image: utkarsh23/meshy:v5
          ports:
            - name: http
              containerPort: 8080

3 Likes

Hi @AdiKris Would you please update/replace the IstioFilterPatternXYZ file with:

Hi everyone!
Here are some URL samples:
Applications: https://raw.githubusercontent.com/service-mesh-patterns/service-mesh-patterns/master/samples/bookInfoPattern.yaml
Patterns: https://raw.githubusercontent.com/service-mesh-patterns/service-mesh-patterns/master/samples/IstioFilterPattern