Commit Graph

3704 Commits

Author SHA1 Message Date
Kashif Saadat d9e4a62994 Allow user defined endpoint to host action for Canal 2017-08-26 12:53:44 +01:00
Justin Santa Barbara cc6fb51f91 Merge pull request #3255 from alrs/replace-deprecated-aws-session-new
Replace deprecated aws session.New() with session.NewSession()
2017-08-25 23:01:51 -04:00
Lars Lehtonen a9bbe3af24
Wrap AWS NewSession() errors in vfs package 2017-08-25 13:25:04 -07:00
Lars Lehtonen c26f4b31f0
Return existing struct in awsup error conditions 2017-08-25 13:14:58 -07:00
Kubernetes Submit Queue b20584a051 Merge pull request #3263 from murali-reddy/remove-cluster-cidr
Automatic merge from submit-queue

remove --cluster-cidr from kube-router's manifest.

Kube-router was using --cluster-cidr flag to get the subnet allocated
for pod CIDR's. But now kube-router has the ability internally to infer
the CIDR allocated for the pod's by getting the information from
kubernetes API server node spec's
2017-08-25 08:24:16 -07:00
Kubernetes Submit Queue d661e27a99 Merge pull request #3240 from justinsb/create_and_update_functions
Automatic merge from submit-queue

Explicit CreateCluster & UpdateCluster functions
2017-08-25 06:37:34 -07:00
Kubernetes Submit Queue 325047c0ca Merge pull request #3266 from Rajadeepan/Rajadeepan-patch-2
Automatic merge from submit-queue

Fix Broken Link
2017-08-24 23:58:50 -07:00
Kubernetes Submit Queue 1e3eef37bf Merge pull request #3245 from mad01/sshsecret
Automatic merge from submit-queue

Adding support for adding ssh public key from file

MVP implementation of adding secret from file related to #2195 

```bash
cat > secret.yaml <<EOF
apiVersion: kops/v1alpha2
kind: SSHSecret
metadata:
  labels:
    kops.k8s.io/cluster: dev.k8s.example.com
spec:
  username: "admin"
  sshPublicKey: "ssh-rsa AAAAB3NzaC1yc2EEEAADA dev@devbox"
EOF
```

`kops create -f secret.yaml`
2017-08-24 20:18:48 -07:00
Kubernetes Submit Queue 9cfd303154 Merge pull request #3267 from gambol99/ignore_content
Automatic merge from submit-queue

Inline Component Configuration Fix

The current implementation does not ignore any possible interpolation of bash in the content. This PR wrapped the various spec content in 'EOF' to ignore all. All tested on a working cluster.

- updated the tests to reflect the changes
- wrapped the component configuration in 'eof' to ensure interpolation is ignored
- dropped the t.Log debug line
2017-08-24 18:51:29 -07:00
Justin Santa Barbara c9c621e03e Merge pull request #3261 from tmjd/calico-upgrade-release-note
Started release notes for 1.7.1
2017-08-24 20:46:02 -04:00
Kubernetes Submit Queue 0aaafb8328 Merge pull request #3183 from justinsb/offline_channel
Automatic merge from submit-queue

Read the channel from the local filesystem during tests
2017-08-24 17:39:25 -07:00
Rohith 293292173a Inline Conponent Configuration
The current implementation does not ignore any possible interpolation of bash in the content. This PR wrapped the various spec content in 'EOF' to ignore all.

- updated the tests to reflect the changes
- wrapped the component configuration in 'eof' to ensure interpolation is ignored
2017-08-25 00:36:06 +01:00
Kubernetes Submit Queue 63480a79f3 Merge pull request #3259 from gambol99/docker_ulimits
Automatic merge from submit-queue

Docker Default Ulimits

The current implementation does not permit us to set the default ulimit on docker daemon (currently a requirement for our elasticsearch). This PR add the DefaultUlimit option to the DockerConfig
2017-08-24 14:30:48 -07:00
Rajadeepan D Ramesh ffc3aa5c8d Fix Broken Link
Fix Broken Link
2017-08-25 02:14:35 +05:30
Kubernetes Submit Queue 74bad14ae9 Merge pull request #3257 from KashifSaadat/validate-aws-machine-type
Automatic merge from submit-queue

Validate AWS machine type on cluster ig update

