Commit Graph

477 Commits

Author SHA1 Message Date
draveness ddbcfa57e7 feat: cleanup pod critical pod annotations feature
Kubernetes-commit: 495faa22db7e58c2d92704d48f77acebc7a831b0
2019-06-29 09:58:39 +08:00
YAMAMOTO Takashi 0acf11d3c3 apiserver: Update a comment
Kubernetes-commit: 6066246656f532beb04b74e5ea3959e08ecb375b
2019-03-11 15:23:26 +09:00
Walter Fender 9bdac68d70 Get network-proxy working with GCE.
Got the proxy-server coming up in the master.
Added certs and have it comiung up with those certs.
Added a daemonset to run the network-agent.
Adding support for agent running as a sameon set on every node.

Added quick hack to test that proxy server/agent were correctly
tunneling traffic to the kubelet.

Added more WIP for reading network proxy configuration.
Get flags set correctly and fix connection services.
Adding missing ApplyTo
Added ConnectivityService.
Fixed build directives. Added connectivity service configuration.
Fixed log levels.
Fixed minor issues for feature turned off.
Fixed boilerplate and format.
Moved log dialer initialization earlier as per Liggits suggestion.
Fixed a few minor issues in the configuration for GCE.
Fixed scheme allocation
Adding unit test.
Added test for direct connectivity service.

Switching to injecting the Lookup method rather than using a Singleton.
First round of mikedaneses feedback.
Fixed deployment to use yaml and other changes suggested by MikeDanese.

Switched network proxy server/agent which are kebab-case not camelCase.
Picked up DIAL_RSP fix.
Factored in deads2k feedback.
Feedback from mikedanese
Factored in second round of feedback from David.
Fix path in verify.
Factored in anfernee's feedback.
First part of lavalamps feedback.
Factored in more changes from lavalamp and mikedanese.

Renamed network-proxy to konnectivity-server and konnectivity-agent.
Fixed tolerations and config file checking.
Added missing strptr
Finished lavalamps requested rename.
Disambiguating konnectivity service by renaming it egress selector.

Switched feature flag to KUBE_ENABLE_EGRESS_VIA_KONNECTIVITY_SERVICE

Kubernetes-commit: ebb65c5f4c51340f42c260cf00bde8629ed68d74
2019-05-20 12:44:51 -07:00
Dr. Stefan Schimanski 5f126c4400 apiserver: add --shutdown-delay-duration to keep serving until LBs stop serving traffic
Kubernetes-commit: 408f36b8825136c2b1771f642d88557e83a2ddb7
2019-02-22 15:13:28 +01:00
Clayton Coleman 72566fea6c Replace HTTP compression with an inline handler
The previous HTTP compression implementation functioned as a filter, which
required it to deal with a number of special cases that complicated the
implementation.

Instead, when we write an API object to a response, handle only that one
case. This will allow a more limited implementation that does not impact
other code flows.

Also, to prevent excessive CPU use on small objects, compression is
disabled on responses smaller than 128Kb in size.

Kubernetes-commit: 4ed2b9875d0498b5c577095075bda341e96fcec2
2019-05-04 17:36:36 -04:00
Dr. Stefan Schimanski 747ac192e8 apiserver: chain delegated PrepareRun
Kubernetes-commit: 7c4329ed45e3609b1e66b4026c453e71e78db26b
2019-03-04 12:04:43 +01:00
Dr. Stefan Schimanski c4286f7b60 apiserver: store httplog in context
Kubernetes-commit: e848eaa566b750ad5e5fd26a64eecfc883f936f3
2019-06-14 13:09:13 +02:00
Dr. Stefan Schimanski 41c11d856b apiserver: don't log stack trace on /healthz error
Kubernetes-commit: 6e3fd91e1aa3259d7bd67e0a65693e346ade347d
2019-06-14 11:37:48 +02:00
immutablet 5faffb9123 Allow kube-apiserver to test the status of kms-plugin.
Kubernetes-commit: 05fdbb201ffbaff4e92f0899f9e2ca038febb88d
2019-05-30 11:15:35 -07:00
Mike Spreitzer 0cc4524200 Make AuthorizeClientBearerToken actually return if authn or authz is nil
There was a typo, the test was there but the return was not.

