<p>I am trying to setup a Kubernetes cluster on my AWS account using the <code>kube-up.sh</code> setup script that is bundled with kubernetes source at kubernetes/cluster/kube-up.sh</p>

<p>But when I ran kube-up.sh I am getting the following error:</p>

<pre><code>pranjal:~/go/src/github.com/GoogleCloudPlatform/kubernetes/cluster$ ./kube-up.sh
Starting cluster using os distro: ubuntu
Starting cluster using provider: aws
... calling verify-prereqs
... calling kube-up
Uploading to Amazon S3
Creating kubernetes-staging-6b790c161af2b2c39939b542c73b775a
make_bucket failed: s3://kubernetes-staging-6b790c161af2b2c39939b542c73b775
</code></pre>

<p>I am sure that my the tool is not able to read my AWS Access Key and Secret. I stored it in .aws/config. I am not sure where I should set it for it to be able to read it correctly and work.</p>

<p>After a bit of searching I figured out a solution to the problem.</p>

<p>A lot of the AWS configuration goes into the <a href="https://github.com/GoogleCloudPlatform/kubernetes/blob/master/cluster/aws/config-default.sh" rel="nofollow">config-default.sh</a> file. However there is no option to set the Access Key ID, Secret Access Key there (which might make some sense as cluster/aws/config-default.sh file is a part of the source code and the credentials should be saved somewhere else, at a safer place)</p>

<p>I realized after seeing the kubernetes/cluster/aws/util.sh source code that kubernetes actually calls the <strong>aws</strong> command line tool internally to make changes to AWS infrastructure.</p>

<p>So having the AWS command line tool installed and configured correctly will do the job of solving this problem.</p>

<p>Once I issued the following command:</p>

<pre><code>aws configure
</code></pre>

<p>and answered prompts for entering ID/Key it saved these values to this file:</p>

<pre><code>~/.aws/credentials
</code></pre>

<p>See details <a href="http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html" rel="nofollow">here</a></p>

<p>This solved my problem and kube-up.sh worked perfectly after I did this.</p>
