ਕੁਬਰਨੇਟਸ ਵਿੱਚ DNS ਨਾਲ ਸਮੱਸਿਆਵਾਂ। ਜਨਤਕ ਪੋਸਟਮਾਰਟਮ

ਨੋਟ ਕਰੋ ਅਨੁਵਾਦ: ਇਹ ਕੰਪਨੀ ਦੇ ਇੰਜੀਨੀਅਰਿੰਗ ਬਲੌਗ ਤੋਂ ਜਨਤਕ ਪੋਸਟਮਾਰਟਮ ਦਾ ਅਨੁਵਾਦ ਹੈ ਤਿਆਰ ਕਰੋ. ਇਹ ਕੁਬਰਨੇਟਸ ਕਲੱਸਟਰ ਵਿੱਚ ਕੰਟਰੈਕ ਨਾਲ ਇੱਕ ਸਮੱਸਿਆ ਦਾ ਵਰਣਨ ਕਰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਕੁਝ ਉਤਪਾਦਨ ਸੇਵਾਵਾਂ ਦਾ ਅੰਸ਼ਕ ਡਾਊਨਟਾਈਮ ਹੁੰਦਾ ਹੈ।

ਇਹ ਲੇਖ ਉਹਨਾਂ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ ਜੋ ਪੋਸਟਮਾਰਟਮ ਬਾਰੇ ਥੋੜਾ ਹੋਰ ਸਿੱਖਣਾ ਚਾਹੁੰਦੇ ਹਨ ਜਾਂ ਭਵਿੱਖ ਵਿੱਚ ਕੁਝ ਸੰਭਾਵੀ DNS ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਰੋਕਣਾ ਚਾਹੁੰਦੇ ਹਨ।

ਕੁਬਰਨੇਟਸ ਵਿੱਚ DNS ਨਾਲ ਸਮੱਸਿਆਵਾਂ। ਜਨਤਕ ਪੋਸਟਮਾਰਟਮ
ਇਹ DNS ਨਹੀਂ ਹੈ
ਇਹ DNS ਨਹੀਂ ਹੋ ਸਕਦਾ
ਇਹ DNS ਸੀ

ਪ੍ਰੀਪਲੀ ਵਿੱਚ ਪੋਸਟਮਾਰਟਮ ਅਤੇ ਪ੍ਰਕਿਰਿਆਵਾਂ ਬਾਰੇ ਥੋੜ੍ਹਾ ਜਿਹਾ

ਇੱਕ ਪੋਸਟਮਾਰਟਮ ਇੱਕ ਖਰਾਬੀ ਜਾਂ ਉਤਪਾਦਨ ਵਿੱਚ ਕਿਸੇ ਘਟਨਾ ਦਾ ਵਰਣਨ ਕਰਦਾ ਹੈ। ਪੋਸਟਮਾਰਟਮ ਵਿੱਚ ਘਟਨਾਵਾਂ ਦੀ ਸਮਾਂਰੇਖਾ, ਉਪਭੋਗਤਾ ਪ੍ਰਭਾਵ, ਮੂਲ ਕਾਰਨ, ਕੀਤੀਆਂ ਗਈਆਂ ਕਾਰਵਾਈਆਂ ਅਤੇ ਸਿੱਖੇ ਗਏ ਸਬਕ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।

SRE ਦੀ ਮੰਗ ਕਰ ਰਿਹਾ ਹੈ

ਪੀਜ਼ਾ ਨਾਲ ਹਫਤਾਵਾਰੀ ਮੀਟਿੰਗਾਂ ਵਿੱਚ, ਤਕਨੀਕੀ ਟੀਮ ਵਿੱਚ, ਅਸੀਂ ਵੱਖ-ਵੱਖ ਜਾਣਕਾਰੀ ਸਾਂਝੀ ਕਰਦੇ ਹਾਂ। ਅਜਿਹੀਆਂ ਮੀਟਿੰਗਾਂ ਦੇ ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਹਿੱਸਿਆਂ ਵਿੱਚੋਂ ਇੱਕ ਪੋਸਟ-ਮਾਰਟਮ ਹੁੰਦਾ ਹੈ, ਜੋ ਅਕਸਰ ਸਲਾਈਡਾਂ ਦੇ ਨਾਲ ਇੱਕ ਪੇਸ਼ਕਾਰੀ ਅਤੇ ਘਟਨਾ ਦੇ ਵਧੇਰੇ ਡੂੰਘਾਈ ਨਾਲ ਵਿਸ਼ਲੇਸ਼ਣ ਦੇ ਨਾਲ ਹੁੰਦਾ ਹੈ। ਭਾਵੇਂ ਅਸੀਂ ਪੋਸਟਮਾਰਟਮ ਤੋਂ ਬਾਅਦ ਤਾੜੀਆਂ ਨਹੀਂ ਵਜਾਉਂਦੇ, ਅਸੀਂ "ਕੋਈ ਦੋਸ਼ ਨਹੀਂ" (ਕੋਈ ਦੋਸ਼ ਨਹੀਂ) ਦਾ ਸੱਭਿਆਚਾਰ ਵਿਕਸਿਤ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਾਂ।ਦੋਸ਼ ਰਹਿਤ ਸਭਿਆਚਾਰ). ਸਾਡਾ ਮੰਨਣਾ ਹੈ ਕਿ ਪੋਸਟਮਾਰਟਮ ਲਿਖਣਾ ਅਤੇ ਪੇਸ਼ ਕਰਨਾ ਸਾਡੀ (ਅਤੇ ਹੋਰਾਂ) ਭਵਿੱਖ ਵਿੱਚ ਅਜਿਹੀਆਂ ਘਟਨਾਵਾਂ ਨੂੰ ਰੋਕਣ ਵਿੱਚ ਮਦਦ ਕਰ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਅਸੀਂ ਉਹਨਾਂ ਨੂੰ ਸਾਂਝਾ ਕਰ ਰਹੇ ਹਾਂ।

ਕਿਸੇ ਘਟਨਾ ਵਿੱਚ ਸ਼ਾਮਲ ਵਿਅਕਤੀਆਂ ਨੂੰ ਇਹ ਮਹਿਸੂਸ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਉਹ ਸਜ਼ਾ ਜਾਂ ਬਦਲੇ ਦੇ ਡਰ ਤੋਂ ਬਿਨਾਂ ਵਿਸਥਾਰ ਵਿੱਚ ਗੱਲ ਕਰ ਸਕਦੇ ਹਨ। ਕੋਈ ਦੋਸ਼ ਨਹੀਂ! ਪੋਸਟਮਾਰਟਮ ਲਿਖਣਾ ਕੋਈ ਸਜ਼ਾ ਨਹੀਂ, ਸਗੋਂ ਪੂਰੀ ਕੰਪਨੀ ਲਈ ਸਿੱਖਣ ਦਾ ਮੌਕਾ ਹੈ।

CALMS ਅਤੇ DevOps ਰੱਖੋ: S ਸਾਂਝਾ ਕਰਨ ਲਈ ਹੈ

ਕੁਬਰਨੇਟਸ ਵਿੱਚ DNS ਨਾਲ ਸਮੱਸਿਆਵਾਂ। ਪੋਸਟਮਾਰਟਮ

ਮਿਤੀ: 28.02.2020

ਲੇਖਕ: ਅਮੇਟ ਯੂ., ਐਂਡਰੀ ਐਸ., ਇਗੋਰ ਕੇ., ਅਲੈਕਸੀ ਪੀ.

ਸਥਿਤੀ: ਸਮਾਪਤ

ਸੰਖੇਪ ਵਿੱਚ: ਕੁਬਰਨੇਟਸ ਕਲੱਸਟਰ ਵਿੱਚ ਕੁਝ ਸੇਵਾਵਾਂ ਲਈ ਅੰਸ਼ਕ DNS ਅਣਉਪਲਬਧਤਾ (26 ਮਿੰਟ)

ਪ੍ਰਭਾਵ: A, B ਅਤੇ C ਸੇਵਾਵਾਂ ਲਈ 15000 ਇਵੈਂਟ ਗੁਆਏ ਗਏ

