Siyuan Zhang
2caf0f0a12
Add schema verification when closing etcd.
...
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-02-20 08:55:55 -08:00
Bogdan Kanivets
e7da7ebf7e
add flag to allow downgrade from 3.5
...
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-02-20 08:55:55 -08:00
Benjamin Wang
5c3a36d813
print error log when creating peer listener failed
...
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-01-24 13:56:02 +00:00
Marek Siarkowicz
4a8381a461
server: Split metrics and health code
...
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2023-12-14 10:25:43 -08:00
Siyuan Zhang
cc44646a2e
server: Cover V3 health with tests
...
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2023-12-14 10:23:49 -08:00
Wei Fu
66713f69af
embed: fix nil pointer dereference when stopServer
...
Since v3.4.25, ETCD server introduces http-only urls flag to expose
gRPC-only endpoints. When user enables this feature, the stopServer will
panic during terminating. If the server is leader, it won't have chance
to transfer the leadership.
```
Jul 07 14:43:04 etcd[11502]: received terminated signal, shutting down...
Jul 07 14:43:04 etcd[11502]: WARNING: 2023/07/07 14:43:04 grpc: addrConn.createTransport failed to connect to {0.0.0.0:2379 <nil> 0 <nil>}. Err :connection error: desc = "transport: Error while dialing dial tcp 0.0.0.0:2379: connect: connection refused". Reconnecting...Jul 07 14:43:04 etcd[11502]: WARNING: 2023/07/07 14:43:04 grpc: addrConn.createTransport failed to connect to {0.0.0.0:2379 <nil> 0 <nil>}. Err :connection error: desc = "transport: Error while dialing dial tcp 0.0.0.0:2379: connect: connection refused". Reconnecting...
Jul 07 14:43:04 etcd[11502]: panic: runtime error: invalid memory address or nil pointer dereference Jul 07 14:43:04 etcd[11502]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x130 pc=0x9ccd45]
Jul 07 14:43:04 etcd[11502]: goroutine 225 [running]:
Jul 07 14:43:04 etcd[11502]: google.golang.org/grpc.(*Server).Stop(0x0)
Jul 07 14:43:04 etcd[11502]: /home/fuwei/go/pkg/mod/google.golang.org/grpc@v1.26.0/server.go:1390 +0x45
Jul 07 14:43:04 etcd[11502]: go.etcd.io/etcd/embed.stopServers.func1()
Jul 07 14:43:04 etcd[11502]: /home/fuwei/go/src/go.etcd.io/etcd/embed/etcd.go:431 +0x3c
Jul 07 14:43:04 etcd[11502]: go.etcd.io/etcd/embed.stopServers({0x115a558, 0xc000278b70}, 0xc00024f248)
Jul 07 14:43:04 etcd[11502]: /home/fuwei/go/src/go.etcd.io/etcd/embed/etcd.go:438 +0x7d
Jul 07 14:43:04 etcd[11502]: go.etcd.io/etcd/embed.(*Etcd).Close(0xc0004d6600)
Jul 07 14:43:04 etcd[11502]: /home/fuwei/go/src/go.etcd.io/etcd/embed/etcd.go:392 +0x835
Jul 07 14:43:04 etcd[11502]: go.etcd.io/etcd/pkg/osutil.HandleInterrupts.func1()
Jul 07 14:43:04 etcd[11502]: /home/fuwei/go/src/go.etcd.io/etcd/pkg/osutil/interrupt_unix.go:70 +0x284
Jul 07 14:43:04 etcd[11502]: created by go.etcd.io/etcd/pkg/osutil.HandleInterrupts
Jul 07 14:43:04 etcd[11502]: /home/fuwei/go/src/go.etcd.io/etcd/pkg/osutil/interrupt_unix.go:53 +0xce
Jul 07 14:43:04 systemd[1]: etcd.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
```
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2023-07-07 21:28:06 +08:00
Marek Siarkowicz
47d4ff2e36
server: Fix defer function closure escape
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-04-03 16:11:05 +02:00
Marek Siarkowicz
8dc1244179
server: Add --listen-client-http-urls flag to allow running grpc server separate from http server
...
Difference in load configuration for watch delay tests show how huge the
impact is. Even with random write scheduler grpc under http
server can only handle 500 KB with 2 seconds delay. On the other hand,
separate grpc server easily hits 10, 100 or even 1000 MB within 100 miliseconds.
Priority write scheduler that was used in most previous releases
is far worse than random one.
Tests configured to only 5 MB to avoid flakes and taking too long to fill
etcd.
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-04-03 16:11:03 +02:00
Marek Siarkowicz
dd0bc66478
server: Pick one address that all grpc gateways connect to
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-04-03 15:47:35 +02:00
Marek Siarkowicz
a4ac849ec1
server: Extract resolveUrl helper function
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-04-03 15:43:46 +02:00
Marek Siarkowicz
66704b4c59
server: Separate client listener grouping from serving
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-04-03 15:43:35 +02:00
Marek Siarkowicz
6de105e89b
refactor: Use proper variable names for urls
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-04-03 15:35:10 +02:00
James Blair
d8f7cfe28d
Backport tls 1.3 support.
...
Signed-off-by: James Blair <mail@jamesblair.net>
2023-03-16 21:46:17 +13:00
Benjamin Wang
1d7639f796
etcdserver: added more debug log for the purgeFile goroutine
...
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-10-12 19:39:20 +08:00
Marek Siarkowicz
8f4735dfd4
server: Require either cluster version v3.6 or --experimental-enable-lease-checkpoint-persist to persist lease remainingTTL
...
To avoid inconsistant behavior during cluster upgrade we are feature
gating persistance behind cluster version. This should ensure that
all cluster members are upgraded to v3.6 before changing behavior.
To allow backporting this fix to v3.5 we are also introducing flag
--experimental-enable-lease-checkpoint-persist that will allow for
smooth upgrade in v3.5 clusters with this feature enabled.
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2022-07-22 10:28:29 +02:00
Benjamin Wang
6071b1c523
Support configuring MaxConcurrentStreams for http2
...
Backport https://github.com/etcd-io/etcd/pull/14219 to 3.4
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-07-21 14:25:29 +08:00
Sam Batschelet
9aeabe447d
server: Added config parameter experimental-warning-apply-duration
...
Signed-off-by: Sam Batschelet <sbatsche@redhat.com>
2021-03-03 12:14:30 -05:00
jingyih
75d5e78d1f
*: fix backport of PR12216
...
Fix bugs introduced in commit c60dabf
2020-08-16 15:01:18 +08:00
jingyih
c60dabf2f3
*: add experimental flag for watch notify interval
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2020-08-15 10:24:25 -07:00
cfc4n
4488595e05
auth: Customize simpleTokenTTL settings.
...
see https://github.com/etcd-io/etcd/issues/11978 for more detail.
2020-06-25 19:58:26 +08:00
Sahdev P. Zala
05c441f92f
embed: fix compaction runtime err
...
Handle negative value input which currently gives a runtime error.
2020-06-20 20:58:18 -04:00
David Crawshaw
78f67988aa
etcdserver, et al: add --unsafe-no-fsync flag
...
This makes it possible to run an etcd node for testing and development
without placing lots of load on the file system.
Fixes #11930 .
Signed-off-by: David Crawshaw <crawshaw@tailscale.com>
2020-06-04 20:19:28 -07:00
Joe Betz
1e213b7ab6
*: Add experimental-compaction-batch-limit flag
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2019-08-15 13:31:39 -07:00
Jingyi Hu
e67b9829b6
*: enable lease checkpoint via experimental flag
...
Primary lessor persist lease remainingTTL only if experimental flag
"--experimental-enable-lease-checkpoint" is set.
2019-06-05 15:30:03 -07:00
Gyuho Lee
34bd797e67
*: revert module import paths
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2019-05-28 15:39:35 -07:00
shivaramr
9150bf52d6
go modules: Fix module path version to include version number
2019-04-26 15:29:50 -07:00
Ben McIlwain
b3dd3d3856
embed: Fix HTTPs -> HTTPS in error message
2019-04-17 09:38:53 -04:00
caoming
874532c2da
embed: Modify the comments to be more precise.
2019-03-14 10:59:52 +08:00
WizardCXY
e6c6d8492e
*: add flag to let etcd use the new boltdb freelistType feature
2019-02-14 11:07:08 +08:00
Hitoshi Mitake
72dd4a18c5
*: add a new option --enable-grpc-gateway for enabling/disabling grpc gateway
2019-01-23 03:26:34 +09:00
Xiang Li
3faed211e5
*: add flags to setup backend related config
2018-11-26 15:50:26 -08:00
Shin'ya Ueoka
aa4313a55a
*: fix github links
2018-11-10 11:14:18 +09:00
Gyuho Lee
d37f1521b7
*: update import paths to "go.etcd.io/etcd"
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-08-28 17:47:55 -07:00
Gyuho Lee
3ac4d208ac
embed: combine all info-print functions
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-07-09 12:32:47 -07:00
Gyuho Lee
3125c0c3e8
embed: support custom cipher suites
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-06-05 12:50:29 -07:00
Gyuho Lee
7940113906
*: move internal "etcdserver/api/rafthttp"
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-05-21 10:31:16 -07:00
Gyuho Lee
afe511945e
embed: rename "SnapshotCount", add "SnapshotCatchUpEntries"
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-05-18 14:38:39 -07:00
Jiang Xuan
bf432648ae
*: make bcrypt-cost configurable
2018-05-03 11:43:32 -07:00
Gyuho Lee
5828efda38
*: use "zap.Field"
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-05-02 13:26:39 -07:00
Gyuho Lee
154d7ca4f2
embed: use structured logging in peer handler
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-05-02 12:53:46 -07:00
Gyuho Lee
26b0c84d29
embed: support structured logging in "v2http"
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-05-02 11:57:23 -07:00
Gyuho Lee
c316e6773b
embed: clean up structured logging calls
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-26 14:36:22 -07:00
Gyuho Lee
d33a74d380
embed: add "loggerCore" field for Raft logger
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-25 10:16:51 -07:00
Gyuho Lee
4f45f5d9dd
Merge pull request #9591 from gyuho/election
...
*: add --initial-election-tick-advance to configure election fast-forward on bootstrap
2018-04-23 10:17:49 -07:00
Gyuho Lee
c76c696ed7
embed: sync logger on server close
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-20 10:54:37 -07:00
Gyuho Lee
bffc532f9f
embed: add "InitialElectionTickAdvance"
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-19 17:45:23 -07:00
Gyuho Lee
b0112086d6
Merge pull request #9354 from hexfusion/u_sock
...
embed: explicitly define unix proto
2018-04-19 08:16:38 -07:00
Gyuho Lee
a47c18ff5b
embed: clean up initial server start logs
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-17 14:24:08 -07:00
Gyuho Lee
c712e08a42
embed,etcdmain: support structured logger
...
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-16 17:36:00 -07:00
Gyuho Lee
041b9069a2
*: configure server logger
...
- Add/Document "logger" to support structured logging.
- This makes functional tests run easier, since zap logger
provides built-in log redirect to files.
- "etcd --logger-option=zap" to enable structured logging.
- Current "capnslog" will still be used as "default".
- We may switch the default or deprecate "capnslog" in v3.5.
- Either way, will clearly be documented.
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
2018-04-16 17:36:00 -07:00