Spinnaker
Spinnaker is an open-source continuous delivery platform that helps you release software changes with high velocity and confidence.
Overview
Spinnaker provides two core sets of features: - Application Management - Deploy and manage cloud resources - Application Deployment - Construct and manage continuous delivery workflows
Key Features
Feature | Description |
---|---|
![]() |
Deploy to multiple cloud providers |
![]() |
Create complex deployment workflows |
![]() |
Automated testing in production |
![]() |
Quick recovery from failed deployments |
Integration with Fawkes
Prerequisites
- Kubernetes cluster
- Helm v3
- kubectl configured with cluster access
Installation
# Add Spinnaker Helm repository
helm repo add spinnaker https://helmcharts.opsmx.com/
helm repo update
# Install Spinnaker
helm install spinnaker spinnaker/spinnaker \
--namespace spinnaker \
--create-namespace \
--values values.yaml
Example values.yaml
:
spinnakerConfig:
profiles:
clouddriver:
kubernetes:
enabled: true
accounts:
- name: fawkes-cluster
requiredGroupMembership: []
providerVersion: V2
permissions: {}
dockerRegistries: []
configureImagePullSecrets: true
cacheThreads: 1
namespaces: []
omitNamespaces: []
kinds: []
omitKinds: []
customResources: []
Using Spinnaker with Fawkes
Creating a Deployment Pipeline
- Navigate to Spinnaker UI
- Create a new application:
- Name:
fawkes-app
- Owner Email:
team@fawkes.io
-
Cloud Providers:
Kubernetes V2
-
Create a deployment pipeline:
{ "name": "Deploy to Production", "stages": [ { "type": "deployManifest", "name": "Deploy Application", "cloudProvider": "kubernetes", "account": "fawkes-cluster", "source": "text", "manifests": [ { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "fawkes-app" }, "spec": { "replicas": 3 } } ] } ] }
Best Practices
- Pipeline Templates
- Use pipeline templates for consistency
- Version control your templates
-
Share common deployment patterns
-
Security
- Enable RBAC
- Use service accounts
-
Implement least privilege access
-
Monitoring
- Configure pipeline notifications
- Monitor pipeline executions
- Set up alerting for failures
Troubleshooting
Common issues and solutions:
Issue | Solution |
---|---|
Pipeline fails to start | Check Spinnaker service account permissions |
Manifest deployment fails | Verify Kubernetes cluster connectivity |
Images not found | Confirm container registry configuration |