aws / aws/aws-parallelcluster

SSL trust issues for corporate AMIs

Open
#2,916 8 comments 0 reactions 0 assignees View on GitHub
Feature Request
Dominant language
Python
Stars
888
Forks
314
Avg merge
1d 10h
Merged PRs (30d)
43

Description

**The ParallelCluster team uses this template to report known issues on github. If you are reporting an issue, please use the 'Bug report' template instead.**

## Bug description

Provide the following information:
- A clear and concise description of the bug and its impact on ParallelCluster customers
- Steps to reproduce the bug, including an example configuration file
- Versions of the various components (CLI package, node daemons, cookbook, etc.) affected by the bug
- Workaround customers can use until a fix is in place, or the fix itself if it's already done
-
Due to security concerns, all of our corporate AMIs have injected our root CA in the trust chain for pip installs and curl/openssl downloads
Thus, create command fails for cluster creation.
As a workaround for create, I download and update yaml templates files to update user data sections for master and fleet servers.
I also have to download and update the main json stack file to point to my new Master server sub-stack file.
I also have to use the undocumented config parameter hit-template to point to my local fleet substack file

In the sub-stack's user data, I basically export environment variables just before the call to "cfn-init" CloudFormation Call.
export PIP_CERT=/etc/ssl/certs/ca-bundle.crt
export SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt

I've tried adding these variables to /etc/bashrc, /etc/profile, /etc/environment, /etc/profile.d/sh.local, etc/profile.d/
But, cluster creation fails as Master node creation.
When I log into the Master node, the environment variables are there and I can manually execute the commands that fail during Master node creation. It's like the environment variables are ignored and new environment variables are setup...
I would love to know why this is happening and a better solution than my workaround.

This is the env just before cfn-init is called:

cookbook_version=aws-parallelcluster-cookbook-2.11.0
OLDPWD=/tmp/cookbooks
parallelcluster_version=aws-parallelcluster-2.11.0
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin
PWD=/tmp/cookbooks/aws-parallelcluster-cookbook-2.11.0
LANG=en_US.UTF-8
HOME=
SHLVL=2
chef_version=16.13.16
_region=us-gov-east-1
berkshelf_version=7.0.10
_=/bin/env

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.