cmd/praefect: Check of the system clock synchronization
Because check of the authentication token depends on the time we need to make sure it is synced on the praefect machine and all gitaly machines that belong to the cluster. That is why a new check point is added to the 'check' sub-command of the praefect binary. The task should be run on the praefect node and doesn't require praefect to be up and running. It is possible to configure the URL of the NTP service and acceptable time offset via env variables NTP_URL and ALLOWED_OFFSET_MILLIS. The check has fatal severity because the cluster won't work correctly if auth checks fail continuously for each request.
Showing
- cmd/praefect/subcmd.go 2 additions, 0 deletionscmd/praefect/subcmd.go
- go.mod 1 addition, 0 deletionsgo.mod
- go.sum 2 additions, 0 deletionsgo.sum
- internal/gitaly/service/internalgitaly/server.go 1 addition, 1 deletioninternal/gitaly/service/internalgitaly/server.go
- internal/gitaly/service/server/clocksynced.go 16 additions, 0 deletionsinternal/gitaly/service/server/clocksynced.go
- internal/gitaly/service/server/info_test.go 9 additions, 1 deletioninternal/gitaly/service/server/info_test.go
- internal/gitaly/service/server/server.go 7 additions, 4 deletionsinternal/gitaly/service/server/server.go
- internal/gitaly/service/setup/register.go 2 additions, 1 deletioninternal/gitaly/service/setup/register.go
- internal/helper/clock.go 35 additions, 0 deletionsinternal/helper/clock.go
- internal/praefect/checks.go 75 additions, 0 deletionsinternal/praefect/checks.go
- internal/praefect/checks_test.go 45 additions, 0 deletionsinternal/praefect/checks_test.go
- internal/praefect/protoregistry/protoregistry.go 1 addition, 0 deletionsinternal/praefect/protoregistry/protoregistry.go
- internal/praefect/server.go 2 additions, 1 deletioninternal/praefect/server.go
- internal/praefect/service/server/clocksynced.go 16 additions, 0 deletionsinternal/praefect/service/server/clocksynced.go
- internal/praefect/service/server/server.go 10 additions, 8 deletionsinternal/praefect/service/server/server.go
- proto/go/gitalypb/server.pb.go 165 additions, 31 deletionsproto/go/gitalypb/server.pb.go
- proto/go/gitalypb/server_grpc.pb.go 40 additions, 0 deletionsproto/go/gitalypb/server_grpc.pb.go
- proto/server.proto 12 additions, 0 deletionsproto/server.proto
- ruby/proto/gitaly/server_pb.rb 8 additions, 0 deletionsruby/proto/gitaly/server_pb.rb
- ruby/proto/gitaly/server_services_pb.rb 3 additions, 0 deletionsruby/proto/gitaly/server_services_pb.rb
Please register or sign in to comment