Installing Spinnaker on Premise without Internet


#1

I am trying to install Spinnaker on RHEL 6/7 on premise VM I found the following link but its designed to work with internet connection.

I have to configure it and customize Spinnaker without outside access to Internet. Could anybody please help me here, I am having real hard time in find some easy way to install it. I have heard this community is very knowledgeable and helpful, I am hoping for the same.


#2

please anybody help…


#3

Hey, the docs are here: https://www.spinnaker.io/guides/operator/custom-boms/ Sorry for the wait.


#4

Even after trying out how to install Spinnaker using its Bill of materials for VM/server which is Air Gapped(No access to internet) it fails as it still tries to read content from version.yml file, WHY???.
The content of 1.10.1.yml file below is an example BOM file to deploy Spinnaker version 1.10.1:

artifactSources:
dockerRegistry: :5001
dependencies:
redis:
version: local:v2
consul:
version: local:0.7.5
vault:
version: local:0.7.0
services:
clouddriver:
commit: ad521d622193bd36b90f7c8b3fb453044222cd72
version: local:4.0.1-20181024113115
deck:
commit: 9a096f216be8bf36da14f2f5faa15e94e0a407c5
version: local:2.5.1-20181018042808
defaultArtifact: {}
echo:
commit: d20259cd47acd432670dcbddd8191eabbdbf7a4e
version: local:2.1.0-20181003100130
fiat:
commit: b1fd0b386534dd170f61c845ee8cda9a5865de82
version: local:1.1.0-20181012042808
front50:
commit: 62da4dc86c663230d897dc8da5ffbbb2c7793bbe
version: local:0.13.0-20181005212906
gate:
commit: 0b204b7b4e36819b2f469dd3850dc89b45a50bf8
version: local:1.2.0-20181016042808
igor:
commit: a4fd89756144d4b0722dc43ee679b9ae51a75171
version: local:0.13.0-20181003100130
kayenta:
commit: 788433f454505e7848d185868ed78d73ac0ef4cd
version: local:0.4.0-20180928152808
monitoring-daemon:
commit: 1559f0a03c2c1d88bf07a164e1c9c21a7c5e6af4
version: local:0.9.0-20180913172809
monitoring-third-party:
commit: 1559f0a03c2c1d88bf07a164e1c9c21a7c5e6af4
version: local:0.9.0-20180913172809
orca:
commit: bde9d946c68b8305e7ecd48c045a52eaa9b63cbc
version: local:1.1.0-20181003100130
rosco:
commit: 2f1a4f856b04971fe0fa04c7d402ee8f03827f61
version: local:0.8.0-20181003100130
timestamp: ‘2018-10-24 15:31:30’
version: 1.10.1

I followed this link for this: https://www.spinnaker.io/guides/operator/custom-boms/.

I created files and folder structure for all Spinnaker components with proper version sub-directories inside .hal folder according to the link.

I had to use --no-validate flag to make sure that halyard doesn’t go and check google bucket for version verification. Here in this case we are trying to install the Spinnaker version 1.10.1 hence the yaml file is named 1.10.1.yml and all the Spinnaker components like clouddriver, echo, deck etc. are already downloaded and available in the Docker repo :5001.

Look the below commands we ran up to deploying Spinnaker:

hal config version edit --version local:1.10.1 --no-validate

hal deploy apply --no-validate

  • Get current deploymentSuccess
  • Prep deploymentSuccess
  • Preparation complete… deploying Spinnaker
  • Get current deploymentSuccess

_ Apply deployment

Generating all Spinnaker profile files and endpoints: Generated 2 profiles and discovered 0 custom profiles for clouddriver

Log output:

2018-12-02 03:07:57.241 INFO 6 — [ Thread-72] c.n.s.h.d.s.v.s.SpinnakerServiceProvider : Building service settings entry for spin-rosco

2018-12-02 03:07:57.242 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.242 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.248 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.260 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.260 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/clouddriver/4.0.1-20181024113115/clouddriver.yml

2018-12-02 03:07:57.352 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.354 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/clouddriver/4.0.1-20181024113115/clouddriver-bootstrap.yml

2018-12-02 03:07:57.386 WARN 6 — [ Thread-72] s.v.p.ClouddriverBootstrapProfileFactory : Attempting to perform a distributed deployment to account “my-k8s-account” without a discovery mechanism

2018-12-02 03:07:57.389 INFO 6 — [ Thread-72] c.n.s.h.d.spinnaker.v1.profile.Profile : Writing profile to /home/spinnaker/.hal/default/staging/spinnaker.yml with 0 required files

2018-12-02 03:07:57.390 INFO 6 — [ Thread-72] c.n.s.h.d.spinnaker.v1.profile.Profile : Writing profile to /home/spinnaker/.hal/default/staging/clouddriver-bootstrap.yml with 1 required files

2018-12-02 03:07:57.393 INFO 6 — [ Thread-72] c.n.s.h.core.tasks.v1.DaemonTaskHandler : Message by [Apply deployment] (1ec01bec-8b4f-4385-8a5c-5dabefa6a89d) - RUNNING: Generated 2 profiles and discovered 0 custom profiles for clouddriver-bootstrap

2018-12-02 03:07:57.393 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.399 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.399 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/clouddriver/4.0.1-20181024113115/clouddriver.yml

2018-12-02 03:07:57.437 INFO 6 — [ Thread-72] c.n.s.h.d.spinnaker.v1.profile.Profile : Writing profile to /home/spinnaker/.hal/default/staging/spinnaker.yml with 0 required files

2018-12-02 03:07:57.438 INFO 6 — [ Thread-72] c.n.s.h.d.spinnaker.v1.profile.Profile : Writing profile to /home/spinnaker/.hal/default/staging/clouddriver.yml with 1 required files

2018-12-02 03:07:57.439 INFO 6 — [ Thread-72] c.n.s.h.core.tasks.v1.DaemonTaskHandler : Message by [Apply deployment] (1ec01bec-8b4f-4385-8a5c-5dabefa6a89d) - RUNNING: Generated 2 profiles and discovered 0 custom profiles for clouddriver

2018-12-02 03:07:57.439 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/bom/1.10.1.yml

2018-12-02 03:07:57.440 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.LocalDiskProfileReader : Getting file contents of /home/spinnaker/.hal/.boms/deck/2.5.1-20181018042808/settings.js

2018-12-02 03:07:57.441 INFO 6 — [ Thread-72] c.n.s.h.c.r.v1.GoogleProfileReader : Getting object contents of versions.yml

2018-12-02 03:08:03.452 INFO 6 — [ Thread-59] c.n.s.h.core.tasks.v1.TaskRepository : Interrupter has no work to do,

If you see the highlighted log line Getting object contents of versions.yml, this is where Halyard tries to again connect to internet to access google bucket for version verification, thats why its looking for getting versions.yml. We have tested the same steps with an EC2 instance with internet and here the logs goes to the next steps and reads from /home/spinnaker/.hal/.boms/deck/2.5.1-20181018042808/settings.js which never happens with the VM having no internet connection, after sometime the logs throws error stating connection time-out since its not able to connect to internet.

Why is this happening???