Files
kubesphere/config/ks-core/templates/sample-bookinfo-configmap.yaml
2021-09-26 07:36:52 +00:00

381 lines
10 KiB
YAML

apiVersion: v1
data:
bookinfo.yaml: |
apiVersion: app.k8s.io/v1beta1
kind: Application
metadata:
name: bookinfo
namespace: servicemesh
labels:
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
servicemesh.kubesphere.io/enabled: 'true'
spec:
selector:
matchLabels:
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
addOwnerRef: true
descriptor:
icons:
- src: '/assets/bookinfo.svg'
componentKinds:
- group: ''
kind: Service
- group: apps
kind: Deployment
- group: apps
kind: StatefulSet
- group: extensions
kind: Ingress
- group: servicemesh.kubesphere.io
kind: Strategy
- group: servicemesh.kubesphere.io
kind: ServicePolicy
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: servicemesh
annotations:
kubesphere.io/isElasticReplicas: 'false'
servicemesh.kubesphere.io/enabled: 'true'
labels:
app: productpage
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
name: productpage-v1
spec:
replicas: 1
selector:
matchLabels:
app: productpage
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
template:
metadata:
labels:
app: productpage
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
sidecar.istio.io/inject: 'true'
spec:
containers:
- name: productpage
resources:
requests:
cpu: 10m
memory: 10Mi
limits:
cpu: '1'
memory: 1000Mi
imagePullPolicy: IfNotPresent
image: {{ .Values.image.bookinfo_productpage_v1_repo }}:{{ .Values.image.bookinfo_productpage_v1_tag }}
ports:
- name: http-web
protocol: TCP
containerPort: 9080
servicePort: 9080
serviceAccount: default
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 25%
maxSurge: 25%
---
apiVersion: v1
kind: Service
metadata:
namespace: servicemesh
labels:
app: productpage
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
kubesphere.io/workloadType: Deployment
servicemesh.kubesphere.io/enabled: 'true'
name: productpage
spec:
type: ClusterIP
sessionAffinity: None
selector:
app: productpage
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
ports:
- name: http-web
protocol: TCP
port: 9080
targetPort: 9080
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: servicemesh
annotations:
kubesphere.io/isElasticReplicas: 'false'
servicemesh.kubesphere.io/enabled: 'true'
labels:
app: reviews
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
name: reviews-v1
spec:
replicas: 1
selector:
matchLabels:
app: reviews
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
template:
metadata:
labels:
app: reviews
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
sidecar.istio.io/inject: 'true'
spec:
containers:
- name: reviews
resources:
requests:
cpu: 10m
memory: 10Mi
limits:
cpu: '1'
memory: 1000Mi
imagePullPolicy: IfNotPresent
image: {{ .Values.image.bookinfo_reviews_v1_repo }}:{{ .Values.image.bookinfo_reviews_v1_tag }}
ports:
- name: http-web
protocol: TCP
containerPort: 9080
servicePort: 9080
serviceAccount: default
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 25%
maxSurge: 25%
---
apiVersion: v1
kind: Service
metadata:
namespace: servicemesh
labels:
app: reviews
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
kubesphere.io/workloadType: Deployment
servicemesh.kubesphere.io/enabled: 'true'
name: reviews
spec:
type: ClusterIP
sessionAffinity: None
selector:
app: reviews
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
ports:
- name: http-web
protocol: TCP
port: 9080
targetPort: 9080
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: servicemesh
annotations:
kubesphere.io/isElasticReplicas: 'false'
servicemesh.kubesphere.io/enabled: 'true'
labels:
app: details
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
name: details-v1
spec:
replicas: 1
selector:
matchLabels:
app: details
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
template:
metadata:
labels:
app: details
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
sidecar.istio.io/inject: 'true'
spec:
containers:
- name: details
resources:
requests:
cpu: 10m
memory: 10Mi
limits:
cpu: '1'
memory: 1000Mi
imagePullPolicy: IfNotPresent
image: {{ .Values.image.bookinfo_details_v1_repo }}:{{ .Values.image.bookinfo_details_v1_tag }}
ports:
- name: http-web
protocol: TCP
containerPort: 9080
servicePort: 9080
serviceAccount: default
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 25%
maxSurge: 25%
---
apiVersion: v1
kind: Service
metadata:
namespace: servicemesh
labels:
app: details
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
kubesphere.io/workloadType: Deployment
servicemesh.kubesphere.io/enabled: 'true'
name: details
spec:
type: ClusterIP
sessionAffinity: None
selector:
app: details
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
ports:
- name: http-web
protocol: TCP
port: 9080
targetPort: 9080
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: servicemesh
annotations:
kubesphere.io/isElasticReplicas: 'false'
servicemesh.kubesphere.io/enabled: 'true'
labels:
app: ratings
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
name: ratings-v1
spec:
replicas: 1
selector:
matchLabels:
app: ratings
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
template:
metadata:
labels:
app: ratings
version: v1
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
sidecar.istio.io/inject: 'true'
spec:
containers:
- name: ratings
resources:
requests:
cpu: 10m
memory: 10Mi
limits:
cpu: '1'
memory: 1000Mi
imagePullPolicy: IfNotPresent
image: {{ .Values.image.bookinfo_ratings_v1_repo }}:{{ .Values.image.bookinfo_ratings_v1_tag }}
ports:
- name: http-web
protocol: TCP
containerPort: 9080
servicePort: 9080
serviceAccount: default
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 25%
maxSurge: 25%
---
apiVersion: v1
kind: Service
metadata:
namespace: servicemesh
labels:
app: ratings
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
annotations:
kubesphere.io/workloadType: Deployment
servicemesh.kubesphere.io/enabled: 'true'
name: ratings
spec:
type: ClusterIP
sessionAffinity: None
selector:
app: ratings
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
ports:
- name: http-web
protocol: TCP
port: 9080
targetPort: 9080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
namespace: servicemesh
labels:
app.kubernetes.io/version: v1
app.kubernetes.io/name: bookinfo
name: bookinfo-ingress
spec:
rules:
- http:
paths:
- backend:
service:
name: productpage
port:
number: 9080
path: /
pathType: ImplementationSpecific
host: productpage.servicemesh.139.198.121.92.nip.io
kind: ConfigMap
metadata:
name: sample-bookinfo