TL; เจกเจพ
- เจเฉฐเจเฉเจจเจฐเจพเจ เจ เจคเฉ เจฎเจพเจเจเฉเจฐเฉ เจธเจฐเจตเจฟเจธเจฟเจเจผ เจฆเฉ เจเฉฑเจ เจจเจฟเจฐเฉเจเจฃเจฏเฉเจเจคเจพ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฒเจ, เจฒเจพเจ เจ เจคเฉ เจชเฉเจฐเจพเจเจฎเจฐเฉ เจฎเฉเจเฉเจฐเจฟเจเจธ เจเจพเจซเจผเฉ เจจเจนเฉเจ เจนเจจเฅค
- เจคเฉเจเจผเฉ เจจเจพเจฒ เจฐเจฟเจเจตเจฐเฉ เจ เจคเฉ เจตเจงเฉ เจนเฉเจ เจฒเจเจเจคเจพ เจฒเจ, เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจจเฉเฉฐ เจเฉฑเจ เจจเจฟเจฐเฉเจเจฃเจฏเฉเจเจคเจพ เจธเจฟเจงเจพเจเจค (HOP) เจจเฉเฉฐ เจฒเจพเจเฉ เจเจฐเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค
- เจเจชเจฒเฉเจเฉเจธเจผเจจ เจชเฉฑเจงเจฐ 'เจคเฉ, NOP เจฆเฉ เจฒเฉเฉ เจนเฉ: เจธเจนเฉ เจฒเจพเจเจฟเฉฐเจ, เจจเจเจผเจฆเฉเจเฉ เจจเจฟเจเจฐเจพเจจเฉ, เจธเจตเฉฑเจเจคเจพ เจเจพเจเจ, เจ เจคเฉ เจชเฉเจฐเจฆเจฐเจธเจผเจจ/เจชเจฐเจฟเจตเจฐเจคเจจ เจเจฐเฉเจธเจฟเฉฐเจเฅค
- NOR เจฆเฉ เจคเฉฑเจค เจฆเฉ เจคเฉเจฐ 'เจคเฉ เจเฉเจเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเฉ เจคเจฟเจเจฐเฉ เจชเฉเจคเจพเจฒ ะธ livenessProbe เจเฉเจฌเจฐเจจเฉเจเจธเฅค
เจนเฉเจฒเจฅ เจเฉเฉฑเจ เจเฉเจฎเจชเจฒเฉเจ เจเฉ เจนเฉ?
เจเฉฑเจ เจฎเจฟเจธเจผเจจ-เจจเจพเจเจผเฉเจ เจ เจคเฉ เจเฉฑเจ เจเจชเจฒเจฌเจง เจเจชเจฒเฉเจเฉเจธเจผเจจ เจจเฉเฉฐ เจกเจฟเจเจผเจพเจเจจ เจเจฐเจฆเฉ เจธเจฎเฉเจ, เจจเฉเจเจธ เจธเจนเจฟเจฃเจธเจผเฉเจฒเจคเจพ เจตเจฐเจเฉ เจชเจนเจฟเจฒเฉ เจฌเจพเจฐเฉ เจธเฉเจเจฃเจพ เจฌเจนเฉเจค เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจนเฉเฅค เจเฉฑเจ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจจเฉเฉฐ เจจเฉเจเจธ เจธเจนเจฟเจฃเจธเจผเฉเจฒ เจฎเฉฐเจจเจฟเจ เจเจพเจเจฆเจพ เจนเฉ เจเฉเจเจฐ เจเจน เจ เจธเจซเจฒเจคเจพ เจคเฉเจ เจเจฒเจฆเฉ เจ เฉเจ เจนเฉ เจเจพเจเจฆเฉ เจนเฉเฅค เจเฉฑเจ เจเจฎ เจเจฒเจพเจเจก เจเจชเจฒเฉเจเฉเจธเจผเจจ เจเฉฑเจ เจฎเจพเจเจเฉเจฐเฉเจธเจฐเจตเจฟเจธเจฟเจเจผ เจเจฐเจเฉเจเฉเจเจเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉ - เจเจฟเฉฑเจฅเฉ เจนเจฐเฉเจ เจนเจฟเฉฑเจธเฉ เจจเฉเฉฐ เจเฉฑเจ เจตเฉฑเจเจฐเฉ เจเฉฐเจเฉเจจเจฐ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฟเจ เจเจพเจเจฆเจพ เจนเฉเฅค เจ เจคเฉ เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃ เจฒเจ เจเจฟ k8s 'เจคเฉ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฌเจนเฉเจค เจเจผเจฟเจเจฆเจพ เจเจชเจฒเจฌเจง เจนเฉ เจเจฆเฉเจ เจคเฉเจธเฉเจ เจเฉฑเจ เจเจฒเฉฑเจธเจเจฐ เจกเจฟเจเจผเจพเจเจจ เจเจฐเจฆเฉ เจนเฉ, เจคเฉเจนเจพเจจเฉเฉฐ เจเฉเจ เจชเฉเจเจฐเจจเจพเจ เจฆเฉ เจชเจพเจฒเจฃเจพ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉเฅค เจเจจเฉเจนเจพเจ เจตเจฟเฉฑเจเฉเจ เจนเฉเจฒเจฅ เจเฉเฉฑเจ เจเฉเจเจชเจฒเฉเจ เจนเฉเฅค เจเจน เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเจฐเจฆเจพ เจนเฉ เจเจฟ เจเจชเจฒเฉเจเฉเจธเจผเจจ k8s เจจเฉเฉฐ เจเจฟเจตเฉเจ เจธเฉฐเจเจพเจฐ เจเจฐเจฆเฉ เจนเฉ เจเจฟ เจเจน เจธเจฟเจนเจคเจฎเฉฐเจฆ เจนเฉเฅค เจเจน เจจเจพ เจธเจฟเจฐเจซเจผ เจเจธ เจฌเจพเจฐเฉ เจเจพเจฃเจเจพเจฐเฉ เจนเฉ เจเจฟ เจเฉ เจชเฉเจก เจเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉ, เจธเจเฉเจ เจเจน เจตเฉ เจเจฟ เจเจน เจฌเฉเจจเจคเฉเจเจ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจชเฉเจฐเจพเจชเจค เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ เจเจตเจพเจฌ เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค เจเฉเจฌเจฐเจจเฉเจเจธ เจชเฉเจก เจฆเฉ เจธเจฟเจนเจค เจฌเจพเจฐเฉ เจเจฟเฉฐเจจเจพ เจเจผเจฟเจเจฆเจพ เจเจพเจฃเจฆเจพ เจนเฉ, เจเจน เจเฉเจฐเฉเจซเจฟเจ เจฐเฉเจเจฟเฉฐเจ เจ เจคเฉ เจฒเฉเจก เจธเฉฐเจคเฉเจฒเจจ เจฌเจพเจฐเฉ เจเจจเฉ เจนเฉ เจเฉเจธเจค เจซเฉเจธเจฒเฉ เจฒเฉเจเจฆเจพ เจนเฉเฅค เจเจธ เจคเจฐเฉเจนเจพเจ, เจเฉฑเจ เจจเจฟเจฐเฉเจเจฃเจฏเฉเจเจคเจพ เจธเจฟเจงเจพเจเจค เจเจชเจฒเฉเจเฉเจธเจผเจจ เจจเฉเฉฐ เจธเจฎเฉเจ เจธเจฟเจฐ เจฌเฉเจจเจคเฉเจเจ เจฆเจพ เจเจตเจพเจฌ เจฆเฉเจฃ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค
เจเฉฑเจ เจจเจฟเจฐเฉเจเจฃเจฏเฉเจเจคเจพ เจธเจฟเจงเจพเจเจค (HOP)
เจเฉฑเจ เจจเจฟเจฐเฉเจเจฃเจฏเฉเจเจคเจพ เจฆเจพ เจธเจฟเจงเจพเจเจค เจเฉฑเจ เจนเฉ
เจเฉฑเจ เจเฉฐเจเฉ เจคเจฐเฉเจนเจพเจ เจกเจฟเจเจผเจพเจเจจ เจเฉเจคเฉ เจเจฒเจพเจเจก เจเจชเจฒเฉเจเฉเจธเจผเจจ เจธเจเฉเจเจกเจฐเจก I/O เจธเจเฉเจฐเฉเจฎเจเจผ STDERR เจ เจคเฉ STDOUT เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเจธเจฆเฉ เจฎเฉเฉฑเจ เจเจตเฉเจเจเจพเจ เจจเฉเฉฐ เจฒเฉเจ เจเจฐเจฆเฉ เจนเฉเฅค เจ เฉฑเจเฉ เจเฉฑเจ เจธเจนเจพเจเจ เจธเฉเจตเจพ เจเจเจเจฆเฉ เจนเฉ, เจเจฆเจพเจนเจฐเจจ เจฒเจ เจซเจพเจเจฒเจฌเฉเจ, เจฒเฉเจเจธเจเฉเจธเจผ เจเจพเจ fluentd, เจเฉฑเจ เจเฉเจเจฆเจฐเฉ เจจเจฟเจเจฐเจพเจจเฉ เจธเจฟเจธเจเจฎ (เจเจฆเจพเจนเจฐเจจ เจฒเจ เจชเฉเจฐเฉเจฎเฉเจฅเฉเจ เจธ) เจ เจคเฉ เจเฉฑเจ เจฒเฉเจ เจเจฒเฉเจเจธเจผเจจ เจธเจฟเจธเจเจฎ (ELK เจธเฉเจซเจเจตเฉเจ เจฐ เจธเฉเจ) เจจเฉเฉฐ เจฒเจพเจ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจจเจพเฅค เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเจพ เจเจฟเฉฑเจคเจฐ เจฆเจฟเจเจพเจเจเจฆเจพ เจนเฉ เจเจฟ เจเจฟเจตเฉเจ เจเฉฑเจ เจเจฒเจพเจเจก เจเจชเจฒเฉเจเฉเจธเจผเจจ เจนเฉเจฒเจฅ เจเฉเจธเจ เจชเฉเจเจฐเจจ เจ เจคเฉ เจเฉฑเจ เจจเจฟเจฐเฉเจเจฃเจฏเฉเจเจคเจพ เจธเจฟเจงเจพเจเจค เจฆเฉ เจ เจจเฉเจธเจพเจฐ เจเฉฐเจฎ เจเจฐเจฆเฉ เจนเฉเฅค
เจเฉเจฌเจฐเจจเฉเจเจธ เจตเจฟเฉฑเจ เจธเจฟเจนเจค เจเจพเจเจ เจชเฉเจเจฐเจจ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจฒเจพเจเฉ เจเจฐเจจเจพ เจนเฉ?
เจฌเจพเจเจธ เจฆเฉ เจฌเจพเจนเจฐ, k8s เจเฉฑเจ เจเฉฐเจเจฐเฉเจฒเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจชเฉเจกเจพเจ เจฆเฉ เจธเจฅเจฟเจคเฉ เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเจฐเจฆเจพ เจนเฉ (
เจธเจพเจกเฉ เจเจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจ, k8s เจเจฐเจฆเจพ เจนเฉ เจเจพเจฐเจเจเฉเจธเจผเจฒเจคเจพ เจเจพเจเจ. เจเจธ เจเจฟเจธเจฎ เจฆเฉ เจคเจธเจฆเฉเจ เจตเจฟเฉฑเจ, เจเฉเจฌเฉเจฒเฉเจ เจฒเจเจพเจคเจพเจฐ เจเฉฐเจเฉเจจเจฐ เจตเจฟเฉฑเจ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจฆเฉ เจธเจฅเจฟเจคเฉ เจฆเฉ เจเจพเจเจ เจเจฐเจฆเจพ เจนเฉเฅค เจเฉฑเจ เจตเจพเจฐ เจเจฆเฉเจ เจเจน เจธเจฎเจเจฆเจพ เจนเฉ เจเจฟ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจฌเฉฐเจฆ เจนเฉ เจเจ เจนเฉ, เจคเจพเจ เจเจน เจเจธเจจเฉเฉฐ เจฆเฉเจฌเจพเจฐเจพ เจธเจผเฉเจฐเฉ เจเจฐเฉเจเจพเฅค เจเฉเจเจฐ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจจเฉเฉฐ เจฎเฉเฉ-เจเจพเจฒเฉ เจเจฐเจจ เจจเจพเจฒ เจเจฒเจคเฉ เจจเฉเฉฐ เจนเฉฑเจฒ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ, เจ
เจคเฉ เจชเฉเจฐเฉเจเจฐเจพเจฎ เจจเฉเฉฐ เจเจฟเจธเฉ เจตเฉ เจคเจฐเฉเฉฑเจเฉ 'เจคเฉ เจฌเฉฐเจฆ เจเจฐเจจ เจฒเจ เจคเจฟเจเจฐ เจเฉเจคเจพ เจเจฟเจ เจนเฉ, เจคเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ NOP เจ
เจคเฉ เจธเจฟเจนเจค เจเจพเจเจ เจชเฉเจเจฐเจจ เจฆเฉ เจชเจพเจฒเจฃเจพ เจเจฐเจจ เจฒเจ เจเฉฑเจ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจธเจฟเจนเจค เจเจพเจเจ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค เจธเจฟเจฐเจซ เจ
เจซเจธเฉเจธ เจฆเฉ เจเฉฑเจฒ เจเจน เจนเฉ เจเจฟ เจธเจพเจฐเฉเจเจ เจเจฒเจคเฉเจเจ เจฎเฉเฉ เจเจพเจฒเฉ เจเจฐเจจ เจจเจพเจฒ เจเจคเจฎ เจจเจนเฉเจ เจนเฉเฉฐเจฆเฉเจเจ เจนเจจ. เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, k8s เจชเฉเจก เจจเจพเจฒ เจธเจฎเฉฑเจธเจฟเจเจตเจพเจ เจฆเฉ เจชเจเจพเจฃ เจเจฐเจจ เจฆเฉ 2 เจกเฉเฉฐเจเฉ เจคเจฐเฉเจเฉ เจชเฉเจธเจผ เจเจฐเจฆเจพ เจนเฉ:
LivenessProbe
เจฆเฉ เจฆเฉเจฐเจพเจจ livenessProbe เจเฉเจฌเฉเจฒเฉเจ 3 เจคเจฐเฉเจนเจพเจ เจฆเฉเจเจ เจเจพเจเจเจพเจ เจเจฐเจฆเจพ เจนเฉ: เจจเจพ เจธเจฟเจฐเจซเจผ เจเจน เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจเจฐเจฆเจพ เจนเฉ เจเจฟ เจเฉ เจชเฉเจก เจเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉ, เจธเจเฉเจ เจเจน เจตเฉ เจเจฟ เจเฉ เจเจน เจฌเฉเจจเจคเฉเจเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจ เจคเฉ เจขเฉเจเจตเฉเจ เจฐเฉเจช เจตเจฟเฉฑเจ เจเจตเจพเจฌ เจฆเฉเจฃ เจฒเจ เจคเจฟเจเจฐ เจนเฉ:
- เจชเฉเจก เจฒเจ เจเฉฑเจ HTTP เจฌเฉเจจเจคเฉ เจธเฉเจ เจ เจช เจเจฐเฉเฅค เจเจตเจพเจฌ เจตเจฟเฉฑเจ 200 เจคเฉเจ 399 เจคเฉฑเจ เจฆเฉ เจฐเฉเจเจ เจตเจฟเฉฑเจ เจเฉฑเจ HTTP เจเจตเจพเจฌ เจเฉเจก เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค เจเจธ เจคเจฐเฉเจนเจพเจ, เจเฉเจก 5xx เจ เจคเฉ 4xx เจธเฉฐเจเฉเจค เจฆเจฟเฉฐเจฆเฉ เจนเจจ เจเจฟ เจชเฉเจก เจจเฉเฉฐ เจธเจฎเฉฑเจธเจฟเจ เจ เจฐเจนเฉ เจนเฉ, เจญเจพเจตเฉเจ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเฉฑเจฒ เจฐเจนเฉ เจนเฉเจตเฉเฅค
- เจเฉเจฐ-HTTP เจธเฉเจตเจพเจตเจพเจ (เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจชเฉเจธเจเจซเจฟเจเจธ เจฎเฉเจฒ เจธเจฐเจตเจฐ) เจจเจพเจฒ เจชเฉเจกเจพเจ เจฆเฉ เจเจพเจเจ เจเจฐเจจ เจฒเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจ TCP เจเฉเจจเฉเจเจธเจผเจจ เจธเจฅเจพเจชเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค
- เจเฉฑเจ เจชเฉเจก (เจ เฉฐเจฆเจฐเฉเจจเฉ เจคเฉเจฐ 'เจคเฉ) เจฒเจ เจเฉฑเจ เจเจฐเจฌเจฟเจเจฐเจฐเฉ เจเจฎเจพเจเจก เจเจฒเจพเจเฅค เจเฉเจเจฐ เจเจฎเจพเจเจก เจเฉฐเจชเจฒเฉเจธเจผเจจ เจเฉเจก 0 เจนเฉ เจคเจพเจ เจเจพเจเจ เจจเฉเฉฐ เจธเจซเจฒ เจฎเฉฐเจจเจฟเจ เจเจพเจเจฆเจพ เจนเฉเฅค
เจเจน เจเจฟเจตเฉเจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ เจฆเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ. เจ เจเจฒเฉ เจชเฉเจก เจชเจฐเจฟเจญเจพเจธเจผเจพ เจตเจฟเฉฑเจ เจเฉฑเจ NodeJS เจเจชเจฒเฉเจเฉเจธเจผเจจ เจนเฉ เจเฉ HTTP เจฌเฉเจจเจคเฉเจเจ 'เจคเฉ เจเฉฑเจ 500 เจเจฒเจคเฉ เจธเฉเฉฑเจเจฆเฉ เจนเฉเฅค เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃ เจฒเจ เจเจฟ เจ เจเจฟเจนเฉ เจเจฒเจคเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจตเฉเจฒเฉ เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจเฉเจคเจพ เจเจฟเจ เจนเฉ, เจ เจธเฉเจ livenessProbe เจชเฉเจฐเจพเจฎเฉเจเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเจพเจ:
apiVersion: v1
kind: Pod
metadata:
name: node500
spec:
containers:
- image: magalix/node500
name: node500
ports:
- containerPort: 3000
protocol: TCP
livenessProbe:
httpGet:
path: /
port: 3000
initialDelaySeconds: 5
เจเจน เจเจฟเจธเฉ เจนเฉเจฐ เจชเฉเจก เจชเจฐเจฟเจญเจพเจธเจผเจพ เจคเฉเจ เจตเฉฑเจ เจจเจนเฉเจ เจนเฉ, เจชเจฐ เจ
เจธเฉเจ เจเฉฑเจ เจตเจธเจคเฉ เจเฉเฉเจฆเฉ เจนเจพเจ .spec.containers.livenessProbe
. เจชเฉเจฐเจพเจฎเฉเจเจฐ httpGet
เจเจธ เจฎเจพเจฐเจ เจจเฉเฉฐ เจธเจตเฉเจเจพเจฐ เจเจฐเจฆเจพ เจนเฉ เจเจฟเจธ 'เจคเฉ HTTP GET เจฌเฉเจจเจคเฉ เจญเฉเจเฉ เจเจพเจเจฆเฉ เจนเฉ (เจธเจพเจกเฉ เจเจฆเจพเจนเจฐเจฃ เจตเจฟเฉฑเจ เจเจน เจนเฉ /
, เจชเจฐ เจฒเฉเจพเจ เจฆเฉ เจฆเฉเจฐเจฟเจธเจผเจพเจ เจตเจฟเฉฑเจ เจ
เจเจฟเจนเจพ เจเฉเจ เจนเฉ เจธเจเจฆเจพ เจนเฉ /api/v1/status
). เจเฉฑเจ เจนเฉเจฐ livenessProbe เจเฉฑเจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจจเฉเฉฐ เจธเจตเฉเจเจพเจฐ เจเจฐเจฆเจพ เจนเฉ initialDelaySeconds
, เจเฉ เจคเจธเจฆเฉเจ เจเจพเจฐเจตเจพเจ เจจเฉเฉฐ เจธเจเจฟเฉฐเจเจพเจ เจฆเฉ เจเฉฑเจ เจจเจฟเจธเจผเจเจฟเจค เจเจฟเจฃเจคเฉ เจฆเฉ เจเจกเฉเจ เจเจฐเจจ เจฒเจ เจจเจฟเจฐเจฆเฉเจธเจผ เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค เจฆเฉเจฐเฉ เจฆเฉ เจฒเฉเฉ เจนเฉ เจเจฟเจเจเจเจฟ เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจเจพเจฒเฉ เจนเฉเจฃ เจฒเจ เจธเจฎเจพเจ เจเจพเจนเฉเจฆเจพ เจนเฉ, เจ
เจคเฉ เจเจฆเฉเจ เจเจน เจฎเฉเฉ เจเจพเจฒเฉ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ เจคเจพเจ เจเจน เจเฉเจ เจธเจฎเฉเจ เจฒเจ เจ
เจฃเจเจชเจฒเจฌเจง เจนเฉเจตเฉเจเจพเฅค
เจเจธ เจธเฉเจเจฟเฉฐเจ เจจเฉเฉฐ เจเจฒเฉฑเจธเจเจฐ 'เจคเฉ เจฒเจพเจเฉ เจเจฐเจจ เจฒเจ, เจตเจฐเจคเฉเจ:
kubectl apply -f pod.yaml
เจเฉเจ เจธเจเจฟเฉฐเจเจพเจ เจฌเจพเจ เจฆ, เจคเฉเจธเฉเจ เจนเฉเจ เจฆเจฟเฉฑเจคเฉ เจเจฎเจพเจเจก เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจชเฉเจก เจฆเฉ เจธเจฎเฉฑเจเจฐเฉ เจฆเฉ เจเจพเจเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ:
kubectl describe pods node500
เจเจเจเจชเฉเฉฑเจ เจฆเฉ เจ
เฉฐเจค เจตเจฟเฉฑเจ, เจฒเฉฑเจญเฉ
เจเจฟเจตเฉเจ เจเจฟ เจคเฉเจธเฉเจ เจตเฉเจ เจธเจเจฆเฉ เจนเฉ, livenessProbe เจจเฉ เจเฉฑเจ HTTP GET เจฌเฉเจจเจคเฉ เจธเจผเฉเจฐเฉ เจเฉเจคเฉ, เจเฉฐเจเฉเจจเจฐ เจจเฉ เจเฉฑเจ เจเจฒเจคเฉ 500 เจชเฉเจฆเจพ เจเฉเจคเฉ (เจเฉ เจเจฟ เจเจน เจเจฐเจจ เจฒเจ เจชเฉเจฐเฉเจเจฐเจพเจฎ เจเฉเจคเจพ เจเจฟเจ เจธเฉ), เจ เจคเฉ เจเฉเจฌเฉเจฒเฉเจ เจจเฉ เจเจธเจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจเฉเจคเจพเฅค
เจเฉ เจคเฉเจธเฉเจ เจนเฉเจฐเจพเจจ เจนเฉ เจฐเจนเฉ เจนเฉ เจเจฟ NideJS เจเจชเจฒเฉเจเฉเจธเจผเจจ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจชเฉเจฐเฉเจเฉเจฐเจพเจฎ เจเฉเจคเจพ เจเจฟเจ เจธเฉ, เจคเจพเจ เจเฉฑเจฅเฉ app.js เจ เจคเฉ Dockerfile เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ เจเจ เจธเฉ:
app.js
var http = require('http');
var server = http.createServer(function(req, res) {
res.writeHead(500, { "Content-type": "text/plain" });
res.end("We have run into an errorn");
});
server.listen(3000, function() {
console.log('Server is running at 3000')
})
เจกเฉเจเจฐเจซเจพเจเจฒ
FROM node
COPY app.js /
EXPOSE 3000
ENTRYPOINT [ "node","/app.js" ]
เจเจน เจจเฉเจ เจเจฐเจจเจพ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจนเฉ: livenessProbe เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจธเจฟเจฐเจซเจผ เจเจฆเฉเจ เจนเฉ เจฐเฉเจธเจเจพเจฐเจ เจเจฐเฉเจเจพ เจเฉเจเจฐ เจเจน เจ เจธเจซเจฒ เจนเฉเฉฐเจฆเจพ เจนเฉเฅค เจเฉเจเจฐ เจเฉฑเจ เจฐเฉเจธเจเจพเจฐเจ เจเจฒเจคเฉ เจจเฉเฉฐ เจ เฉเจ เจจเจนเฉเจ เจเจฐเจฆเจพ เจนเฉ เจเฉ เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจเฉฑเจฒเจฃ เจคเฉเจ เจฐเฉเจ เจฐเจฟเจนเจพ เจนเฉ, เจคเจพเจ เจเฉเจฌเฉเจฒเฉเจ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจ เฉเจ เจเจฐเจจ เจฒเจ เจเจพเจฐเจตเจพเจ เจเจฐเจจ เจฆเฉ เจฏเฉเจ เจจเจนเฉเจ เจนเฉเจตเฉเจเจพเฅค
เจคเจฟเจเจฐเฉ เจชเฉเจคเจพเจฒ
ReadinessProbe เจธเจฎเฉฑเจธเจฟเจ เจจเจฟเจชเจเจพเจฐเจพ เจเจฐเจจ เจตเจพเจฒเฉเจเจ เจเจพเจฐเจตเจพเจเจเจ เจจเฉเฉฐ เจเฉฑเจก เจเฉ, livenessProbes (GET เจฌเฉเจจเจคเฉเจเจ, TCP เจธเฉฐเจเจพเจฐ เจ เจคเฉ เจเจฎเจพเจเจก เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ) เจฆเฉ เจธเจฎเจพเจจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉเฅค เจเจน เจเฉฐเจเฉเจจเจฐ เจเจฟเจธ เจตเจฟเฉฑเจ เจ เจธเจซเจฒเจคเจพ เจฆเจพ เจชเจคเจพ เจฒเจเจพเจเจ เจเจฟเจ เจนเฉ, เจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจจเจนเฉเจ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ, เจชเจฐ เจเจเจฃ เจตเจพเจฒเฉ เจเฉเจฐเฉเจซเจฟเจ เจคเฉเจ เจตเฉฑเจ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉเฅค เจเจฒเจชเจจเจพ เจเจฐเฉ เจเจฟ เจเฉฐเจเฉเจจเจฐเจพเจ เจตเจฟเฉฑเจเฉเจ เจเฉฑเจ เจฌเจนเฉเจค เจธเจพเจฐเฉเจเจ เจเจฃเจจเจพเจตเจพเจ เจเจฐ เจฐเจฟเจนเจพ เจนเฉ เจเจพเจ เจญเจพเจฐเฉ เจฌเฉเจ เจนเฉเจ เจนเฉ, เจเจฟเจธ เจเจพเจฐเจจ เจชเฉเจฐเจคเฉเจเจฟเจฐเจฟเจ เจฆเฉ เจธเจฎเฉเจ เจตเจฟเฉฑเจ เจตเจพเจงเจพ เจนเฉ เจฐเจฟเจนเจพ เจนเฉเฅค livenessProbe เจฆเฉ เจฎเจพเจฎเจฒเฉ เจตเจฟเฉฑเจ, เจเจตเจพเจฌ เจเจชเจฒเจฌเจงเจคเจพ เจเจพเจเจ เจธเจผเฉเจฐเฉ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ (เจเจพเจเจฎเจเจเจ เจธเฉเจเจฟเฉฐเจก เจเฉเฉฑเจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจฆเฉเจเจฐเจพ), เจเจฟเจธ เจคเฉเจ เจฌเจพเจ เจฆ เจเฉเจฌเฉเจฒเฉเจ เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจเจฐเจฆเจพ เจนเฉเฅค เจเจฆเฉเจ เจธเจผเฉเจฐเฉ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ, เจคเจพเจ เจเฉฐเจเฉเจจเจฐ เจธเจฐเฉเจค-เจธเฉฐเจฌเฉฐเจงเฉ เจเจพเจฐเจเจพเจ เจจเฉเฉฐ เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ เจฆเฉเจฌเจพเจฐเจพ เจเจพเจฒเฉ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉเฅค เจเจน เจเจนเจจเจพเจ เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจฒเจ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจนเฉ เจธเจเจฆเจพ เจนเฉ เจเจฟเจจเฉเจนเจพเจ เจจเฉเฉฐ เจเจตเจพเจฌ เจฆเฉ เจเจคเฉ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจเฉฑเจ เจเจพเจฐ เจเจฆเฉเจ เจธเฉเจ 'เจคเฉ เจธเจฐเจตเจฐ เจคเฉเจ เจเจตเจพเจฌ เจฆเฉ เจเจกเฉเจ เจเจฐ เจฐเจนเฉ เจนเฉ, เจเจตเจพเจฌ เจตเจฟเฉฑเจ เจฆเฉเจฐเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ - เจ เจคเฉ เจเจพเจฐ เจฆเฉเจฐเจเจเจจเจพ เจตเจฟเฉฑเจ เจชเฉ เจเจพเจเจฆเฉ เจนเฉเฅค
เจเจฒเฉ เจเฉฑเจ เจฐเฉเจกเฉเจจเฉเจธเจชเฉเจฐเฉเจฌ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจฒเจฟเจเฉเจ เจเฉ GET เจฌเฉเจจเจคเฉ เจฆเฉ เจเจตเจพเจฌ เจฆเฉ เจธเจฎเฉเจ เจจเฉเฉฐ เจฆเฉ เจธเจเจฟเฉฐเจเจพเจ เจคเฉเจ เจตเฉฑเจง เจจเจนเฉเจ เจธเฉเฉฑเจ เจเจฐเฉเจเฉ, เจ เจคเฉ เจเจชเจฒเฉเจเฉเจธเจผเจจ 5 เจธเจเจฟเฉฐเจเจพเจ เจฌเจพเจ เจฆ GET เจฌเฉเจจเจคเฉ เจฆเจพ เจเจตเจพเจฌ เจฆเฉเจตเฉเจเฉเฅค pod.yaml เจซเจพเจเจฒ เจเจธ เจคเจฐเฉเจนเจพเจ เจฆเจฟเจเจพเจ เจฆเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ:
apiVersion: v1
kind: Pod
metadata:
name: nodedelayed
spec:
containers:
- image: afakharany/node_delayed
name: nodedelayed
ports:
- containerPort: 3000
protocol: TCP
readinessProbe:
httpGet:
path: /
port: 3000
timeoutSeconds: 2
เจเจ kubectl เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจชเฉเจก เจคเฉเจจเจพเจค เจเจฐเฉเจ:
kubectl apply -f pod.yaml
เจเจ เจเฉเจ เจธเจเจฟเฉฐเจเจพเจ เจฆเฉ เจเจกเฉเจ เจเจฐเฉเจ เจ เจคเฉ เจซเจฟเจฐ เจตเฉเจเฉเจ เจเจฟ เจฐเฉเจกเฉเจจเฉเจธเจชเฉเจฐเฉเจฌ เจจเฉ เจเจฟเจตเฉเจ เจเฉฐเจฎ เจเฉเจคเจพ:
kubectl describe pods nodedelayed
เจเจเจเจชเฉเฉฑเจ เจฆเฉ เจ
เฉฐเจค 'เจคเฉ เจคเฉเจธเฉเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ เจเจฟ เจเฉเจ เจเจเจจเจพเจตเจพเจ เจธเจฎเจพเจจ เจนเจจ
เจเจฟเจตเฉเจ เจเจฟ เจคเฉเจธเฉเจ เจตเฉเจ เจธเจเจฆเฉ เจนเฉ, เจเจฟเจเจฌเฉเจเจเจฒ เจจเฉ เจชเฉเจก เจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจจเจนเฉเจ เจเฉเจคเจพ เจเจฆเฉเจ เจเจพเจเจ เจฆเจพ เจธเจฎเจพเจ 2 เจธเจเจฟเฉฐเจเจพเจ เจคเฉเจ เจตเฉฑเจง เจเจฟเจเฅค เจเจธ เจฆเฉ เจฌเจเจพเจ, เจเจธเจจเฉ เจฌเฉเจจเจคเฉ เจจเฉเฉฐ เจฐเฉฑเจฆ เจเจฐ เจฆเจฟเฉฑเจคเจพเฅค เจเจเจฃ เจตเจพเจฒเฉ เจธเฉฐเจเจพเจฐเจพเจ เจจเฉเฉฐ เจนเฉเจฐ, เจเจพเจฐเจเจธเจผเฉเจฒ เจชเฉเจกเจพเจ 'เจคเฉ เจฐเฉเจกเจพเจเจฐเฉเจเจ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉเฅค
เจจเฉเจ เจเจฐเฉ เจเจฟ เจนเฉเจฃ เจเจฆเฉเจ เจชเฉเจก เจเจซเจฒเฉเจก เจนเฉ เจเจฟเจ เจนเฉ, kubectl เจเจธ เจจเฉเฉฐ เจฆเฉเจฌเจพเจฐเจพ เจฌเฉเจจเจคเฉ เจเจฐเจฆเจพ เจนเฉ: GET เจฌเฉเจจเจคเฉเจเจ เจฆเฉ เจเจตเจพเจฌเจพเจ เจตเจฟเฉฑเจ เจนเฉเจฃ เจฆเฉเจฐเฉ เจจเจนเฉเจ เจนเฉเจตเฉเจเฉเฅค
เจคเฉเจฒเจจเจพ เจฒเจ, เจนเฉเจ เจพเจ เจธเฉเจงเฉ เจนเฉเจ app.js เจซเจพเจเจฒ เจนเฉ:
var http = require('http');
var server = http.createServer(function(req, res) {
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
sleep(5000).then(() => {
res.writeHead(200, { "Content-type": "text/plain" });
res.end("Hellon");
})
});
server.listen(3000, function() {
console.log('Server is running at 3000')
})
TL; เจกเจพ
เจเจฒเจพเจเจก เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจฆเฉ เจเจเจฎเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, เจฒเฉเจ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฆเฉ เจธเจฟเจนเจค เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจ
เจคเฉ เจเจพเจเจ เจเจฐเจจ เจฆเจพ เจฎเฉเฉฑเจ เจธเจพเจงเจจ เจธเจจเฅค เจนเจพเจฒเจพเจเจเจฟ, เจเฉเจ เจธเฉเจงเจพเจฐเจพเจคเจฎเจ เจเจพเจฐเจตเจพเจ เจเจฐเจจ เจฆเจพ เจเฉเจ เจธเจพเจงเจจ เจจเจนเฉเจ เจธเฉ. เจฒเฉเจ เจ
เฉฑเจ เจตเฉ เจเจชเจฏเฉเจเฉ เจนเจจ; เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจเฉฑเจคเจฐ เจเจฐเจจ เจ
เจคเฉ เจธเฉฐเจเจเจเจพเจฒเฉเจจ เจธเจฅเจฟเจคเฉเจเจ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจ
เจคเฉ เจซเฉเจธเจฒเฉ เจฒเฉเจฃ เจฒเจ เจเฉฑเจ เจฒเฉเจ เจธเฉฐเจเฉเจฐเจนเจฟ เจชเฉเจฐเจฃเจพเจฒเฉ เจจเฉเฉฐ เจญเฉเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค [เจเจน เจธเจญ เจเจฒเจพเจเจก เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจคเฉเจ เจฌเจฟเจจเจพเจ เจฎเฉเจจเฉเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ, เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจชเจฐ k8s เจจเจพเจฒ เจเจน เจฌเจนเฉเจค เจธเฉเจเจพ เจนเฉ เจเจฟเจ :) - เจธเฉฐเจชเจพเจฆเจ เจฆเจพ เจจเฉเจเฅค ]
เจ เฉฑเจ, เจฒเจเจญเจ เจ เจธเจฒ เจธเจฎเฉเจ เจตเจฟเฉฑเจ เจธเฉเจงเจพเจฐ เจเฉเจคเฉ เจเจพเจฃเฉ เจนเจจ, เจเจธเจฒเจ เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจจเฉเฉฐ เจนเฉเจฃ เจฌเจฒเฉเจ เจฌเจพเจเจธ เจจเจนเฉเจ เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค เจจเจนเฉเจ, เจเจนเจจเจพเจ เจจเฉเฉฐ เจ เฉฐเจคเจฎ เจฌเจฟเฉฐเจฆเฉ เจฆเจฟเจเจพเจเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเจจ เจเฉ เจจเจฟเจเจฐเจพเจจเฉ เจชเฉเจฐเจฃเจพเจฒเฉเจเจ เจจเฉเฉฐ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจฆเฉ เจธเจฅเจฟเจคเฉ เจฌเจพเจฐเฉ เจเฉเจฎเจคเฉ เจกเฉเจเจพ เจจเฉเฉฐ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจเจฐเจจ เจ เจคเฉ เจเจเฉฑเจคเจฐ เจเจฐเจจ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเฉ เจนเจจ เจคเจพเจ เจเฉ เจฒเฉเฉ เจชเฉเจฃ 'เจคเฉ เจเจน เจคเฉเจฐเฉฐเจค เจเจตเจพเจฌ เจฆเฉ เจธเจเจฃเฅค เจเจธ เจจเฉเฉฐ เจชเจฐเจซเจพเจฐเจฎเฉเจเจธ เจเฉเจธเจ เจกเจฟเจเจผเจพเจเจจ เจชเฉเจเจฐเจจ เจเจฟเจนเจพ เจเจพเจเจฆเจพ เจนเฉ, เจเฉ เจนเจพเจ เจเจฌเจเจผเจฐเจตเฉเจฌเจฟเจฒเจเฉ เจธเจฟเจงเจพเจเจค (HOP) เจฆเฉ เจชเจพเจฒเจฃเจพ เจเจฐเจฆเจพ เจนเฉเฅค
Kubernetes เจฎเฉเจฒ เจฐเฉเจช เจตเจฟเฉฑเจ 2 เจเจฟเจธเจฎเจพเจ เจฆเฉเจเจ เจธเจฟเจนเจค เจเจพเจเจเจพเจ เจฆเฉ เจชเฉเจธเจผเจเจธเจผ เจเจฐเจฆเจพ เจนเฉ: ReadinessProbe เจ เจคเฉ livenessProbeเฅค เจฆเฉเจตเฉเจ เจเฉฑเจเฉ เจเจฟเจธเจฎ เจฆเฉเจเจ เจเจพเจเจเจพเจ (HTTP GET เจฌเฉเจจเจคเฉเจเจ, TCP เจธเฉฐเจเจพเจฐ เจ เจคเฉ เจเจฎเจพเจเจก เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ) เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเจจเฅค เจเจน เจเจธ เจเฉฑเจฒ เจตเจฟเฉฑเจ เจญเจฟเฉฐเจจ เจนเฉเฉฐเจฆเฉ เจนเจจ เจเจฟ เจเจน เจซเจฒเฉเจเจ เจตเจฟเฉฑเจ เจธเจฎเฉฑเจธเจฟเจเจตเจพเจ เจฆเฉ เจเจตเจพเจฌ เจตเจฟเฉฑเจ เจเจฟเจนเฉเฉ เจซเฉเจธเจฒเฉ เจฒเฉเจเจฆเฉ เจนเจจเฅค livenessProbe เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจเจธ เจเจฎเฉเจฆ เจตเจฟเฉฑเจ เจฎเฉเฉ เจเจพเจฒเฉ เจเจฐเจฆเจพ เจนเฉ เจเจฟ เจเจฒเจคเฉ เจฆเฉเจฌเจพเจฐเจพ เจจเจนเฉเจ เจนเฉเจตเฉเจเฉ, เจ เจคเฉ ReadinessProbe เจชเฉเจก เจจเฉเฉฐ เจเจเจฃ เจตเจพเจฒเฉ เจเฉเจฐเฉเจซเจฟเจ เจคเฉเจ เจเจฆเฉเจ เจคเฉฑเจ เจ เจฒเฉฑเจ เจเจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉ เจเจฆเฉเจ เจคเฉฑเจ เจธเจฎเฉฑเจธเจฟเจ เจฆเจพ เจเจพเจฐเจจ เจนเฉฑเจฒ เจจเจนเฉเจ เจนเฉ เจเจพเจเจฆเจพเฅค
เจธเจนเฉ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจกเจฟเจเจผเจพเจเจจ เจตเจฟเฉฑเจ เจฆเฉเจจเจพเจ เจเจฟเจธเจฎเจพเจ เจฆเฉ เจเจพเจเจ เจจเฉเฉฐ เจธเจผเจพเจฎเจฒ เจเจฐเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจ เจคเฉ เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจเจฟ เจเจน เจฒเฉเฉเฉเจเจฆเจพ เจกเฉเจเจพ เจเจเฉฑเจ เจพ เจเจฐเจฆเฉ เจนเจจ, เจเจพเจธ เจคเฉเจฐ 'เจคเฉ เจเจฆเฉเจ เจเฉเจ เจ เจชเจตเจพเจฆ เจธเฉเฉฑเจเจฟเจ เจเจพเจเจฆเจพ เจนเฉเฅค เจเจธ เจจเฉเฉฐ เจเจผเจฐเฉเจฐเฉ เจเจชเฉเจเจ เจ เฉฐเจคเจฎ เจฌเจฟเฉฐเจฆเฉ เจตเฉ เจฆเจฟเจเจพเจเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเจจ เจเฉ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจธเจฟเจนเจค เจฎเฉเจเฉเจฐเจฟเจเจธ เจฆเฉ เจจเจพเจฒ เจจเจฟเจเจฐเจพเจจเฉ เจชเฉเจฐเจฃเจพเจฒเฉ (เจชเฉเจฐเฉเจฎเฉเจฅเฉเจ เจธ) เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเฉ เจนเจจเฅค
เจธเจฐเฉเจค: www.habr.com