Added test that exposes the difference.

Kubernetes-commit: 7056e216addc7203f24c37a95c5c14ad194dddca
2019-06-18 23:37:16 -04:00
Ted Yu 7e3b751e0c Obtain readyzLock once in installReadyz
Kubernetes-commit: c2c7226ca45f2c9ebb2e66056b6b2694d6587eb1
2019-06-19 17:32:52 -07:00
wojtekt cc7d4cc1f1 Move metrics to etcd3 and clean up
Kubernetes-commit: a06f2cfc3fa896d9edefe42387da65905b30ec8e
2019-06-28 13:05:58 +02:00
Andy Goldstein 637cea444b Fix max port value to 65535
Signed-off-by: Andy Goldstein <goldsteina@vmware.com>

Kubernetes-commit: 9bba2c93ec6042fc4140afecc672f025ba491928
2019-06-24 15:13:27 -04:00
Ted Yu e3747a151a Close auditStopCh if SecureServing encounters error
Kubernetes-commit: 9e018468153255ae5972b681f998e96c3f1a6cbe
2019-06-19 12:01:57 -07:00
Han Kang 7fd71e31ef add readyz endpoint for kube-apiserver readiness checks
add startup sequence duration and readyz endpoint

add rbac bootstrapping policy for readyz

add integration test around grace period and readyz

rename startup sequence duration flag

copy health checks to fields

rename health-check installed boolean, refactor clock injection logic

cleanup clock injection code

remove todo about poststarthook url registration from healthz

Kubernetes-commit: 54dcf5c9c46fc4782d4861936309349b5a71a1ac
2019-05-30 11:19:49 -07:00
Tim Allclair b1e85edc1f Avoid the default server mux
Kubernetes-commit: dd5c8e14fd2a1715be7795c37fb5b92478867494
2019-05-16 17:31:16 -07:00
Jordan Liggitt 6562ecd83a Add GetResourceMapper to admission ObjectInterfaces
Kubernetes-commit: 92f735042e1cae38afe74364c036489fb7a81973
2019-05-13 11:24:20 -04:00
SataQiu ad16c7be74 cleanup: move the comment to its place
Kubernetes-commit: 64193630a7c5a4bcc81b612c424bb15c547d9bec
2019-05-23 12:29:12 +08:00
Ted Yu 4af313ef61 Use map to check whether stack trace is needed
Signed-off-by: Ted Yu <yute@vmware.com>

