Skip to main content

Armory Spinnaker Admin Documentation: Installing Armory Spinnaker from the Debian Package

Feb 2, 2017 by Isaac Mosquera

Installing Armory Spinnaker from the Debian Package

We provide a Debian package that will install all the dependencies needed. To install the debian package, currently the only supported OS is Ubuntu Trusty, 14.04

apt-get update && apt-get install -y \
      apt-transport-https \
      ca-certificates \
      curl
curl -fsSL https://yum.dockerproject.org/gpg | sudo apt-key add -
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
echo "deb https://apt.dockerproject.org/repo/ ubuntu-$(lsb_release -cs) main" \
        | sudo tee -a /etc/apt/sources.list
echo "deb https://dl.bintray.com/armory/debians trusty main" \
  | sudo tee -a /etc/apt/sources.list
apt-get update
apt-get install armoryspinnaker

Modify Global User-Data For All Deployments

When new server-groups are deployed Spinnaker attaches a global user-data script/file that is pre-pended to any application specific user-data configured in a server Spinnaker pipeline. By default Armory Spinnaker comes with a user-data file which is placed in /opt/spinnaker/config/udf/udf0. This can be modified and overwritten to your specific needs.

Enabling Jenkins & Igor to talk to Spinnaker

To enable Igor, Gate to integrate with your Jenkins build you’ll need to edit your spinnaker-local.yml file. First configure Jenkins by finding your password or API Token. You can find your token here: http://${YOUR_JENKINS_URL}.armory.io/me/configure.

Then configure spinnaker local and add the following:

services:
  igor:
    enabled: true
  jenkins:
    enabled: true
    defaultMaster:
      name: Name-of-Jenkins-Service
      baseUrl: http://${YOUR_JENKINS_URL}
      username: ${YOUR_USERNAME}
      password: ${API_TOKEN}

Manual Rollback of Armory Spinnaker

If you deploy a configuration or a change that takes down Spinnaker it’ll be impossible to rollback since Spinnaker would not be available. In order to manually to deploy back you’ll have to do the following:

  1. Look for the existing deployment for with the armoryspinnaker prefix.
  2. Find the ASGs of Armory Spinnaker that was deployed. Typically it should be armoryspinnaker-ha-polling-v${VER} where ${VER} is something like 023. You should see 2 ASGS, one that has active instead and the older version should be disabled.

    armory spinnaker ASGs

  3. Edit the older ASG and remove any suspended processes that are listed

    remove suspended process

  4. Increase the number of instance armoryspinnaker-ha-polling ASG to just 1 and the other ASG armoryspinnaker-ha, the non-polling ASG back to atleast 2.

    ASG upping desired capacity count

  5. Reduce the latest ASGs down to 0 so that they’re no longer behind the ELB
  6. Check the Armory Spinnaker ELB, make sure all instances back behind both the user-facing and internal-services ELB.
  7. Go back to your Armory Spinnaker URL and make sure all is back to a working state.

Recently Published Posts

October 20, 2021
|
by Jason McIntosh

Monitoring Spinnaker: Part 1

Overview One of the questions that comes up a lot is how you monitor Spinnaker itself.  Not the apps Spinnaker is deploying, but Spinnaker itself and how it’s performing.  This is a question that has a lot of different answers. There are a few guidelines, but many of the answers are the same as how […]

Read more

October 18, 2021
|
by David Morgenthaler

The Importance of Patents: Interview with Nick Petrella, Head of Legal

    In honor of Armory’s recent acquisition of a patent for continuous software deployment, we sat down with Nick Petrella, Head of Legal, for a casual conversation covering a wide range of subjects, from patent law to Nick’s background as a software engineer and why he made the leap to the law. Check out […]

Read more

October 11, 2021
|
by Carl Timm

Armory Agent for Kubernetes Simplifies K8s Complexity

I’ll be upfront with you, I’m a sucker for a good origin story. It’s one of the reasons I spent hours engrossed in the Marvel Cinematic Universe not too long ago.  Rooting for incredibly flawed individuals with an outsized sense of duty and superpowers to back it up….What’s not to love?  My partner has a […]

Read more