Commit Graph

9498 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
497a998ba6 Merge pull request #88654 from ddebroy/gmsa-disable1
Promote GMSA support for Windows to GA
2020-03-04 02:32:01 -08:00
Kubernetes Prow Robot
71cfd2a3db Merge pull request #88460 from soltysh/filename_exec
Wire --filename flag to exec
2020-03-04 01:09:47 -08:00
Kubernetes Prow Robot
bd6640a8e0 Merge pull request #88769 from deads2k/SNI
Support TLS Server Name overrides in kubeconfig file
2020-03-03 23:18:00 -08:00
Kubernetes Prow Robot
cadd51783b Merge pull request #88783 from neolit123/1.18-fix-kubectl-auth-verbosity
client-go: use klog.V(3) for the cert-rotation controller start/stop
2020-03-03 21:06:09 -08:00
Kubernetes Prow Robot
0535520f6e Merge pull request #88758 from soltysh/hide_last_applied
Hide kubectl.kubernetes.io/last-applied-configuration in describe
2020-03-03 21:06:01 -08:00
Kubernetes Prow Robot
cd23e78c3d Merge pull request #88684 from saad-ali/updateMountLib
Update AzureFile and CephFS to use MountSensitive
2020-03-03 21:05:48 -08:00
Deep Debroy
16d221e407 Promote GMSA to GA
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2020-03-04 02:56:21 +00:00
Kubernetes Prow Robot
aeb88b6ecd Merge pull request #88587 from cmluciano/cml/v1beta1paths
Adding PathType to Ingress
2020-03-03 18:13:47 -08:00
Lubomir I. Ivanov
b2677b1e57 client-go: use klog.V(3) for the cert-rotation controller start/stop
Introduce a verbosity level for the start and stop notifications,
so that regular calls to commands such as:
  "kubectl auth ..."
