mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-10-30 21:30:16 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			99 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| apiVersion: "apps/v1beta1"
 | |
| kind: StatefulSet
 | |
| metadata:
 | |
|   name: cassandra
 | |
| spec:
 | |
|   serviceName: cassandra
 | |
|   replicas: 3
 | |
|   template:
 | |
|     metadata:
 | |
|       labels:
 | |
|         app: cassandra
 | |
|     spec:
 | |
|       terminationGracePeriodSeconds: 1800
 | |
|       containers:
 | |
|       - name: cassandra
 | |
|         image: gcr.io/google-samples/cassandra:v12
 | |
|         imagePullPolicy: Always
 | |
|         ports:
 | |
|         - containerPort: 7000
 | |
|           name: intra-node
 | |
|         - containerPort: 7001
 | |
|           name: tls-intra-node
 | |
|         - containerPort: 7199
 | |
|           name: jmx
 | |
|         - containerPort: 9042
 | |
|           name: cql
 | |
|         resources:
 | |
|           limits:
 | |
|             cpu: "500m"
 | |
|             memory: 1Gi
 | |
|           requests:
 | |
|            cpu: "500m"
 | |
|            memory: 1Gi
 | |
|         securityContext:
 | |
|           capabilities:
 | |
|             add:
 | |
|               - IPC_LOCK
 | |
|         lifecycle:
 | |
|           preStop:
 | |
|             exec:
 | |
|               command: ["/bin/sh", "-c", "nodetool drain"]
 | |
|         env:
 | |
|           - name: MAX_HEAP_SIZE
 | |
|             value: 512M
 | |
|           - name: HEAP_NEWSIZE
 | |
|             value: 100M
 | |
|           - name: CASSANDRA_SEEDS
 | |
|             value: "cassandra-0.cassandra.default.svc.cluster.local"
 | |
|           - name: CASSANDRA_CLUSTER_NAME
 | |
|             value: "K8Demo"
 | |
|           - name: CASSANDRA_DC
 | |
|             value: "DC1-K8Demo"
 | |
|           - name: CASSANDRA_RACK
 | |
|             value: "Rack1-K8Demo"
 | |
|           - name: CASSANDRA_AUTO_BOOTSTRAP
 | |
|             value: "false"
 | |
|           - name: POD_IP
 | |
|             valueFrom:
 | |
|               fieldRef:
 | |
|                 fieldPath: status.podIP
 | |
|           - name: POD_NAMESPACE
 | |
|             valueFrom:
 | |
|               fieldRef:
 | |
|                 fieldPath: metadata.namespace
 | |
|         readinessProbe:
 | |
|           exec:
 | |
|             command:
 | |
|             - /bin/bash
 | |
|             - -c
 | |
|             - /ready-probe.sh
 | |
|           initialDelaySeconds: 15
 | |
|           timeoutSeconds: 5
 | |
|         # These volume mounts are persistent. They are like inline claims,
 | |
|         # but not exactly because the names need to match exactly one of
 | |
|         # the stateful pod volumes.
 | |
|         volumeMounts:
 | |
|         - name: cassandra-data
 | |
|           mountPath: /cassandra_data
 | |
|   # These are converted to volume claims by the controller
 | |
|   # and mounted at the paths mentioned above.
 | |
|   # do not use these in production until ssd GCEPersistentDisk or other ssd pd
 | |
|   volumeClaimTemplates:
 | |
|   - metadata:
 | |
|       name: cassandra-data
 | |
|     spec:
 | |
|       accessModes: [ "ReadWriteOnce" ]
 | |
|       resources:
 | |
|         requests:
 | |
|           storage: 1Gi
 | |
|       storageClassName: fast
 | |
| ---
 | |
| kind: StorageClass
 | |
| apiVersion: storage.k8s.io/v1
 | |
| metadata:
 | |
|   name: fast
 | |
| provisioner: kubernetes.io/gce-pd
 | |
| parameters:
 | |
|   type: pd-ssd
 |