Fixes #3252
2017-08-24 13:39:47 -07:00
Rohith 9b9e4bb123 Docker Default Ulimits
The current implementation does not permit us to set the default ulimit on docker daemon (currently a requirement for our logstash). This PR add the DefaultUlimit option to the DockerConfig
2017-08-24 21:24:41 +01:00
Murali Reddy 9b8f74d569 remove --cluster-cidr from manifest.
Kube-router was using --cluster-cidr flag to get the subnet allocated
for pod CIDR's. But now kube-router has the ability internally to infer
the CIDR allocated for the pod's by getting the information from
kubernetes API server node spec's
2017-08-25 01:21:51 +05:30
Justin Santa Barbara a467d9dbd7 Add godoc comments 2017-08-24 14:03:37 -04:00
Justin Santa Barbara c6e31a94c7 Explicit CreateCluster & UpdateCluster functions
This enables better validation (in the etcd status PR)
2017-08-24 14:03:37 -04:00
Kubernetes Submit Queue 5199e7168a Merge pull request #3264 from justinsb/bump_image
Automatic merge from submit-queue

Update images in CI tests
2017-08-24 10:27:37 -07:00
Justin Santa Barbara b61b74408b Update images in CI tests 2017-08-24 10:27:27 -04:00
Erik Stidham a0782b0e4f Started release notes for 1.7.1 2017-08-24 09:05:12 -05:00
Kubernetes Submit Queue 73c2ea8f8f Merge pull request #3262 from murali-reddy/kube-router-docs
Automatic merge from submit-queue

Add documentaion to kube-router section of docs/networking

Adding couple of sentences to kube-router documentation.
2017-08-24 00:37:41 -07:00
Kubernetes Submit Queue e6683481c8 Merge pull request #3139 from justinsb/hints_on_cf_test
Automatic merge from submit-queue

Add hints to CF integration test
2017-08-24 00:07:52 -07:00
Kubernetes Submit Queue 5b76cd3833 Merge pull request #3237 from justinsb/17_is_released
Automatic merge from submit-queue

Fix heading on 1.7 notes
2017-08-23 23:36:33 -07:00
Kubernetes Submit Queue c2f3830e0e Merge pull request #3260 from poweld/patch-1
Automatic merge from submit-queue

Fix README.md fragment links

CLI fragment is incorrectly linked to, and Workflows has been replaced with Development
2017-08-23 23:02:28 -07:00
Kubernetes Submit Queue c1652dc4ce Merge pull request #3238 from justinsb/bump_stable_channel
Automatic merge from submit-queue

Promote alpha to stable channel
2017-08-23 22:27:34 -07:00
Murali Reddy af8d0f6917 Add documentaion to kube-router section of docs/networking 2017-08-24 10:35:07 +05:30
Dave Powell f82bbbcde0 Fix README.md fragment links 2017-08-23 12:19:26 -04:00
Alexander Brandstedt 66d4c4ed67 change PulicKey to lower p as in publicKey in json 2017-08-23 12:38:27 +02:00
Alexander Brandstedt f9867302b0 update api machinery 2017-08-23 12:22:55 +02:00
Alexander Brandstedt 5705885d02 rename sshsecret to sshcredential and update files to reflect change. 2017-08-23 12:18:10 +02:00
Kashif Saadat c9c70695ad Validate AWS machine type on cluster ig update 2017-08-23 10:00:07 +01:00
Kubernetes Submit Queue 34473e8602 Merge pull request #3210 from KashifSaadat/feature-gate-strict-iam-policies
Automatic merge from submit-queue

Allow the strict IAM policies to be optional

The stricter IAM policies could potentially cause regression for some edge-cases, or may rely on nodeup image changes that haven't yet been deployed / tagged officially (currently the case on master branch since PR https://github.com/kubernetes/kops/pull/3158 was merged in).

This PR just wraps the new IAM policy rules around a cluster spec flag, `EnableStrictIAM`, so will default to the original behaviour (where the S3 policies were completely open). Could also be used to wrap PR https://github.com/kubernetes/kops/pull/3186 if it progresses any further.

- Or we could reject this and have the policies always strict! :)
2017-08-22 20:27:54 -07:00
Kubernetes Submit Queue 4edc267fb8 Merge pull request #3090 from gambol99/file_assets
Automatic merge from submit-queue

Cluster / InstanceGroup File Assets

@chrislovecnm @justinsb ... 

The current implementation does not make it ease to fully customize nodes before kube install. This PR adds the ability to include file assets in the cluster and instaneGroup spec which can be consumed by nodeup. Allowing those whom need (i.e. me :-)) greater flexibilty around their nodes. @Note, nothing is enforced, so unless you've specified anything everything is as the same

- updated the cluster_spec.md to reflect the changes
- permit users to place inline files into the cluster and instance group specs
- added the ability to template the files, the Cluster and InstanceGroup specs are passed into context
- cleaned up and missed comment, unordered imports etc along the journey

notes: In addition to this; need to look at the detecting the changes in the cluster and instance group spec. Think out loud perhaps using a last_known_configuration annotation, similar to kubernetes
2017-08-22 19:49:48 -07:00
Kubernetes Submit Queue 2d7fb51c2a Merge pull request #3025 from chrislovecnm/mapping-and-uploading-kubernetes-assets
Automatic merge from submit-queue

inventory assets - mapping and uploading kubernetes containers
2017-08-22 19:15:31 -07:00
Kubernetes Submit Queue 7a2ff89d77 Merge pull request #3248 from andrewsykim/do
Automatic merge from submit-queue

Create cluster requirements for DigitalOcean

Initial changes required to create a cluster state. Running `kops update cluster --yes` does not work yet. 

