Skip to content

Instantly share code, notes, and snippets.

@dheerajng
Created June 29, 2020 08:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dheerajng/18b25904cc4bf8f4696dcdd64c75ea2e to your computer and use it in GitHub Desktop.
Save dheerajng/18b25904cc4bf8f4696dcdd64c75ea2e to your computer and use it in GitHub Desktop.
YAML files for outlier detection demo
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: httpserver
spec:
host: httpserver
subsets:
- labels:
version: v1
name: v1
trafficPolicy:
connectionPool:
tcp:
maxConnections: 1
http:
http1MaxPendingRequests: 1
maxRequestsPerConnection: 1
outlierDetection:
consecutiveErrors: 1
interval: 20s
baseEjectionTime: 1m
maxEjectionPercent: 100
minHealthPercent: 0
- labels:
version: v2
name: v2
trafficPolicy:
connectionPool:
tcp:
maxConnections: 1
http:
http1MaxPendingRequests: 1
maxRequestsPerConnection: 1
outlierDetection:
consecutiveErrors: 2
interval: 10s
baseEjectionTime: 1m
maxEjectionPercent: 100
minHealthPercent: 0
---
apiVersion: "authentication.istio.io/v1alpha1"
kind: "Policy"
metadata:
name: "httpserver-policy"
spec:
targets:
- name: httpserver
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: httpserver
spec:
hosts:
- httpserver
http:
- match:
- uri:
prefix: "/misbehave"
route:
- destination:
host: httpserver
subset: v2
- route:
- destination:
host: httpserver
subset: v1
---
apiVersion: v1
kind: Service
metadata:
name: httpserver
labels:
app: httpserver
spec:
ports:
- name: http
port: 4040
targetPort: 4040
selector:
app: httpserver
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: httpserver-v1
spec:
replicas: 1
selector:
matchLabels:
app: httpserver
template:
metadata:
labels:
app: httpserver
version: v1
spec:
containers:
- image: dheerajgedam/httpserver-outlier:latest
imagePullPolicy: IfNotPresent
name: httpserver
ports:
- containerPort: 4040
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: httpserver-v2
spec:
replicas: 3
selector:
matchLabels:
app: httpserver
template:
metadata:
labels:
app: httpserver
version: v2
spec:
#maxRetries: "1"
containers:
- image: dheerajgedam/httpserver-outlier:latest
imagePullPolicy: IfNotPresent
name: httpserver
ports:
- containerPort: 4040
# Copyright 2017 Istio Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
##################################################################################################
# Sleep service
##################################################################################################
apiVersion: v1
kind: ServiceAccount
metadata:
name: sleep
---
apiVersion: v1
kind: Service
metadata:
name: sleep
labels:
app: sleep
spec:
ports:
- port: 80
name: http
selector:
app: sleep
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: sleep
spec:
replicas: 1
selector:
matchLabels:
app: sleep
template:
metadata:
labels:
app: sleep
spec:
serviceAccountName: sleep
containers:
- name: sleep
image: governmentpaas/curl-ssl
command: ["/bin/sleep", "3650d"]
imagePullPolicy: IfNotPresent
---
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment