Skip to content

Commit

Permalink
Wait for Kafka startup in ecom-demo to avoid CrashLoopBackOff when ot…
Browse files Browse the repository at this point in the history
…her containers wait for initial Kafka startup (#101)
  • Loading branch information
orishoshan committed Jul 13, 2023
1 parent 5a03ba2 commit bb8f61b
Show file tree
Hide file tree
Showing 2 changed files with 110 additions and 6 deletions.
58 changes: 55 additions & 3 deletions static/code-examples/shadow-mode/ecom-demo-mtls.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -554,7 +554,11 @@ spec:
credentials-operator.otterize.com/cert-file-name: svid.pem
credentials-operator.otterize.com/ca-file-name: bundle.pem
spec:
serviceAccountName: default
serviceAccountName: checkoutservice
initContainers:
- name: wait-for-kafka
image: bitnami/kubectl
command: [ "kubectl", "rollout", "status", "-n", "otterize-ecom-demo", "statefulset/kafka" ]
containers:
- name: server
image: 'otterize/lab:checkoutservice-latest'
Expand Down Expand Up @@ -918,7 +922,11 @@ spec:
annotations:
credentials-operator.otterize.com/tls-secret-name: orderservice-credentials-secret
spec:
serviceAccountName: default
serviceAccountName: orderservice
initContainers:
- name: wait-for-kafka
image: bitnami/kubectl
command: [ "kubectl", "rollout", "status", "-n", "otterize-ecom-demo", "statefulset/kafka" ]
containers:
- name: server
image: 'otterize/lab:orderservice-latest'
Expand Down Expand Up @@ -1000,12 +1008,16 @@ spec:
credentials-operator.otterize.com/cert-file-name: svid.pem
credentials-operator.otterize.com/ca-file-name: bundle.pem
spec:
serviceAccountName: default
serviceAccountName: paymentservice
terminationGracePeriodSeconds: 5
volumes:
- name: otterize-credentials
secret:
secretName: paymentservice-credentials-secret
initContainers:
- name: wait-for-kafka
image: bitnami/kubectl
command: [ "kubectl", "rollout", "status", "-n", "otterize-ecom-demo", "statefulset/kafka" ]
containers:
- name: server
image: 'otterize/lab:paymentservice-latest'
Expand Down Expand Up @@ -1651,3 +1663,43 @@ spec:
resources:
requests:
storage: "8Gi"
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: statefulset-reader
rules:
- apiGroups: ["apps"]
resources: ["statefulsets"]
verbs: ["get", "watch", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: read-statefulsets
subjects:
- kind: ServiceAccount
name: paymentservice
- kind: ServiceAccount
name: orderservice
- kind: ServiceAccount
name: checkoutservice
roleRef:
kind: Role
name: statefulset-reader
apiGroup: rbac.authorization.k8s.io
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: checkoutservice
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: paymentservice
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: orderservice
58 changes: 55 additions & 3 deletions static/code-examples/shadow-mode/ecom-demo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -539,7 +539,11 @@ spec:
labels:
app: checkoutservice
spec:
serviceAccountName: default
serviceAccountName: checkoutservice
initContainers:
- name: wait-for-kafka
image: bitnami/kubectl
command: [ "kubectl", "rollout", "status", "-n", "otterize-ecom-demo", "statefulset/kafka" ]
containers:
- name: server
image: 'otterize/lab:checkoutservice-latest'
Expand Down Expand Up @@ -889,7 +893,11 @@ spec:
labels:
app: orderservice
spec:
serviceAccountName: default
serviceAccountName: orderservice
initContainers:
- name: wait-for-kafka
image: bitnami/kubectl
command: [ "kubectl", "rollout", "status", "-n", "otterize-ecom-demo", "statefulset/kafka" ]
containers:
- name: server
image: 'otterize/lab:orderservice-latest'
Expand Down Expand Up @@ -953,8 +961,12 @@ spec:
labels:
app: paymentservice
spec:
serviceAccountName: default
serviceAccountName: paymentservice
terminationGracePeriodSeconds: 5
initContainers:
- name: wait-for-kafka
image: bitnami/kubectl
command: [ "kubectl", "rollout", "status", "-n", "otterize-ecom-demo", "statefulset/kafka" ]
containers:
- name: server
image: 'otterize/lab:paymentservice-latest'
Expand Down Expand Up @@ -1574,3 +1586,43 @@ spec:
resources:
requests:
storage: "8Gi"
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: statefulset-reader
rules:
- apiGroups: ["apps"]
resources: ["statefulsets"]
verbs: ["get", "watch", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: read-statefulsets
subjects:
- kind: ServiceAccount
name: paymentservice
- kind: ServiceAccount
name: orderservice
- kind: ServiceAccount
name: checkoutservice
roleRef:
kind: Role
name: statefulset-reader
apiGroup: rbac.authorization.k8s.io
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: checkoutservice
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: paymentservice
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: orderservice

0 comments on commit bb8f61b

Please sign in to comment.