Kubernetes-commit: 85fc0898556d5c0c4b80920bac62842bfc97d763
2019-05-08 14:31:47 -07:00
Andrew Kim ef71315b08 update import of generic featuregate code from k8s.io/apiserver/pkg/util/feature -> k8s.io/component-base/featuregate
Kubernetes-commit: c91913924543e1d29f3f3d51354701df9df75def
2019-03-04 12:46:52 -05:00
Daniel (Shijun) Qian 3a0abf14e5 fix duplicated imports of k8s code (#77484)
* fix duplicated imports of api/core/v1

* fix duplicated imports of client-go/kubernetes

* fix duplicated imports of rest code

* change import name to more reasonable

Kubernetes-commit: 5268f69405251a4a74130fa903e055a59071179a
2019-05-08 18:39:56 +00:00
hui luo 2c9b5e28c4 Split TestLoopbackHostPort into 2 tests
firstly, split into two tests: TestLoopbackHostPortIPv4 and  TestLoopbackHostPortIPv6.
then improve error handling, going to fail with explicit error message when run host
that does not support ipv6 or ipv4

Kubernetes-commit: 6b73b5031c463437064b1593d00a60107d09dd99
2019-04-23 14:52:39 -07:00
yue9944882 735ce2f371 add new flag for enabling requests mgmt handler
Kubernetes-commit: 87d09301e59ac65e55dba32614b8e8b3bae2dd8f
2019-04-15 14:57:55 +08:00
Haowei Cai 4ff581692b remove TrimSuffix and document buffer size
Kubernetes-commit: 0e61b77826f23cbf835002a9eef5722bb1cfdf53
2019-04-01 11:02:39 -07:00
Haowei Cai 278cabecf3 document the usage of errCh
Kubernetes-commit: 5809b6a4282f7ce58e0d815d9326289a8ee7ddb6
2019-03-28 16:55:03 -07:00
Han Kang 18a2d0a0ba log preshutdowndown registration error if we encounter one
Kubernetes-commit: 021f6082944496765383c7572157e9be86ed4177
2019-03-26 13:04:10 -07:00
Yassine TIJANI 72bd8c7a64 use cache size to signal undecorated storage
Kubernetes-commit: 8261d3d9a63f0972453f6503b62299a96ecee657
2019-02-20 22:15:24 +01:00
Clayton Coleman 78a40897c5 Unify runtime.SerializerInfo with negotiate.AcceptedMediaTypes
There was no reason to have two types and this avoids ~10% of allocations
on the GET code path.

```
BenchmarkGet-12          	  100000	    109045 ns/op	   17608 B/op	     146 allocs/op

BenchmarkGet-12          	  100000	    108850 ns/op	   15942 B/op	     132 allocs/op
```

Kubernetes-commit: 0489d0b1cf139253b82f73b072578073bc5616d6
2019-03-21 21:00:55 -04:00
David Eads 121f70dcfd provide verbose output when health check fails
Kubernetes-commit: 3874e43550385c0f4adddc4ccbedf12478233692
2019-03-08 15:49:29 -05:00
yue9944882 95755841db fixes compatibility w/ nil authorizer in apiserver
Kubernetes-commit: 2486174142023ef785f196afee69bbcb78ae1f52
2019-01-29 00:38:57 +08:00
Chao Xu d99ef88606 Expose storage version hash
Kubernetes-commit: 3b618af0d435628feedf06f97bd1c69340d07d95
2019-01-14 19:31:25 -08:00
David Eads 517179160b track poststarthook registration stacks for debugging
Kubernetes-commit: b75e93d8bbfebbc50e0902dc9592ba68dc220762
2019-03-05 09:18:57 -05:00
Justin SB cc4525538b Remove executable permission from testdata
Kubernetes-commit: 19a5528a65bf59bed6289703e1811640b53b2087
2019-01-03 12:21:19 -05:00
Andrew Lytvynov 3604e0cbb0 Extract new keyutil package from client-go/util/cert
This package contains public/private key utilities copied directly from
client-go/util/cert. All imports were updated.

Future PRs will actually refactor the libraries.

Updates #71004

Kubernetes-commit: 18458392ca24c85c688e655aace1afd04f864cbd
2018-12-09 16:24:38 -08:00
Steffen Butzer 729b73dd4a windows/svc: workaround-exit mechanism that works for signal-less binaries
Kubernetes-commit: afdfe8d558c17a4e3ea4f6c7f066897b47bbf989
2019-02-01 19:16:11 +01:00
Steffen Butzer 2335c601dd windows/service: implement graceful shutdown when run as windows service
- Fixes https://github.com/kubernetes/kubernetes/issues/72900
The issue here originally is that os.Exit() is called which exits
the process too early (before svc.Execute updates the status to stopped).
This is picked up as service error and leads to restarting,
if restart-on-fail is configured for the windows service.
svc.Execute already guarantees that the application is exited after,
so that os.Exit call would be unnecessary.

This rework also adds graceful shutdown, which also resolves the
underlying root cause. The graceful shutdown is not guaranteed
to succeed, since the service controller can decide to kill
the service any time after exceeding a shutdown timeout.

Kubernetes-commit: f243c8877978cf3d328c536b36cdf0ef5ca08a37
2019-01-25 00:34:42 +01:00
Mehdy Bohlool 0fbb46dc25 Remove the propagated scheme from the Admission chain
Kubernetes-commit: cebb4ee2ac9e19fe90f78c3285978e585e67a3ac
2019-02-16 13:28:14 -08:00
Justin SB 3883f41494 Add code comments to guard inadvertent removal of insecure-bind-address
Though the flags are deprecated, the deprecation process revealed that
the flag is important for health checks in more secure environments.
Add a link to #43784 to help developers understand why the flags have
not yet been removed.

Issue #43784
Issue #74172
Issue #59018

Kubernetes-commit: 7dbbab0476b35b74f600f62b6751212ed3afe574
2019-02-18 12:58:59 -05:00
David Eads 743057093a allow apiservers to override the list of decorators
Kubernetes-commit: ad740bbba58e48d5ff8353419066b7fd30abfa45
2019-02-18 14:24:14 -05:00
David Eads af92b436cc prevent unhandled errors on colliding poststarthook registration
Kubernetes-commit: 8d0c56e22f73fdb1a82a12475909e7d69f4bec08
2019-02-14 14:07:18 -05:00
Marek Counts c7299d9da0 Moved flag and globalflag
Moved all flag code from `staging/src/k8s.io/apiserver/pkg/util/[flag|globalflag]` to `component-base/cli/[flag|globalflag]` except for the term function because of unwanted dependencies.

Kubernetes-commit: 7744f908306e5131be5a94815ac76a7cba6454f2
2019-02-15 10:28:13 -05:00
Haowei Cai b6257312c8 add test
Kubernetes-commit: 49af9e5ff3ad143d4dac9c90f5b91fbceaa56449
2019-02-14 16:38:06 -08:00
Haowei Cai 103a5b29b5 expose openapi service from genericapiserver
Kubernetes-commit: efae739d02bec5bd74bfda75f3c125dab1376196
2019-02-14 14:33:20 -08:00
Justin SB bf98046128 Remove executable file permission from OWNERS files
Kubernetes-commit: dd19b923b7c26420af39fcf4eedfa213b236c8d3
2019-01-03 12:18:20 -05:00
Chao Xu fbe608d634 Loosing the request body size limit to 100MB to account for the size
ratio between json and protobuf.

Kubernetes-commit: 27166e48b86bf19570ae4e57775906cca1f52ad0
2019-02-07 14:43:35 -08:00
Chao Xu 4ebbf20f41 Adding a limit on the maximum bytes accepted to be decoded in a resource
write request.

Kubernetes-commit: b971b12d3cfa8887aa87957fbba92b90e3e99dc6
2019-02-06 16:58:24 -08:00
Chao Xu b1f08321f6 Simplify the resource_encoding_config.go, since we don't need per group override at all
Kubernetes-commit: 4ea07084dddde5be97d5405696fae47bca4d4663
2018-09-28 16:07:31 -07:00
Chao Xu f516170e82 Remove unnecessary group storage version defaults. The storage version
is either decided by the schema's version priority, or by the per
resource override.

This fixes a bug where the "batch" group is encoded in v1beta1, which
was hidden when --storage-versions is a valid flag.

Kubernetes-commit: 98a1003f57988ccc361af7aee5d0ae49de66dbb4
2018-08-21 17:45:14 -07:00
Dr. Stefan Schimanski 9c9f2c012a apiserver: fix openapi extension types to be JSON
Kubernetes-commit: e67d5f2d8dbbc45d28d0fd5566747ef0df93eb6d
2019-02-07 15:34:42 +01:00
PingWang b8e8ca734e Fix function comment
Signed-off-by: PingWang <wang.ping5@zte.com.cn>

Kubernetes-commit: 7750422a9d5038a2b9da5b79990ceff406434f77
2018-11-10 15:38:56 +08:00