Skip to content

Instantly share code, notes, and snippets.

@NorbertFenk
Created January 8, 2020 17:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save NorbertFenk/2a34c6fc58cc4951d66fff08b1ddf054 to your computer and use it in GitHub Desktop.
Save NorbertFenk/2a34c6fc58cc4951d66fff08b1ddf054 to your computer and use it in GitHub Desktop.
spinnaker install guide to kind without disk persistence

Resources https://dzone.com/articles/install-spinnaker-with-halyard-on-kubernetes

https://www.spinnaker.io/setup/install/halyard/

Steps to install spinnaker to a local dev cluster You will need a Kubernetes emulator link kind You will need to install halyard. This is a spinnaker deployment management tool. Here you can find further information about it and an installation guide: https://www.spinnaker.io/setup/install/halyard/ Follow these steps : https://www.spinnaker.io/setup/install/providers/kubernetes-v2/

# First, make sure that the provider is enabled:
hal config provider kubernetes enable

# Start your local kubernetes cluster
kind create cluster

# Create namespace, we will need it and it is a good test about the cluster access
kubectl create namespace spinnaker

# Then add the account:
CONTEXT=$(kubectl config current-context)

hal config provider kubernetes account add my-k8s-v2-account \
    --provider-version v2 \
    --context $CONTEXT

# Another command that needs to be run
hal config features edit --artifacts true

Follow these steps to Choose an environment: https://www.spinnaker.io/setup/install/environment/ I went with the Distributed installation because I think this will fits the best later on.

export ACCOUNT=my-k8s-v2-account

# Run the following command, using the $ACCOUNT name you created when you configured the provider
hal config deploy edit --type distributed --account-name $ACCOUNT

From the offered storage services I chose Minio and followed this guide: https://www.spinnaker.io/setup/install/storage/minio/

# Export minio secret and access keys <needs to contain letters and number> e.g.: hello1234
export MINIO_SECRET_KEY=hello1234 
export MINIO_ACCESS_KEY=hello1234

# Use helm to deploy it to the kubernetes cluster. Pay attention to the "persistence.enable=false" part. This way it won't persits the configs. 
helm install -n spinnaker minio --set accessKey=$MINIO_ACCESS_KEY --set secretKey=$MINIO_SECRET_KEY --set persistence.enable=false stable/minio

# Given that Minio doesn’t support versioning objects, we need to disable it in Spinnaker.
mkdir -p ~/.hal/default/profiles && echo spinnaker.s3.versioning: false > ~/.hal/default/profiles/front50-local.yml

# This command will configure the halyard to be able to communicate wit the Minio storage
echo $MINIO_SECRET_KEY | hal config storage s3 edit --path-style-access true --endpoint http://minio:9000 --access-key-id $MINIO_ACCESS_KEY --secret-access-key

# reun this command too
hal config storage edit --type s3

Deploy the services and connect to them: https://www.spinnaker.io/setup/install/deploy/

# List the available versions
hal version list

# Set the version you want to use
hal config version edit --version $VERSION

# Deploy the services
hal deploy apply

# Connect to the services TODO make it work
hal deploy connect
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment