mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-10-31 05:40:42 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			73 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # Copyright 2016 The Kubernetes 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.
 | |
| 
 | |
| # Run the CockroachDB StatefulSet example on a minikube instance.
 | |
| #
 | |
| # For a fresh start, run the following first:
 | |
| #   minikube delete
 | |
| #   minikube start
 | |
| #
 | |
| # To upgrade minikube & kubectl on OSX, the following should suffice:
 | |
| #   brew reinstall kubernetes-cli --devel
 | |
| #   url -Lo minikube \
 | |
| #     https://storage.googleapis.com/minikube/releases/v0.4.0/minikube-darwin-amd64 && \
 | |
| #   chmod +x minikube && sudo mv minikube /usr/local/bin/
 | |
| 
 | |
| set -exuo pipefail
 | |
| 
 | |
| # Clean up anything from a prior run:
 | |
| kubectl delete statefulsets,persistentvolumes,persistentvolumeclaims,services,poddisruptionbudget -l app=cockroachdb
 | |
| 
 | |
| # Make persistent volumes and (correctly named) claims. We must create the
 | |
| # claims here manually even though that sounds counter-intuitive. For details
 | |
| # see https://github.com/kubernetes/contrib/pull/1295#issuecomment-230180894.
 | |
| # Note that we make an extra volume here so you can manually test scale-up.
 | |
| for i in $(seq 0 3); do
 | |
|   cat <<EOF | kubectl create -f -
 | |
| kind: PersistentVolume
 | |
| apiVersion: v1
 | |
| metadata:
 | |
|   name: pv${i}
 | |
|   labels:
 | |
|     type: local
 | |
|     app: cockroachdb
 | |
| spec:
 | |
|   capacity:
 | |
|     storage: 1Gi
 | |
|   accessModes:
 | |
|     - ReadWriteOnce
 | |
|   hostPath:
 | |
|     path: "/tmp/${i}"
 | |
| EOF
 | |
| 
 | |
|   cat <<EOF | kubectl create -f -
 | |
| kind: PersistentVolumeClaim
 | |
| apiVersion: v1
 | |
| metadata:
 | |
|   name: datadir-cockroachdb-${i}
 | |
|   labels:
 | |
|     app: cockroachdb
 | |
| spec:
 | |
|   accessModes:
 | |
|     - ReadWriteOnce
 | |
|   resources:
 | |
|     requests:
 | |
|       storage: 1Gi
 | |
| EOF
 | |
| done;
 | |
| 
 | |
| kubectl create -f cockroachdb-statefulset.yaml
 |