რა ტიპის ტესტებია სერვისებისა და პროგრამების მდგომარეობის შესამოწმებლად?
sobes.tech AI
პასუხი AI-სგან
არსებობს რამდენიმე გავრცელებული ტიპის სარჩევი:
-
სიცოცხლის სარჩევი (Liveness): განსაზღვრავს, მუშაობს თუ არა პროგრამა. თუ სარჩევი ვერ მოხერხდა, Kubernetes-ი გადატვირთავს პოდს. გამოიყენება გაჩერებული პროცესების გამოვლენისათვის.
- HTTP Get სარჩევები: აგზავნის HTTP GET მოთხოვნებს მითითებულ გზასა და პორტზე.
- TCP სოკეტ სარჩევები: ამოწმებს, შესაძლებელია თუ არა დაკავშირება მითითებულ პორტთან.
- Exec სარჩევები: ახორციელებს ბრძანებას კონტეინერში და ამოწმებს დაბრუნების კოდს.
-
მზადყოფნის სარჩევი (Readiness): განსაზღვრავს, არის თუ არა პოდი მზად მიიღოს ტრეფიკი. თუ სარჩევი ვერ მოხერხდა, სერვისი არ მიმართავს ამ პოდს ტრეფიკით. გამოიყენება პროგრამის მზადყოფნის განსაზღვრად შემდეგი დაწყების ან განახლების დროს.
- იყენებს იგივე მექანიზმებს, როგორც სიცოცხლის სარჩევი (HTTP Get, TCP სოკეტი, Exec).
-
დაწყების სარჩევი (Startup): განსაზღვრავს, დასრულდა თუ არა პროგრამის ინიციალიზაცია. თუ სარჩევი კონფიგურირებულია, Kubernetes-ი არ შეასრულებს სიცოცხლის და მზადყოფნის სარჩევებს, სანამ Startup სარჩევი წარმატებით არ ჩაივლის. სასარგებლოა ნელი დაწყების პროგრამებისთვის, რათა თავიდან აიცილოს ადრე დროულად გადატვირთვა.
- იყენებს იგივე მექანიზმებს, როგორც სხვა სარჩევები.
კონფიგურაციის მაგალითი Kubernetes-ში:
livenessProbe: # სიცოცხლის შემოწმება
httpGet: # HTTP-ის მეშვეობით
path: /healthz # გზა
port: 8080 # პორტი
initialDelaySeconds: 15 # პირველი შემოწმების წინ დაგვიანება
timeoutSeconds: 1 # პასუხის მოლოდინის დრო
readinessProbe: # მზადყოფნის შემოწმება
tcpSocket: # TCP-ის მეშვეობით
port: 8080 # პორტი
initialDelaySeconds: 5 # პირველი შემოწმების წინ დაგვიანება
periodSeconds: 10 # შემოწმებების შორის ინტერვალი