would only contain the "yes" / "no" output.
2020-03-04 01:35:17 +02:00
Kubernetes Prow Robot
9d0cbb7503 Merge pull request #88673 from jsafrane/block-feature-ga
Promote block volumes to GA
2020-03-03 12:17:12 -08:00
Kubernetes Prow Robot
b9696133ff Merge pull request #88655 from soltysh/deprecate_generator
Deprecate --generator flag from kubectl create commands
2020-03-03 12:17:01 -08:00
Kubernetes Prow Robot
481b04cf7c Merge pull request #88487 from zioproto/issues/69314-tier-config-support
Use compute v1 api to specify network tier
2020-03-03 12:16:52 -08:00
Tim Allclair
db3392ed12 Always include remoteAddr in source IP list for audit (#87167)
* Always include remoteAddr in source IP list for audit

Since the remoteAddr is much harder to spoof than headers, always include it in
the list of source IPs used in audit logs.

* Add v6 tests
2020-03-03 12:15:14 -08:00
saad-ali
22e8189f40 Update dep k8s.io/utils to 0a110f9eb7ab 2020-03-03 11:20:08 -08:00
Rob Scott
f38904d6f4 Adding PathType to Ingress
Co-authored-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2020-03-03 11:11:16 -08:00
David Eads
9dcbc0bf90 update override behavior for kubectl --tls-server-name 2020-03-03 13:23:30 -05:00
Maciej Szulik
02cd65d7bb Squash pkg/describe/versioned/ into pkg/describe/ 2020-03-03 19:20:06 +01:00
Suresh Kumar Ponnusamy
37c81ed79a Support TLS Server Name overrides in kubeconfig file
Signed-off-by: Suresh Kumar Ponnusamy <suresh.ponnusamy@freshworks.com>
2020-03-03 12:55:18 -05:00
James Munnelly
c2367bd5da Extend client-go csr package to invalidate CSRs based on signerName 2020-03-03 13:14:04 +00:00
Maciej Szulik
c77b297bab Hide kubectl.kubernetes.io/last-applied-configuration in describe 2020-03-03 12:54:00 +01:00
Maciej Szulik
9dac1699bf Wire --filename flag to exec 2020-03-03 12:16:52 +01:00
Kubernetes Prow Robot
c86aec0564 Merge pull request #88745 from mborsz/slice3
Implement simple endpoint slice batching
2020-03-03 03:03:38 -08:00
Maciej Borsz
49b11b5431 Implement simple endpoint slice batching 2020-03-03 08:16:42 +01:00
Kubernetes Prow Robot
eaceb7bf5c Merge pull request #88419 from Jefftree/netproxy-udstoken
Add support for token authentication with network proxy
2020-03-02 22:13:37 -08:00
Kubernetes Prow Robot
53d63e11a2 Merge pull request #88584 from willise/master
fix: remove conflict comment of taint "Value"
2020-03-02 20:03:37 -08:00
Kubernetes Prow Robot
79e1ad2f4b Merge pull request #88744 from jackkleeman/kubelet-handle-intermed
Support intermediate certificate in certificate store
2020-03-02 16:16:54 -08:00
Kubernetes Prow Robot
7dccfd6121 Merge pull request #87631 from immutableT/extract-auth-metrics
Factor-out metrics related logic from authentication logic.
2020-03-02 16:16:19 -08:00
Kubernetes Prow Robot
a019609d5d Merge pull request #87508 from jennybuckley/large-obj
Don't save managedFields if object is too large
2020-03-02 16:16:05 -08:00
Kubernetes Prow Robot
4b1ee392c1 Merge pull request #79083 from jackkleeman/client-cert-file-reload
Add ability to reload client certificates from disk
2020-03-02 16:15:53 -08:00
Kubernetes Prow Robot
d115206309 Merge pull request #88609 from yue9944882/chore/follow-up-metrics
Preserve legacy inflight metrics and fixes registration
2020-03-02 14:50:06 -08:00
Kubernetes Prow Robot
e1a69aee41 Merge pull request #86837 from inductor/feature/update_japaense_translation_for_kubectl
Update po file for kubectl Japanese translation
2020-03-02 14:49:39 -08:00
Jan Safranek
3af671011a Generated API 2020-03-02 22:21:42 +01:00
Jack Kleeman
83a223f5ee Support intermediate certificate in certificate store 2020-03-02 20:24:04 +00:00
Jefftree
0989770135 Update network proxy to v0.0.7 2020-03-02 10:09:00 -08:00
Jack Kleeman
929b1559a0 Add ReloadCertFromDisk flag to rest.Config and to kubeconfig which allows the provided client certificate files to be reloaded from disk (currently on every use)
Close outbound connections when using a cert callback and certificates rotate. This means that we won't get into a situation where we have open TLS connections using expires certs, which would get unauthorized errors at the apiserver

Attempt to retrieve a new certificate if open connections near expiry, to prevent the case where the cert expires but we haven't yet opened a new TLS connection and so GetClientCertificate hasn't been called.

Move certificate rotation logic to a separate function

Rely on generic transport approach to handle closing TLS client connections in exec plugin; no need to use a custom dialer as this is now the default behaviour of the transport when faced with a cert callback. As a result of handling this case, it is now safe to apply the transport approach even in cases where there is a custom Dialer (this will not affect kubelet connrotation behaviour, because that uses a custom transport, not just a dialer).

Check expiry of the full TLS certificate chain that will be presented, not only the leaf. Only do this check when the certificate actually rotates. Start the certificate as a zero value, not nil, so that we don't see a rotation when there is in fact no client certificate

Drain the timer when we first initialize it, to prevent immediate rotation. Additionally, calling Stop() on the timer isn't necessary.

Don't close connections on the first 'rotation'

Remove RotateCertFromDisk and RotateClientCertFromDisk flags.

Instead simply default to rotating certificates from disk whenever files are exclusively provided.

Add integration test for client certificate rotation

Simplify logic; rotate every 5 mins

Instead of trying to be clever and checking for rotation just before an
expiry, let's match the logic of the new apiserver cert rotation logic
as much as possible. We write a controller that checks for rotation
every 5 mins. We also check on every new connection.

Respond to review

Fix kubelet certificate rotation logic

The kubelet rotation logic seems to be broken because it expects its
cert files to end up as cert data whereas in fact they end up as a
callback. We should just call the tlsConfig GetCertificate callback
as this obtains a current cert even in cases where a static cert is
provided, and check that for validity.

Later on we can refactor all of the kubelet logic so that all it does is
write files to disk, and the cert rotation work does the rest.

Only read certificates once a second at most

Respond to review

1) Don't blat the cert file names
2) Make it more obvious where we have a neverstop
3) Naming
4) Verbosity

