Какое значение по умолчанию для initialDelaySeconds

Проба живучести и готовности Kubernetes для подов (развертывание) может быть настроена с этой начальной задержкой - это означает, что проба запустится после такого количества отправок после того, как контейнер будет запущен. Если он не указан, какое значение по умолчанию? Кажется, я не могу его найти. Значение по умолчанию для periodSeconds задокументировано как 10 секунд.

Спасибо


person RyanDing    schedule 01.02.2018    source источник
comment
InitialDelaySeconds - 0.   -  person Shahriar    schedule 02.02.2018
comment
Если бы это было 0, проверка работоспособности легко завершилась бы ошибкой, так как службы обычно требуют времени для работы. При сбое живучести контейнеры будут перезапущены. Проверка живучести снова завершится ошибкой, что приведет к повторному перезапуску контейнеров. Похоже, что этого не происходит с нашим сервисом, где мы не установили initialDelaySeconds. Наш сервис определенно заработает через несколько секунд.   -  person RyanDing    schedule 02.02.2018
comment
Я искал исходный код Kubernetes, но, похоже, нашел, как это обрабатывается, когда он не установлен.   -  person RyanDing    schedule 02.02.2018
comment
Если он не указан, значение по умолчанию равно нулю. Потому что, когда json / yaml не маршалируется в структуру go, если вы не установите его, он будет равен нулю.   -  person Shahriar    schedule 02.02.2018


Ответы (2)



Учитывая скорость, с которой меняется проект, я хотел убедиться, что код действительно подтверждает это.

Нашел тест в общедоступном репозитории Kubernetes, который проверяет настройки по умолчанию для зондов:

    expectedProbe := v1.Probe{
        InitialDelaySeconds: 0,
        TimeoutSeconds:      1,
        PeriodSeconds:       10,
        SuccessThreshold:    1,
        FailureThreshold:    3,
    }

См. Метод TestSetDefaultProbe в

https://github.com/kubernetes/kubernetes/blob/master/pkg/apis/core/v1/defaults_test.go

person Enrico M.    schedule 19.06.2019