$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.24.1/minikube-darwin-amd64
$ chmod +x ./minikube
$ sudo mv ./minikube /usr/local/bin/
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/darwin/amd64/kubectl
$ chmod +x ./kubectl
$ sudo mv ./kubectl /usr/local/bin/kubectl
$ minikube config set memory 4096
These changes will take effect upon a minikube delete and then a minikube start
$ minikube config set cpus 4
These changes will take effect upon a minikube delete and then a minikube start
$ minikube start --memory 4096 --cpus 4
Starting local Kubernetes v1.8.0 cluster...
Starting VM...
Downloading Minikube ISO
140.01 MB / 140.01 MB [============================================] 100.00% 0s
Getting VM IP address...
Moving files into cluster...
Downloading localkube binary
148.25 MB / 148.25 MB [============================================] 100.00% 0s
0 B / 65 B [----------------------------------------------------------] 0.00%
65 B / 65 B [======================================================] 100.00% 0s}}}
{{{Setting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
Kubectl is now configured to use the cluster.
Loading cached images from config file.
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-15T21:07:38Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState:"clean", BuildDate:"2017-11-29T22:43:34Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"linux/amd64"}
$ kubectl get cs
NAME STATUS MESSAGE ERROR
scheduler Healthy ok
controller-manager Healthy ok
etcd-0 Healthy {"health": "true"}
$ wget https://storage.googleapis.com/kubernetes-helm/helm-v2.7.2-darwin-amd64.tar.gz
--2018-01-03 10:55:06-- https://storage.googleapis.com/kubernetes-helm/helm-v2.7.2-darwin-amd64.tar.gz
Resolving storage.googleapis.com (storage.googleapis.com)... 172.217.31.208
Connecting to storage.googleapis.com (storage.googleapis.com)|172.217.31.208|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12091997 (12M) [application/x-tar]
Saving to: 'helm-v2.7.2-darwin-amd64.tar.gz'}}}
{{{helm-v2.7.2-darwin- 100%[===================>] 11.53M 3.10MB/s in 3.8s
2018-01-03 10:55:11 (3.01 MB/s) - 'helm-v2.7.2-darwin-amd64.tar.gz' saved [12091997/12091997]
$ tar -zxvf helm-v2.7.2-darwin-amd64.tar.gz
x darwin-amd64/
x darwin-amd64/README.md
x darwin-amd64/LICENSE
x darwin-amd64/helm
$ chmod +x ./darwin-amd64/helm
$ mv ./darwin-amd64/helm /usr/local/bin/
$ helm init
Creating /Users/janakiramm/.helm
Creating /Users/janakiramm/.helm/repository
Creating /Users/janakiramm/.helm/repository/cache
Creating /Users/janakiramm/.helm/repository/local
Creating /Users/janakiramm/.helm/plugins
Creating /Users/janakiramm/.helm/starters
Creating /Users/janakiramm/.helm/cache/archive
Creating /Users/janakiramm/.helm/repository/repositories.yaml
Adding stable repo with URL: https://kubernetes-charts.storage.googleapis.com
Adding local repo with URL: http://127.0.0.1:8879/charts
$HELM_HOME has been configured at /Users/janakiramm/.helm.
$ helm version
Client: &version.Version;{SemVer:"v2.7.2", GitCommit:"8478fb4fc723885b155c924d1c8c410b7a9444e6", GitTreeState:"clean"}
Server: &version.Version;{SemVer:"v2.7.2", GitCommit:"8478fb4fc723885b155c924d1c8c410b7a9444e6", GitTreeState:"clean"}
$ curl -Lo values.yaml https://raw.githubusercontent.com/kubernetes/charts/master/stable/spinnaker/values.yaml
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2950 100 2950 0 0 2950 0 0:00:01 --:--:-- 0:00:01 10535
$ helm install -n kubelive stable/spinnaker -f values.yaml --timeout 300 --version 0.3.5 --namespace spinnaker
NAME: kubelive
LAST DEPLOYED: Wed Jan 3 11:26:12 2018
NAMESPACE: spinnaker
STATUS: DEPLOYED
RESOURCES:
…..
NOTES:
You will need to create 2 port forwarding tunnels in order to access the Spinnaker UI:
export DECK_POD=$(kubectl get pods --namespace spinnaker -l "component=deck,app=kubelive-spinnaker" -o jsonpath="{.items[0].metadata.name}")
kubectl port-forward --namespace spinnaker $DECK_POD 9000
Visit the Spinnaker UI by opening your browser to: http://127.0.0.1:9000
For more info on the Kubernetes integration for Spinnaker, visit:
http://www.spinnaker.io/docs/kubernetes-source-to-prod
$ kubectl get pod --namespace=spinnaker
NAME READY STATUS RESTARTS AGE
kubelive-jenkins-67bb8f6b96-w5rdp 1/1 Running 0 53m
kubelive-minio-5946fc9bcc-fcvv8 1/1 Running 0 53m
kubelive-redis-7bb9d95468-kt2vq 1/1 Running 1 53m
kubelive-spinnaker-clouddriver-6cd89c9bd5-8rwln 1/1 Running 1 53m
kubelive-spinnaker-deck-7846d6497-bjg7b 1/1 Running 0 53m
kubelive-spinnaker-echo-6fd649469d-2pxzd 1/1 Running 1 53m
kubelive-spinnaker-front50-85dd9fd58c-ktj6j 1/1 Running 1 53m
kubelive-spinnaker-gate-5868d9f8ff-hjpvg 1/1 Running 0 53m
kubelive-spinnaker-igor-fdbdcc9c8-hldsk 1/1 Running 0 53m
kubelive-spinnaker-orca-dd79c8bc7-xmwc7 1/1 Running 0 53m
kubelive-spinnaker-rosco-7b9f77b5bb-drxhs 1/1 Running 0 53m
$ export DECK_POD=$(kubectl get pods --namespace spinnaker -l "component=deck,app=kubelive-spinnaker" -o jsonpath="{.items[0].metadata.name}")
$ kubectl port-forward --namespace spinnaker $DECK_POD 9000
$ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 50m
nginx-prod NodePort 10.99.164.47 <none> 80:31728/TCP 18m
$ minikube service nginx-prod
Opening kubernetes service default/nginx-prod in default browser...
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-prod-v000-6m642 1/1 Running 0 9m
nginx-prod-v000-9kxtv 1/1 Running 0 9m
nginx-prod-v000-bpzw4 1/1 Running 0 9m
nginx-prod-v000-f87gn 1/1 Running 0 9m
nginx-prod-v000-h629g 1/1 Running 0 9m
nginx-prod-v000-hkhjc 1/1 Running 0 9m
nginx-prod-v000-jhnv2 1/1 Running 0 9m
nginx-prod-v000-jmkgx 1/1 Running 0 9m
nginx-prod-v000-s59pm 1/1 Running 0 9m
nginx-prod-v000-ssz85 1/1 Running 0 9m
-
https://www.thenewstack.io/tag/Learn-Spinnaker
-
https://github.com/kubernetes/charts/tree/master/stable/spinnaker