https://flyte.org logo
#ask-the-community
Title
# ask-the-community
s

Sujith Samuel

03/05/2024, 7:21 PM
#ask-the-community I m trying to run the raw container example given here https://docs.flyte.org/en/latest/user_guide/customizing_dependencies/raw_containers.html However I get the below error in the pod time="2024-03-05T191625Z" level=info msg="[0] Couldn't find a config file []. Relying on env vars and pflags." {"json":{},"level":"error","msg":"Failed to Get credentials.","ts":"2024-03-05T191632Z"} {"json":{},"level":"error","msg":"Failed to Get credentials.","ts":"2024-03-05T191637Z"} Kindly help
k

Ketan (kumare3)

03/05/2024, 7:37 PM
you have to configure flytepropeller to have a config section as defined here
s

Sujith Samuel

03/06/2024, 2:47 AM
So this shuld be inside the flytepropeller section copilot: plugins: k8s: # -- Structure documented [here](https://pkg.go.dev/github.com/lyft/flyteplugins@v0.5.28/go/tasks/pluginmachinery/flytek8s/config#FlyteCoPilotConfig) co-pilot: name: flyte-copilot- image: cr.flyte.org/flyteorg/flytecopilot:v0.0.24 # FLYTECOPILOT_IMAGE start-timeout: 30s or outside just like core:
I have these values inside the copilit section in the values.yaml but I am getting the below error [1/1] currentAttempt done. Last Error: USER::Pod failed. No message received from kubernetes. [flyte-copilot-downloader] terminated with exit code (1). Reason [Error]. Message: Type to use [iam, accesskey]. (default "iam") --storage.connection.disable-ssl Disables SSL connection. Should only be used for development. --storage.connection.endpoint string URL for storage client to connect to. --storage.connection.region string Region to connect to. (default "us-east-1") --storage.connection.secret-key string Secret to use when accesskey is set. --storage.container string Initial container (in s3 a bucket) to create -if it doesn't exist-.' --storage.defaultHttpClient.timeout string Sets time out on the http client. (default "0s") --storage.enable-multicontainer If this is true, then the container argument is overlooked and redundant. This config will automatically open new connections to new containers/buckets as they are encountered --storage.limits.maxDownloadMBs int Maximum allowed download size (in MBs) per call. (default 2) --storage.stow.config stringToString Configuration for stow backend. Refer to github/graymeta/stow (default []) --storage.stow.kind string Kind of Stow backend to use. Refer to github/graymeta/stow --storage.type string Sets the type of storage to configure [s3/minio/local/mem/stow]. (default "s3") --tls-server-name string If provided, this name will be used to validate server certificate. If this is not provided, hostname used to contact the server is used. --token string Bearer token for authentication to the API server --user string The name of the kubeconfig user to use --username string Username for basic authentication to the API server -v, --v Level number for the log level verbosity --vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging when i put storage values in the above format, i get error in flytepropeller like expecting a string but got map{}interface
1 error(s) decoding: * 'co-pilot.storage' expected type 'string', got unconvertible type 'map[string]interface {}', value: Usage: flyte-propeller [flags] flyte-propeller [command]
Upgraded to the latest version of copilot but now get this error {"json":{},"level":"error","msg":"failed to get AWS credentials: NoCredentialProviders: no valid providers in chain. Deprecated.\n\tFor verbose messaging see aws.Config.CredentialsChainVerboseErrors","ts":"2024-03-06T044142Z"}
where to specify this
I understand from this that the copilot initcontainer is trying to get the values from ENV Vars but the started initcontainer doesnt have the env vars for AWS access
How to ensure that initcontainer also gets the env vars
@Samhita Alla please help
k

Ketan (kumare3)

03/06/2024, 5:13 AM
You cannot unfortunately today
I think if you specify envvars it should just propagate if not we will have to look at the code
Please be patient this is oss and we do take some time to answer at times
s

Sujith Samuel

03/06/2024, 5:14 AM
i have specified the default env vars in the k8s plugins section, it is propagating to containers but not the initcontainers
in facts even in containers, for flyte-copilot-sidecar also the env vars are not populating
I understand. Apologies for spamming. Please take time and let me know the resolution if possible at your earliest convenience
Looks like copilot can only work with AWS S3 and not with minio, the AWS SDK in copilot does not connect to anything other than AWS endpoints
Please consider this issue as closed. I set AWS_S3_US_EAST_1_REGIONAL_ENDPOINT as regional and it works now
5 Views