ਮੁਖ ਕਾਰਣ: ਕੁਬੇ-ਪ੍ਰੌਕਸੀ ਕੰਟਰੈਕ ਟੇਬਲ ਤੋਂ ਇੱਕ ਪੁਰਾਣੀ ਐਂਟਰੀ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਹਟਾਉਣ ਵਿੱਚ ਅਸਮਰੱਥ ਸੀ, ਇਸਲਈ ਕੁਝ ਸੇਵਾਵਾਂ ਅਜੇ ਵੀ ਗੈਰ-ਮੌਜੂਦ ਪੌਡਾਂ ਨਾਲ ਜੁੜਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰ ਰਹੀਆਂ ਸਨ।

E0228 20:13:53.795782       1 proxier.go:610] Failed to delete kube-system/kube-dns:dns endpoint connections, error: error deleting conntrack entries for UDP peer {100.64.0.10, 100.110.33.231}, error: conntrack command returned: ...

ਟਰਿੱਗਰ: ਕੁਬਰਨੇਟਸ ਕਲੱਸਟਰ ਦੇ ਅੰਦਰ ਘੱਟ ਲੋਡ ਦੇ ਕਾਰਨ, ਕੋਰਡੀਐਨਐਸ-ਆਟੋਸਕੇਲਰ ਨੇ ਤੈਨਾਤੀ ਵਿੱਚ ਪੌਡਾਂ ਦੀ ਗਿਣਤੀ ਤਿੰਨ ਤੋਂ ਘਟਾ ਦਿੱਤੀ ਹੈ।

ਹੱਲ: ਐਪਲੀਕੇਸ਼ਨ ਦੀ ਅਗਲੀ ਤੈਨਾਤੀ ਨੇ ਨਵੇਂ ਨੋਡਾਂ ਦੀ ਸਿਰਜਣਾ ਸ਼ੁਰੂ ਕੀਤੀ, ਕੋਰਡੀਐਨਐਸ-ਆਟੋਸਕੇਲਰ ਨੇ ਕਲੱਸਟਰ ਦੀ ਸੇਵਾ ਕਰਨ ਲਈ ਹੋਰ ਪੌਡ ਸ਼ਾਮਲ ਕੀਤੇ, ਜਿਸ ਨੇ ਕੰਟਰੈਕ ਟੇਬਲ ਨੂੰ ਮੁੜ ਲਿਖਣ ਲਈ ਉਕਸਾਇਆ।

ਖੋਜ: ਪ੍ਰੋਮੀਥੀਅਸ ਨਿਗਰਾਨੀ ਨੇ ਸੇਵਾਵਾਂ A, B ਅਤੇ C ਲਈ ਵੱਡੀ ਗਿਣਤੀ ਵਿੱਚ 5xx ਤਰੁੱਟੀਆਂ ਦਾ ਪਤਾ ਲਗਾਇਆ ਅਤੇ ਆਨ-ਡਿਊਟੀ ਇੰਜੀਨੀਅਰਾਂ ਨੂੰ ਕਾਲ ਸ਼ੁਰੂ ਕੀਤੀ।

ਕੁਬਰਨੇਟਸ ਵਿੱਚ DNS ਨਾਲ ਸਮੱਸਿਆਵਾਂ। ਜਨਤਕ ਪੋਸਟਮਾਰਟਮ
ਕਿਬਾਨਾ ਵਿੱਚ 5xx ਗਲਤੀਆਂ

ਕਾਰਵਾਈਆਂ

ਪ੍ਰਭਾਵ
ਟਾਈਪ ਕਰੋ
ਜਿੰਮੇਵਾਰ
ਉਦੇਸ਼

CoreDNS ਲਈ ਆਟੋਸਕੇਲਰ ਨੂੰ ਅਸਮਰੱਥ ਬਣਾਓ
ਰੋਕਿਆ
ਅਮੇਟ ਯੂ.
DEVOPS-695

ਇੱਕ ਕੈਸ਼ਿੰਗ DNS ਸਰਵਰ ਸੈਟ ਅਪ ਕਰੋ
ਘਟਾਓ
ਮੈਕਸ ਵੀ.
DEVOPS-665

ਕੰਟਰੈਕ ਨਿਗਰਾਨੀ ਸੈਟ ਅਪ ਕਰੋ
ਰੋਕਿਆ
ਅਮੇਟ ਯੂ.
DEVOPS-674

ਸਬਕ ਸਿੱਖਿਆ ਹੈ

ਕੀ ਚੰਗਾ ਹੋਇਆ:

  • ਨਿਗਰਾਨੀ ਨੇ ਵਧੀਆ ਕੰਮ ਕੀਤਾ. ਜਵਾਬ ਤੇਜ਼ ਅਤੇ ਸੰਗਠਿਤ ਸੀ
  • ਅਸੀਂ ਨੋਡਾਂ 'ਤੇ ਕੋਈ ਸੀਮਾਵਾਂ ਨਹੀਂ ਮਾਰੀਆਂ

ਕੀ ਗਲਤ ਸੀ:

  • ਅਜੇ ਵੀ ਅਣਜਾਣ ਅਸਲੀ ਮੂਲ ਕਾਰਨ, ਦੇ ਸਮਾਨ ਖਾਸ ਬੱਗ ਉਲਟ ਵਿੱਚ
  • ਸਾਰੀਆਂ ਕਾਰਵਾਈਆਂ ਸਿਰਫ਼ ਨਤੀਜਿਆਂ ਨੂੰ ਠੀਕ ਕਰਦੀਆਂ ਹਨ, ਮੂਲ ਕਾਰਨ (ਬੱਗ) ਨੂੰ ਨਹੀਂ।
  • ਅਸੀਂ ਜਾਣਦੇ ਸੀ ਕਿ ਜਲਦੀ ਜਾਂ ਬਾਅਦ ਵਿੱਚ ਸਾਨੂੰ DNS ਨਾਲ ਸਮੱਸਿਆਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਪਰ ਅਸੀਂ ਕੰਮਾਂ ਨੂੰ ਤਰਜੀਹ ਨਹੀਂ ਦਿੱਤੀ

ਜਿੱਥੇ ਅਸੀਂ ਖੁਸ਼ਕਿਸਮਤ ਹਾਂ:

  • ਅਗਲੀ ਤੈਨਾਤੀ CoreDNS-autoscaler ਦੁਆਰਾ ਸ਼ੁਰੂ ਕੀਤੀ ਗਈ ਸੀ, ਜਿਸ ਨੇ ਕੰਟਰੈਕ ਟੇਬਲ ਨੂੰ ਓਵਰਰਾਈਟ ਕੀਤਾ ਸੀ
  • ਇਸ ਬੱਗ ਨੇ ਸਿਰਫ਼ ਕੁਝ ਸੇਵਾਵਾਂ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕੀਤਾ ਹੈ

ਸਮਾਂਰੇਖਾ (EET)

ਸਮਾਂ
ਪ੍ਰਭਾਵ

22:13
CoreDNS-ਆਟੋਸਕੇਲਰ ਨੇ ਪੌਡਾਂ ਦੀ ਗਿਣਤੀ ਤਿੰਨ ਤੋਂ ਘਟਾ ਕੇ ਦੋ ਕਰ ਦਿੱਤੀ ਹੈ

22:18
ਡਿਊਟੀ 'ਤੇ ਮੌਜੂਦ ਇੰਜੀਨੀਅਰਾਂ ਨੂੰ ਨਿਗਰਾਨੀ ਪ੍ਰਣਾਲੀ ਤੋਂ ਕਾਲਾਂ ਆਉਣੀਆਂ ਸ਼ੁਰੂ ਹੋ ਗਈਆਂ

22:21
ਡਿਊਟੀ 'ਤੇ ਮੌਜੂਦ ਇੰਜਨੀਅਰਾਂ ਨੇ ਤਰੁੱਟੀਆਂ ਦਾ ਕਾਰਨ ਲੱਭਣਾ ਸ਼ੁਰੂ ਕਰ ਦਿੱਤਾ।

22:39
ਡਿਊਟੀ 'ਤੇ ਇੰਜੀਨੀਅਰਾਂ ਨੇ ਨਵੀਨਤਮ ਸੇਵਾਵਾਂ ਵਿੱਚੋਂ ਇੱਕ ਨੂੰ ਪਿਛਲੇ ਸੰਸਕਰਣ ਵਿੱਚ ਵਾਪਸ ਲਿਆਉਣਾ ਸ਼ੁਰੂ ਕਰ ਦਿੱਤਾ