Note that DO has already adopted cloud controller managers (https://github.com/digitalocean/digitalocean-cloud-controller-manager) so we set `--cloud-provider=external`. This will end up being the case for aws, gce and vsphere over the next couple of releases. 

https://github.com/kubernetes/kops/issues/2150

```bash
$ kops create cluster --cloud=digitalocean --name=dev.asykim.com --zones=tor1
I0821 18:47:06.302218   28623 create_cluster.go:845] Using SSH public key: /Users/AndrewSyKim/.ssh/id_rsa.pub
I0821 18:47:06.302293   28623 subnets.go:183] Assigned CIDR 172.20.32.0/19 to subnet tor1
Previewing changes that will be made:

I0821 18:47:11.457696   28623 executor.go:91] Tasks: 0 done / 27 total; 27 can run
I0821 18:47:12.113133   28623 executor.go:91] Tasks: 27 done / 27 total; 0 can run
Will create resources:
  Keypair/kops
  	Subject             	o=system:masters,cn=kops
  	Type                	client

  Keypair/kube-controller-manager
  	Subject             	cn=system:kube-controller-manager
  	Type                	client

  Keypair/kube-proxy
  	Subject             	cn=system:kube-proxy
  	Type                	client

  Keypair/kube-scheduler
  	Subject             	cn=system:kube-scheduler
  	Type                	client

  Keypair/kubecfg
  	Subject             	o=system:masters,cn=kubecfg
  	Type                	client

  Keypair/kubelet
  	Subject             	o=system:nodes,cn=kubelet
  	Type                	client

  Keypair/kubelet-api
  	Subject             	cn=kubelet-api
  	Type                	client

  Keypair/master
  	Subject             	cn=kubernetes-master
  	Type                	server
  	AlternateNames      	[100.64.0.1, 127.0.0.1, api.dev.asykim.com, api.internal.dev.asykim.com, kubernetes, kubernetes.default, kubernetes.default.svc, kubernetes.default.svc.cluster.local]

  ManagedFile/dev.asykim.com-addons-bootstrap
  	Location            	addons/bootstrap-channel.yaml

  ManagedFile/dev.asykim.com-addons-core.addons.k8s.io
  	Location            	addons/core.addons.k8s.io/v1.4.0.yaml

  ManagedFile/dev.asykim.com-addons-dns-controller.addons.k8s.io-k8s-1.6
  	Location            	addons/dns-controller.addons.k8s.io/k8s-1.6.yaml

  ManagedFile/dev.asykim.com-addons-dns-controller.addons.k8s.io-pre-k8s-1.6
  	Location            	addons/dns-controller.addons.k8s.io/pre-k8s-1.6.yaml

  ManagedFile/dev.asykim.com-addons-kube-dns.addons.k8s.io-k8s-1.6
  	Location            	addons/kube-dns.addons.k8s.io/k8s-1.6.yaml

  ManagedFile/dev.asykim.com-addons-kube-dns.addons.k8s.io-pre-k8s-1.6
  	Location            	addons/kube-dns.addons.k8s.io/pre-k8s-1.6.yaml

  ManagedFile/dev.asykim.com-addons-limit-range.addons.k8s.io
  	Location            	addons/limit-range.addons.k8s.io/v1.5.0.yaml

  ManagedFile/dev.asykim.com-addons-storage-aws.addons.k8s.io
  	Location            	addons/storage-aws.addons.k8s.io/v1.6.0.yaml

  Secret/admin

  Secret/kube

  Secret/kube-proxy

  Secret/kubelet

  Secret/system:controller_manager

  Secret/system:dns

  Secret/system:logging

  Secret/system:monitoring

  Secret/system:scheduler

Must specify --yes to apply changes

Cluster configuration has been created.

Suggestions:
 * list clusters with: kops get cluster
 * edit this cluster with: kops edit cluster dev.asykim.com
 * edit your node instance group: kops edit ig --name=dev.asykim.com nodes
 * edit your master instance group: kops edit ig --name=dev.asykim.com master-tor1

Finally configure your cluster with: kops update cluster dev.asykim.com --yes
```
2017-08-22 18:41:10 -07:00
Kubernetes Submit Queue d2469a251f Merge pull request #3241 from Rajadeepan/Rajadeepan-patch-1
Automatic merge from submit-queue

Fix minor typo

Fixed a minor typo
2017-08-22 18:05:51 -07:00
Lars Lehtonen afea9d05c5
Replace deprecated aws session.New() with session.NewSession() 2017-08-22 17:28:55 -07:00
Kubernetes Submit Queue eb80658812 Merge pull request #3165 from tsandall/add-proxy-client-support
Automatic merge from submit-queue

Add proxy client support

This PR adds support for the `--proxy-client-cert-file` and `--proxy-client-key-file` cmd line args that the apiserver accepts now.

/cc @chrislovecnm @blakebarnett
2017-08-22 16:13:06 -07:00
Torin Sandall 7cf6e1036c Add support for proxy client certs
This enables external admission controller webhooks, api aggregation,
and anything else that relies on the
--proxy-client-cert-file/--proxy-client-key-file apiserver args.
2017-08-22 08:03:36 -07:00
andrewsykim 0411ba270e Create cluster requirements for DigitalOcean 2017-08-22 09:01:19 -04:00
Kashif Saadat 0e5c393f10 Rename IAM switch to legacy, default to false for new cluster creations. 2017-08-22 13:27:55 +01:00
Kashif Saadat 0aac9b7f8d Allow the strict IAM policies to be optional, default to original behaviour (not-strict) 2017-08-22 13:27:54 +01:00
Kubernetes Submit Queue 074e251437 Merge pull request #3208 from chrislovecnm/protokube-volume-mount-fixes
Automatic merge from submit-queue

Improving etcd volume detection logic, ensuring that root volumes are not mounted

Fixes: https://github.com/kubernetes/kops/issues/3167

When an AWS account has functionality that adds an ec2 instance tags to a volume automatically, protokube can attempt to mount the root volume.  This PR tightens the logic for detecting etcd volumes.  Also, the two volumes that AWS defines as root volume devices are never mounted. Added a unit test, which required refactoring of the code into a separate method.
2017-08-22 01:15:23 -07:00
chrislovecnm 6071ce7383 refactoring for tracking via assets container registry 2017-08-21 17:29:16 -06:00
chrislovecnm 7efb0f31f6 updating phases 2017-08-21 15:17:34 -06:00
chrislovecnm 2afdb5ab2e mapping-and-uploading-kube-assets 2017-08-21 15:16:56 -06:00
chrislovecnm 7adee24ba3 testing now in different places if we should mount a volume 2017-08-21 13:28:21 -06:00
Kubernetes Submit Queue 0eabaa863f Merge pull request #3207 from KashifSaadat/delete-old-cloud-labels
Automatic merge from submit-queue

Delete old tags when cloudLabels / labels / taints are removed

If you remove custom cloudLabels/labels/taints from the cluster configuration, kops does not correctly update the AWS resources to delete the tags. This seems to be because it only calls the AWS API method `CreateOrUpdateTags`, which won't remove tags that aren't in the supplied list.

The current behaviour is that every `kops update cluster` will show a tag difference but never successfully apply the changes (remove the extra tags).

This PR will perform a diff of the current and expected tags, and call the `DeleteTags` API if there are any tags to delete.
2017-08-21 10:53:14 -07:00