diff --git a/examples/apps/djapp/1_base_application/base_app_irsa.yaml b/examples/apps/djapp/1_base_application/base_app_irsa.yaml new file mode 100644 index 00000000..24620357 --- /dev/null +++ b/examples/apps/djapp/1_base_application/base_app_irsa.yaml @@ -0,0 +1,136 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: prod +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: dj + namespace: prod +spec: + replicas: 1 + selector: + matchLabels: + app: dj + version: v1 + template: + metadata: + labels: + app: dj + version: v1 + spec: + serviceAccountName: prod-proxies + containers: + - name: dj + image: "672518094988.dkr.ecr.us-west-2.amazonaws.com/hello-world:v1.0" + imagePullPolicy: Always + ports: + - containerPort: 9080 + env: + - name: "HW_RESPONSE" + value: "DJ Reporting for duty!" +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: metal-v1 + namespace: prod +spec: + replicas: 1 + selector: + matchLabels: + app: metal + version: v1 + template: + metadata: + labels: + app: metal + version: v1 + spec: + serviceAccountName: prod-proxies + containers: + - name: metal + image: "672518094988.dkr.ecr.us-west-2.amazonaws.com/hello-world:v1.0" + imagePullPolicy: Always + ports: + - containerPort: 9080 + env: + - name: "HW_RESPONSE" + value: "[\"Megadeth\",\"Judas Priest\"]" +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: jazz-v1 + namespace: prod +spec: + replicas: 1 + selector: + matchLabels: + app: jazz + version: v1 + template: + metadata: + labels: + app: jazz + version: v1 + spec: + serviceAccountName: prod-proxies + containers: + - name: jazz + image: "672518094988.dkr.ecr.us-west-2.amazonaws.com/hello-world:v1.0" + imagePullPolicy: Always + ports: + - containerPort: 9080 + env: + - name: "HW_RESPONSE" + value: "[\"Astrud Gilberto\",\"Miles Davis\"]" +--- +apiVersion: v1 +kind: Service +metadata: + name: dj + namespace: prod + labels: + app: dj +spec: + ports: + - port: 9080 + name: http + selector: + app: dj +--- +apiVersion: v1 +kind: Service +metadata: + name: metal-v1 + namespace: prod + labels: + app: metal + version: v1 +spec: + ports: + - port: 9080 + name: http + selector: + app: metal + version: v1 +--- +apiVersion: v1 +kind: Service +metadata: + name: jazz-v1 + namespace: prod + labels: + app: jazz + version: v1 +spec: + ports: + - port: 9080 + name: http + selector: + app: jazz + version: v1 +--- diff --git a/examples/apps/djapp/3_canary_new_version/v2_app_irsa.yaml b/examples/apps/djapp/3_canary_new_version/v2_app_irsa.yaml new file mode 100644 index 00000000..99f8d518 --- /dev/null +++ b/examples/apps/djapp/3_canary_new_version/v2_app_irsa.yaml @@ -0,0 +1,186 @@ +--- +apiVersion: appmesh.k8s.aws/v1beta2 +kind: VirtualRouter +metadata: + name: jazz-router + namespace: prod +spec: + listeners: + - portMapping: + port: 9080 + protocol: http + routes: + - name: jazz-route + httpRoute: + match: + prefix: / + action: + weightedTargets: + - virtualNodeRef: + name: jazz-v1 + weight: 0 + - virtualNodeRef: + name: jazz-v2 + weight: 1 +--- +apiVersion: appmesh.k8s.aws/v1beta2 +kind: VirtualRouter +metadata: + name: metal-router + namespace: prod +spec: + listeners: + - portMapping: + port: 9080 + protocol: http + routes: + - name: metal-route + httpRoute: + match: + prefix: / + action: + weightedTargets: + - virtualNodeRef: + name: metal-v1 + weight: 50 + - virtualNodeRef: + name: metal-v2 + weight: 50 +--- +apiVersion: appmesh.k8s.aws/v1beta2 +kind: VirtualNode +metadata: + name: jazz-v2 + namespace: prod +spec: + podSelector: + matchLabels: + app: jazz + version: v2 + listeners: + - portMapping: + port: 9080 + protocol: http + healthCheck: + protocol: http + path: '/ping' + healthyThreshold: 2 + unhealthyThreshold: 2 + timeoutMillis: 2000 + intervalMillis: 5000 + serviceDiscovery: + dns: + hostname: jazz-v2.prod.svc.cluster.local +--- +apiVersion: appmesh.k8s.aws/v1beta2 +kind: VirtualNode +metadata: + name: metal-v2 + namespace: prod +spec: + podSelector: + matchLabels: + app: metal + version: v2 + listeners: + - portMapping: + port: 9080 + protocol: http + healthCheck: + protocol: http + path: '/ping' + healthyThreshold: 2 + unhealthyThreshold: 2 + timeoutMillis: 2000 + intervalMillis: 5000 + serviceDiscovery: + dns: + hostname: metal-v2.prod.svc.cluster.local +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: jazz-v2 + namespace: prod +spec: + replicas: 1 + selector: + matchLabels: + app: jazz + version: v2 + template: + metadata: + labels: + app: jazz + version: v2 + spec: + serviceAccountName: prod-proxies + containers: + - name: jazz + image: "672518094988.dkr.ecr.us-west-2.amazonaws.com/hello-world:v1.0" + ports: + - containerPort: 9080 + env: + - name: "HW_RESPONSE" + value: "[\"Astrud Gilberto (Bahia, Brazil)\",\"Miles Davis (Alton, Illinois)\"]" +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: metal-v2 + namespace: prod +spec: + replicas: 1 + selector: + matchLabels: + app: metal + version: v2 + template: + metadata: + labels: + app: metal + version: v2 + spec: + serviceAccountName: prod-proxies + containers: + - name: metal + image: "672518094988.dkr.ecr.us-west-2.amazonaws.com/hello-world:v1.0" + ports: + - containerPort: 9080 + env: + - name: "HW_RESPONSE" + value: "[\"Megadeth (Los Angeles, California)\",\"Judas Priest (West Bromwich, England)\"]" + +--- +apiVersion: v1 +kind: Service +metadata: + name: jazz-v2 + namespace: prod + labels: + app: jazz + version: v2 +spec: + ports: + - port: 9080 + name: http + selector: + app: jazz + version: v2 +--- +apiVersion: v1 +kind: Service +metadata: + name: metal-v2 + namespace: prod + labels: + app: metal + version: v2 +spec: + ports: + - port: 9080 + name: http + selector: + app: metal + version: v2 +---