22:40
5xx ਗਲਤੀਆਂ ਦਿਖਾਈ ਦੇਣੀਆਂ ਬੰਦ ਹੋ ਗਈਆਂ, ਸਥਿਤੀ ਸਥਿਰ ਹੋ ਗਈ ਹੈ

  • ਪਤਾ ਲਗਾਉਣ ਦਾ ਸਮਾਂ: 4 ਮਿੰਟ
  • ਕਾਰਵਾਈ ਤੋਂ ਪਹਿਲਾਂ ਸਮਾਂ: 21 ਮਿੰਟ
  • ਠੀਕ ਕਰਨ ਦਾ ਸਮਾਂ: 1 ਮਿੰਟ

ਵਾਧੂ ਜਾਣਕਾਰੀ

CPU ਵਰਤੋਂ ਨੂੰ ਘੱਟ ਕਰਨ ਲਈ, ਲੀਨਕਸ ਕਰਨਲ ਕਿਸੇ ਚੀਜ਼ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਜਿਸਨੂੰ ਕੋਨਟਰੈਕ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਸੰਖੇਪ ਵਿੱਚ, ਇਹ ਇੱਕ ਉਪਯੋਗਤਾ ਹੈ ਜਿਸ ਵਿੱਚ NAT ਰਿਕਾਰਡਾਂ ਦੀ ਸੂਚੀ ਹੁੰਦੀ ਹੈ ਜੋ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਸਾਰਣੀ ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਜਦੋਂ ਅਗਲਾ ਪੈਕੇਟ ਉਸੇ ਪੌਡ ਤੋਂ ਉਸੇ ਪੋਡ 'ਤੇ ਪਹਿਲਾਂ ਵਾਂਗ ਪਹੁੰਚਦਾ ਹੈ, ਤਾਂ ਅੰਤਮ IP ਐਡਰੈੱਸ ਦੀ ਮੁੜ ਗਣਨਾ ਨਹੀਂ ਕੀਤੀ ਜਾਵੇਗੀ, ਪਰ ਕੰਟਰੈਕ ਟੇਬਲ ਤੋਂ ਲਿਆ ਜਾਵੇਗਾ।
ਕੁਬਰਨੇਟਸ ਵਿੱਚ DNS ਨਾਲ ਸਮੱਸਿਆਵਾਂ। ਜਨਤਕ ਪੋਸਟਮਾਰਟਮ
ਕੰਟਰੈਕ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ

ਨਤੀਜੇ

ਇਹ ਕੁਝ ਉਪਯੋਗੀ ਲਿੰਕਾਂ ਦੇ ਨਾਲ ਸਾਡੇ ਪੋਸਟਮਾਰਟਮ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਸੀ। ਖਾਸ ਤੌਰ 'ਤੇ ਇਸ ਲੇਖ ਵਿੱਚ, ਅਸੀਂ ਉਹ ਜਾਣਕਾਰੀ ਸਾਂਝੀ ਕਰਦੇ ਹਾਂ ਜੋ ਦੂਜੀਆਂ ਕੰਪਨੀਆਂ ਲਈ ਉਪਯੋਗੀ ਹੋ ਸਕਦੀ ਹੈ। ਇਸ ਲਈ ਅਸੀਂ ਗਲਤੀਆਂ ਕਰਨ ਤੋਂ ਨਹੀਂ ਡਰਦੇ ਅਤੇ ਇਸ ਲਈ ਅਸੀਂ ਆਪਣੇ ਇੱਕ ਪੋਸਟਮਾਰਟਮ ਨੂੰ ਜਨਤਕ ਕਰਦੇ ਹਾਂ। ਇੱਥੇ ਕੁਝ ਹੋਰ ਦਿਲਚਸਪ ਜਨਤਕ ਪੋਸਟਮਾਰਟਮ ਹਨ:

ਸਰੋਤ: www.habr.com

ਇੱਕ ਟਿੱਪਣੀ ਜੋੜੋ