By default, the Rundeck service configuration does not enable you to get
access through an external proxy address and exposed rundeck port, which is
14440
by default. Although, you can easily forward the Runbooks dashboard
through a proxy endpoint in case of using Devops Portal through external proxy
networks.
To configure iFrame forwarding:
Configure iFrame forwarding on the cluster level by specifying the
following parameters in the oss/client.yml
:
rundeck_forward_iframe: True
rundeck_iframe_host: <external-proxy-endpoint>
rundeck_iframe_port: <external-proxy-port>
rundeck_iframe_ssl: False
Apply the updated rundeck.server formula:
salt -C 'I@rundeck:server' state.sls rundeck.server
Verify that there are no cached modules, grains, and so on; and minion configuration is updated:
salt '*' saltutil.clear_cache
salt -C 'I@docker:swarm:role:master' state.sls salt
Refresh and update your deployment:
salt '*' saltutil.refresh_beacons
salt '*' saltutil.refresh_grains
salt '*' saltutil.refresh_modules
salt '*' saltutil.refresh_pillar
salt '*' saltutil.sync_all
Recreate the Rundeck stack:
docker stack rm rundeck
salt -C 'I@docker:swarm:role:master' state.sls docker.client
salt -C 'I@rundeck:client' state.sls rundeck.client
Specify a custom endpoint for the DevOps portal on the cluster level
of the Reclass model in the oss/client.yml
file:
devops_portal:
config:
service:
rundeck:
endpoint:
address: ${_param:rundeck_iframe_host}
port: ${_param:rundeck_iframe_port}
https: ${_param:rundeck_iframe_ssl}
Recreate the DevOps portal stack:
docker stack rm devops-portal
salt -C 'I@devops_portal:config' state.sls devops_portal.config
salt -C 'I@docker:swarm:role:master' state.sls docker.client
Now, you can add an additional configuration for proxying the defined address and apply it on the proxy nodes.