Avoid cache busting

Use filenames as cache keys when rotation is enabled, and add the
rotation later in the creation of the transport.

Caller should start the rotating dialer

Add continuous request rotation test

Rebase: use context in List/Watch

Swap goroutine around

Retry GETs on net.IsProbableEOF

Refactor certRotatingDialer

For simplicity, don't affect cert callbacks

To reduce change surface, lets not try to handle the case of a changing
GetCert callback in this PR. Reverting this commit should be sufficient
to handle that case in a later PR.

This PR will focus only on rotating certificate and key files.
Therefore, we don't need to modify the exec auth plugin.

Fix copyright year
2020-03-02 17:20:16 +00:00
Kubernetes Prow Robot
e9d502e4fc Merge pull request #88663 from deads2k/enable-profiling-by-default
update kube-controller-manager and kube-scheduler to match kube-apiserver defaults
2020-03-02 07:24:43 -08:00
yue9944882
1cb42445d7 hack/update-vendor.sh 2020-03-02 21:44:58 +08:00
Mike Spreitzer
dbe8436144 Replaced uber atomic with sync atomic, removed unneded "blank import" 2020-03-02 21:36:26 +08:00
Kubernetes Prow Robot
fdb2cb4c88 Merge pull request #88509 from robscott/ingress-v1beta1-class
Adding IngressClass to networking/v1beta1
2020-03-01 20:58:42 -08:00
Rob Scott
132d2afca0 Adding IngressClass to networking/v1beta1
Co-authored-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2020-03-01 18:17:09 -08:00
Kubernetes Prow Robot
1d407216e7 Merge pull request #88699 from feiskyer/vmss-update-improvement
Improve performance for VMSS LoadBalancerBackendAddressPools updates
2020-03-01 17:40:42 -08:00
Pengfei Ni
7f270038d3 Remove unused function aggregateGoroutinesWithDelay 2020-03-01 11:11:51 +00:00
Pengfei Ni
0f4cfe58d8 Switch to UpdateVMs() for updating VMSS backend address pool 2020-03-01 04:46:51 +00:00
immutablet
c0bad80e5b Factor-out metrics related logic from authentication logic. 2020-02-29 16:39:09 -08:00
Jordan Liggitt
f205e3dd59 Use only v1 CRD resources in e2e tests 2020-02-29 17:34:26 -05:00
Pengfei Ni
2af26dca97 Add UpdateVMs() for VMSS client to allow update multiple VMSSVMs by
sequential sync requests and concurent async requests.
2020-02-29 12:52:00 +00:00
Kubernetes Prow Robot
665c6648eb Merge pull request #87485 from gavinfish/kubectl_pkg_config
Staticcheck: vendor/k8s.io/kubectl/pkg/cmd/exec|config|certificates
2020-02-29 02:26:39 -08:00
Kubernetes Prow Robot
03b7f272c8 Merge pull request #88246 from munnerz/csr-signername-controllers
Update CSR controllers & kubelet to respect signerName field
2020-02-28 23:38:39 -08:00
Kubernetes Prow Robot
5488fe547d Merge pull request #86431 from SamyCoenen/patch-1
Update README.md
2020-02-28 21:30:39 -08:00
Kubernetes Prow Robot
b378b17560 Merge pull request #88675 from julianvmodesto/hide-server-dry-run
Hide deprecated --server-dry-run for kubectl apply
2020-02-28 18:44:57 -08:00