apiVersion: apps/v1
kind: StatefulSet
metadata:
name: consul
namespace: default
spec:
serviceName: consul-headless
replicas: 1
selector:
matchLabels:
app: consul
template:
metadata:
labels:
app: consul
spec:
containers:
- name: consul
image: consul:1.14.3
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8500
command:
- "/bin/sh"
- "-c"
- "consul agent -dev -client=0.0.0.0"
volumeMounts:
- name: data
mountPath: /consul/data
volumeClaimTemplates:
- metadata:
name: data
annotations:
volume.beta.kubernetes.io/storage-class: "local"
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 30Gi
---
apiVersion: v1
kind: Service
metadata:
name: consul-service
namespace: default
spec:
type: NodePort
ports:
- name: consul
port: 8500
targetPort: 8500
protocol: TCP
nodePort: 30666
selector:
app: consul
---
apiVersion: v1
kind: Service
metadata:
name: consul-headless
namespace: default
labels:
app: consul
spec:
ports:
- name: consul
port: 8500
targetPort: 8500
protocol: TCP
clusterIP: None
selector:
app: consul
k8s部署consul简易版
于 2024-06-28 10:00:37 首次发布