Skip to content

Instantly share code, notes, and snippets.

@realmbgl
Created April 23, 2019 03:55
Show Gist options
  • Save realmbgl/f9282068595da6b5409b018d8f63bd00 to your computer and use it in GitHub Desktop.
Save realmbgl/f9282068595da6b5409b018d8f63bd00 to your computer and use it in GitHub Desktop.
---
# framework
apiVersion: kudo.k8s.io/v1alpha1
kind: Framework
metadata:
name: elastic
labels:
controller-tools.k8s.io: "1.0"
---
# framework version
apiVersion: kudo.k8s.io/v1alpha1
kind: FrameworkVersion
metadata:
name: elastic-v1
namespace: default
labels:
controller-tools.k8s.io: "1.0"
spec:
version: "1.0.0"
connectionString: ""
framework:
name: elastic
kind: Framework
templates:
service.yaml: |
kind: Service
apiVersion: v1
metadata:
name: hs
namespace: {{NAMESPACE}}
spec:
selector:
app: elastic
ports:
- protocol: TCP
port: 9200
clusterIP: None
node.yaml: |
kind: StatefulSet
apiVersion: apps/v1
metadata:
name: node
namespace: {{NAMESPACE}}
spec:
selector:
matchLabels:
app: elastic # has to match .spec.template.metadata.labels
serviceName: {{NAME}}-hs
replicas: 3
template:
metadata:
labels:
app: elastic # has to match .spec.selector.matchLabels
spec:
terminationGracePeriodSeconds: 10
containers:
- name: elastic
image: elasticsearch:7.0.0
ports:
- containerPort: 9200
name: api
- containerPort: 9300
name:
env:
- name: cluster.name
value: {{NAME}}-cluster
- name: discovery.seed_hosts
value: {{NAME}}-node-0.{{NAME}}-hs,{{NAME}}-node-1.{{NAME}}-hs,{{NAME}}-node-2.{{NAME}}-hs
- name: cluster.initial_master_nodes
value: {{NAME}}-node-0,{{NAME}}-node-1,{{NAME}}-node-2
volumeMounts:
- name: data
mountPath: /usr/share/elasticsearch/data
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
tasks:
deploy:
resources:
- service.yaml
- node.yaml
parameters:
- name: SLEEP
description: "how long to have the container sleep for before returning"
default: "15"
required: false
displayName: "Sleep Time"
plans:
deploy:
strategy: serial
phases:
- name: deploy-elastic
strategy: parallel
steps:
- name: deploy
tasks:
- deploy
---
# framework instance
apiVersion: kudo.k8s.io/v1alpha1
kind: Instance
metadata:
name: myes
labels:
controller-tools.k8s.io: "1.0"
framework: elastic
spec:
frameworkVersion:
name: elastic-v1
namespace: default
type: FrameworkVersions
# Add fields here
parameters:
SLEEP: "30"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment