racavedigger.com
Daily insights on Bitcoin and crypto markets
  • Facebook
  • Pinterest
  • Home
  • News

Η στοίβα στο Sentinel?

Νίσα

Περίληψη

Σε αυτό το άρθρο, συζητάμε το ζήτημα της στοίβας Sentinel Sans που ανακαλούνται λόγω δυσλειτουργίας του μπουλονιού που επιτρέπει στο ασφαλές να ανοίξει χωρίς κλειδί ή συνδυασμό. Παρέχουμε επίσης προσωπικές εμπειρίες και ιδέες σχετικά με τη δυσλειτουργία και τις πιθανές λύσεις. Επιπλέον, αγγίζουμε το κόστος κατασκευής χρηματοκιβώνων στην Κίνα και την τελική τιμή λιανικής στις ΗΠΑ.

1. Ποιο είναι το θέμα με τα stack-on sentinel seces πυροβόλων όπλων?

Η δυσλειτουργία των μπουλονιών σε αυτά τα χρηματοκιβώτια τους επιτρέπει να ανοίξουν χωρίς κλειδί ή συνδυασμό.

2. Ποια είναι η ειδοποίηση ανάκλησης για αυτά τα χρηματοκιβώτια?

Η Επιτροπή Ασφάλειας των Καταναλωτικών Προϊόντων έχει εκδώσει ανάκληση για περίπου 1.250 stack-on Sentinel Gun Seces.

3. Ποια είναι τα χαρακτηριστικά των ανακληθέντων χρηματοκιβώνων?

Τα χρηματοκιβώτια είναι μαύρα, μετρήστε 40 ίντσες κατά 25 ίντσες κατά 55 ίντσες και έχουν τρία ράφια. Μπορούν να αποθηκεύσουν περίπου δέκα πυροβόλα όπλα.

4. Πώς αναγνωρίζεται ο αριθμός στυλ των ανακληθέντων χρηματοδότησης?

Ο αριθμός στυλ, FSS18-64-MB-E-S, μπορεί να βρεθεί στη συσκευασία αποστολής.

5. Πού πωλήθηκαν αυτά τα χρηματοκιβώτια?

Τα χρηματοκιβώτια πωλήθηκαν στα καταστήματα αθλητικών ειδών του Dick σε εθνικό επίπεδο από τον Νοέμβριο του 2018 έως τον Δεκέμβριο του 2018.

6. Ποιος είναι ο πιθανός κίνδυνος που σχετίζεται με αυτά τα χρηματοκιβώτια?

Η εύκολη πρόσβαση στα πυροβόλα όπλα που είναι αποθηκευμένα μέσα στα χρηματοκιβώτια δημιουργεί κίνδυνο τραυματισμού.

7. Μπορεί να αντικατασταθεί το ηλεκτρονικό συγκρότημα συνδυασμού με μηχανική κλειδαριά?

Ναι, είναι δυνατόν να αντικατασταθεί το ηλεκτρονικό συγκρότημα combo με πραγματική μηχανική κλειδαριά.

8. Πόσο αξιόπιστα είναι τα χρηματοκιβώτια στοίβας?

Τα χρηματοκιβώτια στοίβας θεωρούνται γενικά ότι βρίσκονται στο κατώτερο άκρο, αλλά θα πρέπει να είναι ακόμα λειτουργικά για την τιμή.

9. Είναι επαρκή χρηματοδότηση στοίβας για την αποθήκευση πυροβόλων όπλων?

Ενώ μπορεί να μην είναι τα χρηματοκιβώτια υψηλής ποιότητας, μπορούν να εξυπηρετήσουν τον προοριζόμενο σκοπό τους αρκετά καλά για ορισμένα άτομα.

10. Πόσο ο παράγοντας κόστους κατασκευής στην τιμή λιανικής πώλησης των χρηματοκιβωτίων?

Λαμβάνοντας υπόψη το κέρδος του κατασκευαστή, του λιανοπωλητή, των εξόδων μεταφοράς και των εξόδων παραγωγής, ένα ασφαλές $ 700 μπορεί να κοστίσει μόνο περίπου 100 $.

Συνδέστε τις εικονικές μηχανές Azure Stack Hub στο Microsoft Sentinel

Για να συνδέσετε τα εικονικά μηχανήματα Azure Stack Hub στο Microsoft Sentinel, πρέπει να προσθέσετε την επέκταση εικονικής μηχανής στα υπάρχοντα VM. Αυτό θα σας επιτρέψει να παρακολουθείτε τα VM σας που εκτελούνται τόσο στον Azure όσο και στο Azure Stack Hub σε μια κεντρική τοποθεσία, παρέχοντας καλύτερη ορατότητα και διαχείριση.

Συνδέστε τις εικονικές μηχανές Azure Stack Hub στο Microsoft Sentinel

Ανάλογα με τη διαμόρφωσή σας μπορεί να θέλετε ή όχι ότι συμβαίνει αυτό το σενάριο:

Η στοίβα στο Sentinel?

“Περίπου 1.250 stack-on Sentinel Gun Fans ανακαλούνται λόγω δυσλειτουργίας των μπουλονιών.

Η Επιτροπή Ασφάλειας Προϊόντων Καταναλωτών Αναφέρει ότι η ανάκληση εκδόθηκε την Πέμπτη.

Η δυσλειτουργία του μπουλονιού μπορεί να προκαλέσει το ασφαλές να ανοίξει χωρίς τη χρήση κλειδιού ή συνδυασμού, επιτρέποντας πρόσβαση σε τυχόν πυροβόλα όπλα που αποθηκεύονται μέσα, γεγονός που θέτει σε κίνδυνο τραυματισμού.

Τα ανακληθέντα χρηματοκιβώτια είναι μαύρα και μετρούν 40 ίντσες κατά 25 ίντσες κατά 55 ίντσες. Έχουν τρία ράφια και μπορούν να αποθηκεύσουν περίπου δέκα πυροβόλα όπλα.

Ο ανακαλούμενος αριθμός στυλ, FSS18-64-MB-E-S, μπορεί να βρεθεί στη συσκευασία αποστολής.

Τα προϊόντα πωλήθηκαν στο Dick’S Sporting Goods Stores σε εθνικό επίπεδο από τον Νοέμβριο του 2018 έως τον Δεκέμβριο του 2018 για περίπου 700 $.”

Μαχητής του καρκίνου (μη-Hodgkins λέμφωμα) από το 2009, τώρα αγωνίζονται διάχυτο μεγάλο λέμφωμα Β-κυττάρων.

Είναι αρκετά κακό που μερικά από αυτά μπορούν να έχουν την κλειδαριά να παρακάμψουν με ένα χαρτοπετσέτες, αλλά τώρα το ανακαλύπτουμε ότι σε μερικούς από αυτούς απλά πρέπει να γυρίσετε τη λαβή και η κλειδαριά παρακάμπτει τον εαυτό του.

Θα ήθελα πολύ να μάθω ποια είναι η πραγματική “δυσλειτουργία”.

Μαχητής του καρκίνου (μη-Hodgkins λέμφωμα) από το 2009, τώρα αγωνίζονται διάχυτο μεγάλο λέμφωμα Β-κυττάρων.

Μπορείτε να αντικαταστήσετε αυτό το Crackerjacks Electronic Combo συγκρότημα με πραγματική μηχανική κλειδαριά?

Η κλειδαριά σε αυτό το μοντέλο φαίνεται να είναι ένα περιττό swingbolt ωμέγα. Έτσι ναι, θα μπορούσατε να βάλετε ένα άλλο πρότυπο κλειδαριά στο χρηματοκιβώτιο.

Μαχητής του καρκίνου (μη-Hodgkins λέμφωμα) από το 2009, τώρα αγωνίζονται διάχυτο μεγάλο λέμφωμα Β-κυττάρων.

Παρά τις καλύτερες προσπάθειές μου, ο brudder μου αγόρασε τον εαυτό του ένα ηλεκτρονικό combo κλειδαριά ασφαλές. (Πιθανώς όχι ένα από τα καλύτερα).
Μετά από πέντε χρόνια έχει πάρει εκεί που θα ανοίξει μόνο την κλειδαριά εάν η μπαταρία 9 volt είναι ολοκαίνουργια. Τον προειδοποίησα για να το εξυπηρετηθεί.
Ούτε κλειδί ασφαλείας.

Αυτά μπορεί να έχουν κατασκευαστεί ειδικά για τα Dicks Limp πρότυπα.

Ενώ τα χρηματοκιβώτια στοίβας είναι το κάτω άκρο, για επτά εκατοντάδες δολάρια, θα έπρεπε να είναι εξυπηρετήσιμο.

Έχω ένα ζευγάρι στη στοίβα των λαμαρίνα σε ντουλάπια που έχω ως παιδικά μέρη για να τα βάλω .22 και τέτοια. Θα μπορούσαν να ανοίξουν ανοιχτά με ένα μπαρ, αλλά θα χρειαζόταν αρκετή προσπάθεια και είναι αρκετά καλοί για την προοριζόμενη χρήση τους.

Ένα βαρύ βιδωτό χρηματοκιβώτιο θα πρέπει να έχει αξιόπιστη κλειδαριά, να είναι ανθεκτική στη θερμοκρασία και πολύ δύσκολο να ανοίξει και αρκετά βαρύ για να αντισταθεί στην εκτέλεση χωρίς να κάνει μια επίδειξη από αυτό, ή βιδοφόρο (δεν είναι δυνατόν για ενοικιάσεις).

Δεν υπάρχει δικαιολογία για ένα μη επεξεργασμένο ασφαλές, ακόμα κι αν είναι το κάτω άκρο.

Δεν ήξερα καν ότι το Stack-On έκανε ακόμη και πραγματικά χρηματοκιβώτια. Συνδέομαι πάντα το όνομα με φθηνά γραφεία μεταλλικών μεταλλικών και κουτιά εργαλείων.

Δεν υπάρχει δικαιολογία για ένα μη επεξεργασμένο ασφαλές, ακόμα κι αν είναι το κάτω άκρο

Είναι ευκολότερο να κατανοήσετε τη δικαιολογία όταν τρέχετε τα μαθηματικά προς τα πίσω.

Υπάρχει ένα παντελόνι στην Κίνα γεμάτη μηχανήματα. Αγοράζουν το χάλυβα, το χρώμα, το χαλί, το ξύλο και κάνουν όλα τα μέρη και κομμάτια που χρειάζονται. Συναρμολογούν αυτό σε ένα τελικό προϊόν, το μεταφέρουν στον ωκεανό και το μεταφέρουν εδώ στις ΗΠΑ.

Μόλις στις ΗΠΑ μεταφέρεται σε όλη τη χώρα, τοποθετημένη σε ένα κατάστημα, σημειώνεται και πωλείται για $ 700.

Τι πιστεύετε ότι το χρηματοκιβώτιο είναι στην πραγματικότητα το κόστος για την παραγωγή στο κέρδος του λιανοπωλητή, των εξόδων μεταφοράς, του κέρδους του κατασκευαστή και των εξόδων παραγωγής? Έτσι, όταν κάνετε τα μάτια που $ 700 Κινέζικα ασφαλή στο κατάστημα, κοιτάζετε πραγματικά ένα ασφαλές $ 100.

Το νεότερο προϊόν τους:

“Οι Ναζί εισήλθαν σε αυτόν τον πόλεμο κάτω από την μάλλον παιδική αυταπάτη ότι επρόκειτο να βομβαρδίσουν όλους τους άλλους και κανείς δεν θα τους βομβαρδίσει. Στο Ρότερνταμ, το Λονδίνο, τη Βαρσοβία και μισό εκατό άλλα μέρη, έβαλαν την μάλλον αφελής θεωρία τους σε λειτουργία. Έσπασαν τον άνεμο και τώρα πρόκειται να αποκομίσουν το ανεμοστρόβιλο.«
-Βομβιστής Χάρις

Αρχικά δημοσιεύτηκε από κάποια βολή:
Αυτά μπορεί να έχουν κατασκευαστεί ειδικά για τα Dicks Limp πρότυπα.

Οποιοδήποτε κοκτέιλ μπορεί να είναι ένα κοκτέιλ γαρίδας αν το βάλετε στο μυαλό σας, και αν μεταφέρετε πολλές χαλαρές γαρίδες στην τσέπη σας.

הרחפת שלי מלאה בצלופחים

Αρχικά δημοσιεύτηκε από A1ABDJ:

Δεν υπάρχει δικαιολογία για ένα μη επεξεργασμένο ασφαλές, ακόμα κι αν είναι το κάτω άκρο

Είναι ευκολότερο να κατανοήσετε τη δικαιολογία όταν τρέχετε τα μαθηματικά προς τα πίσω.

Υπάρχει ένα παντελόνι στην Κίνα γεμάτη μηχανήματα. Αγοράζουν το χάλυβα, το χρώμα, το χαλί, το ξύλο και κάνουν όλα τα μέρη και κομμάτια που χρειάζονται. Συναρμολογούν αυτό σε ένα τελικό προϊόν, το μεταφέρουν στον ωκεανό και το μεταφέρουν εδώ στις ΗΠΑ.

Μόλις στις ΗΠΑ μεταφέρεται σε όλη τη χώρα, τοποθετημένη σε ένα κατάστημα, σημειώνεται και πωλείται για $ 700.

Τι πιστεύετε ότι το χρηματοκιβώτιο είναι στην πραγματικότητα το κόστος για την παραγωγή στο κέρδος του λιανοπωλητή, των εξόδων μεταφοράς, του κέρδους του κατασκευαστή και των εξόδων παραγωγής? Έτσι, όταν κάνετε τα μάτια που $ 700 Κινέζικα ασφαλή στο κατάστημα, κοιτάζετε πραγματικά ένα ασφαλές $ 100.

Και για να προσθέσετε προσβολή σε τραυματισμό, α “ασφαλής” ότι’είναι απλό να σπάσουμε.

Μαχητής του καρκίνου (μη-Hodgkins λέμφωμα) από το 2009, τώρα αγωνίζονται διάχυτο μεγάλο λέμφωμα Β-κυττάρων.

Παρακαλώ περιμένετε. Το αίτημά σας επεξεργάζεται.

Συνδέστε τις εικονικές μηχανές Azure Stack Hub στο Microsoft Sentinel

Με το Microsoft Sentinel, μπορείτε να παρακολουθείτε τα VM σας που εκτελούνται σε Azure και Azure Stack Hub σε ένα μέρος. Για να επιβιβαστείτε στο Azure Stack Machines σας στο Microsoft Sentinel, πρέπει πρώτα να προσθέσετε την επέκταση εικονικής μηχανής στις υπάρχουσες εικονικές μηχανές Azure Stack Hub.

Αφού συνδέσετε μηχανήματα Azure Stack Hub, επιλέξτε από μια γκαλερί πίνακα ελέγχου που επιφανειακές ιδέες με βάση τα δεδομένα σας. Αυτοί οι πίνακες ελέγχου μπορούν εύκολα να προσαρμοστούν στις ανάγκες σας.

Προσθέστε την επέκταση εικονικής μηχανής

Πρόσθεσε το Διαχείριση Azure Monitor, Update and Configuration Επέκταση εικονικής μηχανής στις εικονικές μηχανές που εκτελούνται στον Azure Stack Hub σας.

Ρυθμίσεις διαχείρισης Azure Monitor, Update and Configuration

  1. Σε μια νέα καρτέλα Browser, συνδεθείτε στην πύλη Azure Stack Hub.
  2. μεταβείτε στο Εικονικά μηχανήματα Σελίδα, επιλέξτε το εικονικό μηχάνημα που θέλετε να προστατεύσετε με τη Microsoft Sentinel. Για πληροφορίες σχετικά με τον τρόπο δημιουργίας μιας εικονικής μηχανής στο Azure Stack Hub, ανατρέξτε στην ενότητα Δημιουργία VM Server Windows με την πύλη Azure Stack Hub ή δημιουργήστε ένα διακομιστή Linux VM χρησιμοποιώντας την πύλη Azure Stack Hub.
  3. Επιλέγω Επεκτάσεις. Εμφανίζεται η λίστα των επεκτάσεων εικονικής μηχανής που είναι εγκατεστημένες σε αυτό το εικονικό μηχάνημα.
  4. Επίλεξε το Προσθήκη αυτί. ο Νέος πόρος Η λεπίδα του μενού ανοίγει και εμφανίζει τη λίστα των διαθέσιμων επεκτάσεων εικονικής μηχανής.
  5. Επίλεξε το Διαχείριση Azure Monitor, Update and Configuration Επέκταση και επιλέξτε Δημιουργώ. ο Εγκατάσταση επέκτασης Ανοίγει το παράθυρο διαμόρφωσης.

Σημείωση αν δεν βλέπετε το Azure Monitor, Update and Configuration Διαχείριση Επέκταση που αναφέρεται στην αγορά σας, προσεγγίστε στον χειριστή Azure Stack Hub για να το διαθέσετε.

Για περισσότερες πληροφορίες σχετικά με την εγκατάσταση και τη διαμόρφωση του πράκτορα για τα Windows, ανατρέξτε στο Connect Windows Computers.

Για την αντιμετώπιση προβλημάτων Linux των θεμάτων των πράκτορα, ανατρέξτε στην ενότητα Αντιμετώπιση προβλημάτων Azure Log Analytics Linux Agent.

Στην πύλη της Microsoft Sentinel στο Azure, κάτω Εικονικά μηχανήματα, Έχετε μια επισκόπηση όλων των VM και των υπολογιστών μαζί με την κατάστασή τους.

Καθαρίστε τους πόρους

Όταν δεν χρειάζεται πλέον, μπορείτε να αφαιρέσετε την επέκταση από την εικονική μηχανή μέσω της πύλης Azure Stack Hub.

Για να καταργήσετε την επέκταση:

  1. Ανοιξε το Azure Stack Hub Portal.
  2. Παω σε Εικονικά μηχανήματα σελίδα, επιλέξτε το εικονικό μηχάνημα από το οποίο θέλετε να καταργήσετε την επέκταση.
  3. Επιλέγω Επεκτάσεις, Επιλέξτε την επέκταση Microsoft.Επιχείρηση.Παρακολούθηση.
  4. Επιλέγω Απεγκαθιστώ, και επιβεβαιώστε την επιλογή σας.

Επόμενα βήματα

Για να μάθετε περισσότερα σχετικά με το Microsoft Sentinel, δείτε τα ακόλουθα άρθρα:

  • Μάθετε πώς να έχετε ορατότητα στα δεδομένα σας και τις πιθανές απειλές.
  • Ξεκινήστε την ανίχνευση απειλών με τη Microsoft Sentinel.
  • Μετακίνηση δεδομένων από συσκευές κοινής μορφής συμβάντων στο Microsoft Sentinel.

Κλειστό

Ελάτε προετοιμασμένοι με βοήθεια και εξοπλισμό για να το μετακινήσετε από το έδαφος στη μεταφορά σας! Δείτε το YouTube για χρήσιμα βίντεο για την αφαίρεση ασφαλών πόρων για να διευκολύνετε την κίνηση. Η παραλαβή είναι στο επίπεδο του εδάφους, χωρίς αποβάθρα φόρτωσης. Έχουμε μια παλέτα Jack. Δεν έχουμε ανελκυστήρα πιρούνι.

Για αυτό το μοντέλο δεν έχουμε PDF’s. Δείτε φωτογραφίες της ετικέτας και των πληροφοριών προβολής.

Πληροφορίες φόρτωσης: Ελάτε προετοιμασμένοι με βοήθεια και εξοπλισμό για να το μετακινήσετε από το έδαφος στη μεταφορά σας! Δείτε το YouTube για χρήσιμα βίντεο για την αφαίρεση ασφαλών πόρων για να διευκολύνετε την κίνηση. Η παραλαβή είναι στο επίπεδο του εδάφους, χωρίς αποβάθρα φόρτωσης. Έχουμε μια παλέτα Jack. Δεν έχουμε ανελκυστήρα πιρούνι.

Περισσότερες πληροφορίες φόρτωσης (από το Stack-on.com/σελίδες/συχνές ερωτήσεις):

Ε: Πόσο ζυγίζει η πόρτα?
Α: Περίπου το 1/3 του συνολικού βάρους του ασφαλούς.

Ε: Μπορεί να αφαιρεθεί η πόρτα?
Α: Ναι. Ανοίξτε την πόρτα, αφαιρέστε τα καπάκια μεντεσέδες. Ανασηκώστε προσεκτικά την πόρτα – θα χρειαστείτε ανελκυστήρα ομάδας, η πόρτα είναι πολύ βαριά και δεν μπορεί να αντικατασταθεί.

Επικοινωνήστε με το (612) 298-8901 με οποιεσδήποτε ερωτήσεις ή για περισσότερες πληροφορίες. Μπορούμε επίσης να προσεγγίσουμε μέσω ηλεκτρονικού ταχυδρομείου στο SevenIn10@SSMNET.καθαρά . Εάν δεν μπορείτε να φτάσετε στο Mark με την ερώτησή σας, καλέστε το Kim στο 763-218-6591.

Ο V-Man δεν θα στέλνει κανένα από τα μεγάλα χρηματοκιβώτια. Οι φορητές περιπτώσεις, τα μικρότερα χρηματοκιβώτια και τα περισσότερα άλλα αντικείμενα μπορούν να αποσταλούν. Επικοινωνήστε μαζί μας για να κάνετε ρυθμίσεις.

Σημειώστε ότι το φορτίο είναι σε επίπεδο εδάφους. Εάν αγοράζετε ένα μεγάλο αντικείμενο, παρακαλούμε να φέρετε το απαραίτητο ανθρώπινο δυναμικό, εξοπλισμό και όχημα που απαιτείται για τη φόρτωση του αντικειμένου. Η βοήθεια με τη φόρτωση δεν θα είναι διαθέσιμη. Έχουμε μια γρύλα παλετών, αλλά δεν ανεβαίνει πιρούνι.

Όλες οι πωλήσεις χωρίς αποθεματικά στους υψηλότερους υποψήφιους! Επωφεληθείτε από την ευκαιρία για το διορισμό επιθεώρησης ή την κλήση/email με ερωτήσεις! Οι εικόνες και οι περιγραφές δεν πρέπει να χρησιμοποιούνται αντί της επιθεώρησής σας και η ημέρα παραλαβής δεν είναι ημέρα επιθεώρησης. Όλα πωλούνται όπως είναι πού είναι. Εδώ δεν θα είναι προσαρμογές ή άρνηση που πωλούνται. Ευχαριστώ που ψάχνατε!!

Επιθεώρηση:

Παρ, 07 Οκτωβρίου, 2016

10:00 π.μ. – 02:00 μ.μ

Κλείσιμο πλειστηριασμού:

Κυρ, 09 Οκτωβρίου 2016

Μετακίνηση:

Tue, 11 Οκτωβρίου 2016

09:30 π.μ. – 05:30 μ.μ

Προσαυξήσεις προσφοράς:

Φάσμα προσφορών Ελάχιστη αύξηση
0 $.01 – 75 $.00 1 $.00
75 $.01 – 150 $.00 5 $.00
150 $.01 – 250 $.00 10 $.00
250 $.01 – 500 $.00 25 $.00
500 $.01 – 1.000 $.00 50 $.00
1.000 $.01 – 5.000 $.00 75 $.00
5.000 $.01 – 50.000 $.00 100 $.00
50.000 $.01 – 75.000 $.00 250 $.00
75.000 $.01 – 100.000 $.00 500 $.00
100.000 $.01 – 2.500.000 $.00 1.000 $.00

Ασφάλιση με έκπτωση αγοραστή Ασφάλιση κανονικού αγοραστή Καπάκι
10.00% 13.00% 3,250 $.00

Αυτή η δημοπρασία έχει συμβληθεί και διαχειρίζεται οι: V-Man Auctions

Διευθυντής: Mark Cooper

Μετρητά, πίστωση, ταμίας’S/τραπεζική επιταγή

Αυτή η δημοπρασία έχει συμβληθεί και διαχειρίζεται οι δημοπρασίες V-Man. Με την τοποθέτηση μιας προσφοράς σε αυτή τη δημοπρασία συμφωνείτε με τους συγκεκριμένους όρους δημοπρασίας που αναφέρονται παρακάτω εκτός από τους όρους χρήστη K-BID. Για δημοπρασίες που έχουν συμβληθεί και διαχειρίζονται μια ανεξάρτητη θυγατρική, K-BID Online, Inc. ενεργεί μόνο ως χώρος και δεν θα συμμετέχει σε διαφορές ή ζητήματα σχετικά με αυτήν τη δημοπρασία. Όλα πωλούνται “Όπως είναι, πού είναι” χωρίς εγγυήσεις ή εγγυήσεις. Είστε υπεύθυνοι για την επιθεώρηση στοιχείων πριν από την αγορά. Υπάρχει 13% Premium Buyers (13% BP) σε αυτή τη δημοπρασία. Όλες οι πληρωμές μη πιστωτικών/χρεωστικών καρτών που πραγματοποιούνται σε πλήρες (τιμολογούμενο ποσό) θα λάβουν μείωση 3% στην πριμοδότηση αγοραστών (10% BP). Ο εφαρμοστέος φόρος πωλήσεων της Μινεσότα θα συλλεχθεί. Στο τέλος της δημοπρασίας ενεργά στοιχεία θα παραμείνουν ανοιχτά έως ότου δεν έχουν ληφθεί προσφορές για τρία λεπτά. Σημαντική σημείωση: Εάν ο υψηλός πλειοδότης ενός στοιχείου δεν αναγνωρίζει την αγορά, η K-BID Systems διατηρεί το δικαίωμα να καθορίσει πώς και σε ποιον θα μεταπωληθεί. Εάν διαπιστώσουμε ότι η νικήτρια προσφορά δεν ήταν καλόπιστος υποψήφιος, το αντικείμενο δεν θα μεταβεί αυτόματα στην επόμενη δεύτερη υψηλότερη προσφορά.

Αυτή η δημοπρασία έχει συμβληθεί και διαχειρίζεται μια ανεξάρτητη θυγατρική. Με την τοποθέτηση μιας προσφοράς σε αυτή τη δημοπρασία, συμφωνείτε με τους συγκεκριμένους όρους της δημοπρασίας που αναφέρονται σε αυτή τη σελίδα σε προσθήκες στους όρους και τις συμφωνίες χρήστη K-BID.

K-Bid Online, Inc. (K-BID) είναι υπεύθυνο για τη διατήρηση του K-BID.Ιστοσελίδα COM. K-διάκριση.Το COM χρησιμεύει ως χώρος που χρησιμοποιούνται από ανεξάρτητες εταιρείες δημοπρασιών (θυγατρικές) για να παρουσιάσουν τις online δημοπρασίες τους στους υποψήφιους.

K-διάκριση’ο ρόλος στις δημοπρασίες που αναφέρονται στο K-BID.Το COM περιορίζεται στην παροχή του χώρου για δημοπρασίες θυγατρικών. Οι θυγατρικές δεν είναι υπάλληλοι, πράκτορες, εκπρόσωποι ή συνεργάτες της K-BID Online, Inc. K-διάκριση’Οι γνώσεις για μεμονωμένες δημοπρασίες και μεμονωμένες συναλλαγές δημοπρασιών περιορίζονται στις πληροφορίες που εμφανίζονται στον ιστότοπο.

Τοποθετώντας μια προσφορά στο K-BID.com, οι υποψήφιοι επαληθεύουν ότι είναι τουλάχιστον 18 ετών και αναγνωρίζουν ότι κατανοούν και θα συμμορφώνονται με τα δύο k-bid.COM Όροι Ιστοσελίδας και οι συγκεκριμένοι όροι δημοπρασίας. Οι υποψήφιοι δεν πρέπει να μοιράζονται τα στοιχεία του κωδικού πρόσβασης ή του λογαριασμού τους με κανέναν. Οι υποψήφιοι είναι υπεύθυνοι για τις προσφορές που έχουν τοποθετηθεί στο λογαριασμό τους.

Οι ημερομηνίες επιθεώρησης/φορές είναι διαθέσιμες για κάθε δημοπρασία. Οι υποψήφιοι ενθαρρύνονται έντονα να επιθεωρήσουν πριν από την τοποθέτηση προσφορών. Η ημέρα απομάκρυνσης δεν είναι ημέρα επιθεώρησης. Όταν τελειώνει μια δημοπρασία και το τιμολόγιο που κερδίζει τον πλειοδότη εμφανίζεται στον πλειοδότη’S Πίνακας ελέγχου, ο πλειοδότης είναι υποχρεωμένος να τιμήσει τις προσφορές τους.

Κάθε στοιχείο δημοπρασίας πωλείται “Όπως είναι, πού είναι” χωρίς εγγυήσεις ή εγγυήσεις. Είστε υπεύθυνοι για την επιθεώρηση στοιχείων πριν από την αγορά.

Οι υποψήφιοι είναι υπεύθυνοι για τη γνώση και τη συμμόρφωση με τους όρους δημοπρασίας. Η μη συμμόρφωση με τους όρους απομάκρυνσης μπορεί να οδηγήσει σε απενεργοποίηση προνομίων προσφορών. Μόλις τοποθετηθεί μια προσφορά, δεν μπορεί να αποσυρθεί.

Οι πωλητές και οι πράκτορές τους απαγορεύονται να υποβάλλουν προσφορά για τα δικά τους περιουσιακά στοιχεία.

Τα αντικείμενα με αποθεματικό δεν θα πωληθούν εκτός εάν έχει ικανοποιηθεί η τιμή αποθεματικού.

Στο τέλος της δημοπρασίας, τα ενεργά στοιχεία θα παραμείνουν ανοιχτά έως ότου δεν έχουν ληφθεί προσφορές για τρία λεπτά.

Ο εφαρμοστέος φόρος επί των πωλήσεων θα εισπραχθεί από τη θυγατρική που διαχειρίζεται τη δημοπρασία.

Σε περίπτωση που τερματίζονται τα δικαιώματα υποβολής προσφορών λόγω τιμολογίων χωρίς εμφάνιση, οι υποψήφιοι μπορούν να αποκατασταθούν κατά την κρίση της K-BID μόνο μετά από ποινή του 20% των μη καταβληθέντων τιμολογίων και ένα τέλος αποκατάστασης των $ 25.00 έχει καταβληθεί στο K-BID και ένα σαρωμένο αντίγραφο της άδειας οδήγησης σας με ηλεκτρονικό ταχυδρομείο. Τα στοιχεία τιμολόγησης δεν θα απονεμηθούν. Η πληρωμή είναι τιμωρητική και σκοπεύει να αποτρέψει τα μη εμφάνιση. Οι λογαριασμοί διπλών προσφέροντος θα απενεργοποιηθούν όταν είναι αποφασισμένοι να υπάρχουν. Εάν είναι δυνατόν και κατά την κρίση μας, η K-BID διατηρεί το δικαίωμα να διαγράψει οποιαδήποτε προσφορά πιστεύουμε ότι έχει τοποθετηθεί από έναν ύποπτο πλειοδότη. Οποιαδήποτε εγγραφή που εμφανίζεται στο σύστημα ανίχνευσης απάτης μπορεί να τοποθετηθεί σε αναμονή και να αφαιρεθούν οι προσφορές μέχρι να επαληθευτεί ο χρήστης. Το K-BID Online, η Inc διατηρεί το δικαίωμα να απαγορεύει σε οποιονδήποτε από την υποβολή προσφορών στον ιστότοπό της. Οι περιπτώσεις προφανείς προσφορές χωρίς πρόθεση να εξαργυρώσουν θα παραπεμφθούν στις κατάλληλες νομικές αρχές.

Οι θυγατρικές ενδέχεται να μειώσουν πολλά αποθεματικά ανά πάσα στιγμή πριν ή μετά από μια δημοπρασία. Εάν το αποθεματικό μειωθεί ενώ η δημοπρασία βρίσκεται σε εξέλιξη, το εφαρμοστέο μήνυμα αποθεματικού θα εμφανιστεί κάτω από τις επόμενες απαιτούμενες πληροφορίες προσφοράς (το αποθεματικό δεν πληρούται ή έχει επιτευχθεί αποθεματικό). Το περιουσιακό στοιχείο θα πουλήσει στον υψηλό πλειοδότη εάν το ποσό που έχει μειωθεί. Εάν το αποθεματικό μειωθεί μετά την ολοκλήρωση της δημοπρασίας, ο υψηλότερος πλειοδότης στη δημοπρασία θα λάβει ένα τιμολόγιο που κέρδισε τον πλειοδότη.

Μόλις ξεκινήσει η δημοπρασία της διαδικασίας, οι ειδοποιήσεις δεν θα σταλούν οι ειδοποιήσεις.

Μόλις τοποθετηθεί μια προσφορά, δεν μπορεί να αποσυρθεί.

Κλειστό

Επικοινωνήστε με το (612) 298-8901 με οποιεσδήποτε ερωτήσεις ή για περισσότερες πληροφορίες. Μπορούμε επίσης να προσεγγίσουμε μέσω ηλεκτρονικού ταχυδρομείου στο SevenIn10@SSMNET.καθαρά . Εάν δεν μπορείτε να φτάσετε στο Mark με την ερώτησή σας, καλέστε το Kim στο 763-218-6591.

Ο V-Man δεν θα στέλνει κανένα από τα μεγάλα χρηματοκιβώτια. Οι φορητές περιπτώσεις, τα μικρότερα χρηματοκιβώτια και τα περισσότερα άλλα αντικείμενα μπορούν να αποσταλούν. Επικοινωνήστε μαζί μας για να κάνετε ρυθμίσεις.

Σημειώστε ότι το φορτίο είναι σε επίπεδο εδάφους. Εάν αγοράζετε ένα μεγάλο αντικείμενο, παρακαλούμε να φέρετε το απαραίτητο ανθρώπινο δυναμικό, εξοπλισμό και όχημα που απαιτείται για τη φόρτωση του αντικειμένου. Η βοήθεια με τη φόρτωση δεν θα είναι διαθέσιμη. Έχουμε μια γρύλα παλετών, αλλά δεν ανεβαίνει πιρούνι.

Όλες οι πωλήσεις χωρίς αποθεματικά στους υψηλότερους υποψήφιους! Επωφεληθείτε από την ευκαιρία για το διορισμό επιθεώρησης ή την κλήση/email με ερωτήσεις! Οι εικόνες και οι περιγραφές δεν πρέπει να χρησιμοποιούνται αντί της επιθεώρησής σας και η ημέρα παραλαβής δεν είναι ημέρα επιθεώρησης. Όλα πωλούνται όπως είναι πού είναι. Εδώ δεν θα είναι προσαρμογές ή άρνηση που πωλούνται. Ευχαριστώ που ψάχνατε!!

Επιθεώρηση:

Παρ, 07 Οκτωβρίου, 2016

10:00 π.μ. – 02:00 μ.μ

Κλείσιμο πλειστηριασμού:

Κυρ, 09 Οκτωβρίου 2016

Μετακίνηση:

Tue, 11 Οκτωβρίου 2016

09:30 π.μ. – 05:30 μ.μ

Προσαυξήσεις προσφοράς:

Φάσμα προσφορών Ελάχιστη αύξηση
0 $.01 – 75 $.00 1 $.00
75 $.01 – 150 $.00 5 $.00
150 $.01 – 250 $.00 10 $.00
250 $.01 – 500 $.00 25 $.00
500 $.01 – 1.000 $.00 50 $.00
1.000 $.01 – 5.000 $.00 75 $.00
5.000 $.01 – 50.000 $.00 100 $.00
50.000 $.01 – 75.000 $.00 250 $.00
75.000 $.01 – 100.000 $.00 500 $.00
100.000 $.01 – 2.500.000 $.00 1.000 $.00

Ασφάλιση με έκπτωση αγοραστή Ασφάλιση κανονικού αγοραστή Καπάκι
10.00% 13.00% 3,250 $.00

Αυτή η δημοπρασία έχει συμβληθεί και διαχειρίζεται οι: V-Man Auctions

Διευθυντής: Mark Cooper

Μετρητά, πίστωση, ταμίας’S/τραπεζική επιταγή

Αυτή η δημοπρασία έχει συμβληθεί και διαχειρίζεται οι δημοπρασίες V-Man. Με την τοποθέτηση μιας προσφοράς σε αυτή τη δημοπρασία συμφωνείτε με τους συγκεκριμένους όρους δημοπρασίας που αναφέρονται παρακάτω εκτός από τους όρους χρήστη K-BID. Για δημοπρασίες που έχουν συμβληθεί και διαχειρίζονται μια ανεξάρτητη θυγατρική, K-BID Online, Inc. ενεργεί μόνο ως χώρος και δεν θα συμμετέχει σε διαφορές ή ζητήματα σχετικά με αυτήν τη δημοπρασία. Όλα πωλούνται “Όπως είναι, πού είναι” χωρίς εγγυήσεις ή εγγυήσεις. Είστε υπεύθυνοι για την επιθεώρηση στοιχείων πριν από την αγορά. Υπάρχει 13% Premium Buyers (13% BP) σε αυτή τη δημοπρασία. Όλες οι πληρωμές μη πιστωτικών/χρεωστικών καρτών που πραγματοποιούνται σε πλήρες (τιμολογούμενο ποσό) θα λάβουν μείωση 3% στην πριμοδότηση αγοραστών (10% BP). Ο εφαρμοστέος φόρος πωλήσεων της Μινεσότα θα συλλεχθεί. Στο τέλος της δημοπρασίας ενεργά στοιχεία θα παραμείνουν ανοιχτά έως ότου δεν έχουν ληφθεί προσφορές για τρία λεπτά. Σημαντική σημείωση: Εάν ο υψηλός πλειοδότης ενός στοιχείου δεν αναγνωρίζει την αγορά, η K-BID Systems διατηρεί το δικαίωμα να καθορίσει πώς και σε ποιον θα μεταπωληθεί. Εάν διαπιστώσουμε ότι η νικήτρια προσφορά δεν ήταν καλόπιστος υποψήφιος, το αντικείμενο δεν θα μεταβεί αυτόματα στην επόμενη δεύτερη υψηλότερη προσφορά.

Αυτή η δημοπρασία έχει συμβληθεί και διαχειρίζεται μια ανεξάρτητη θυγατρική. Με την τοποθέτηση μιας προσφοράς σε αυτή τη δημοπρασία, συμφωνείτε με τους συγκεκριμένους όρους της δημοπρασίας που αναφέρονται σε αυτή τη σελίδα σε προσθήκες στους όρους και τις συμφωνίες χρήστη K-BID.

K-Bid Online, Inc. (K-BID) είναι υπεύθυνο για τη διατήρηση του K-BID.Ιστοσελίδα COM. K-διάκριση.Το COM χρησιμεύει ως χώρος που χρησιμοποιούνται από ανεξάρτητες εταιρείες δημοπρασιών (θυγατρικές) για να παρουσιάσουν τις online δημοπρασίες τους στους υποψήφιους.

K-διάκριση’ο ρόλος στις δημοπρασίες που αναφέρονται στο K-BID.Το COM περιορίζεται στην παροχή του χώρου για δημοπρασίες θυγατρικών. Οι θυγατρικές δεν είναι υπάλληλοι, πράκτορες, εκπρόσωποι ή συνεργάτες της K-BID Online, Inc. K-διάκριση’Οι γνώσεις για μεμονωμένες δημοπρασίες και μεμονωμένες συναλλαγές δημοπρασιών περιορίζονται στις πληροφορίες που εμφανίζονται στον ιστότοπο.

Τοποθετώντας μια προσφορά στο K-BID.com, οι υποψήφιοι επαληθεύουν ότι είναι τουλάχιστον 18 ετών και αναγνωρίζουν ότι κατανοούν και θα συμμορφώνονται με τα δύο k-bid.COM Όροι Ιστοσελίδας και οι συγκεκριμένοι όροι δημοπρασίας. Οι υποψήφιοι δεν πρέπει να μοιράζονται τα στοιχεία του κωδικού πρόσβασης ή του λογαριασμού τους με κανέναν. Οι υποψήφιοι είναι υπεύθυνοι για τις προσφορές που έχουν τοποθετηθεί στο λογαριασμό τους.

Οι ημερομηνίες επιθεώρησης/φορές είναι διαθέσιμες για κάθε δημοπρασία. Οι υποψήφιοι ενθαρρύνονται έντονα να επιθεωρήσουν πριν από την τοποθέτηση προσφορών. Η ημέρα απομάκρυνσης δεν είναι ημέρα επιθεώρησης. Όταν τελειώνει μια δημοπρασία και το τιμολόγιο που κερδίζει τον πλειοδότη εμφανίζεται στον πλειοδότη’S Πίνακας ελέγχου, ο πλειοδότης είναι υποχρεωμένος να τιμήσει τις προσφορές τους.

Κάθε στοιχείο δημοπρασίας πωλείται “Όπως είναι, πού είναι” χωρίς εγγυήσεις ή εγγυήσεις. Είστε υπεύθυνοι για την επιθεώρηση στοιχείων πριν από την αγορά.

Οι υποψήφιοι είναι υπεύθυνοι για τη γνώση και τη συμμόρφωση με τους όρους δημοπρασίας. Η μη συμμόρφωση με τους όρους απομάκρυνσης μπορεί να οδηγήσει σε απενεργοποίηση προνομίων προσφορών. Μόλις τοποθετηθεί μια προσφορά, δεν μπορεί να αποσυρθεί.

Οι πωλητές και οι πράκτορές τους απαγορεύονται να υποβάλλουν προσφορά για τα δικά τους περιουσιακά στοιχεία.

Τα αντικείμενα με αποθεματικό δεν θα πωληθούν εκτός εάν έχει ικανοποιηθεί η τιμή αποθεματικού.

Στο τέλος της δημοπρασίας, τα ενεργά στοιχεία θα παραμείνουν ανοιχτά έως ότου δεν έχουν ληφθεί προσφορές για τρία λεπτά.

Ο εφαρμοστέος φόρος επί των πωλήσεων θα εισπραχθεί από τη θυγατρική που διαχειρίζεται τη δημοπρασία.

Σε περίπτωση που τερματίζονται τα δικαιώματα υποβολής προσφορών λόγω τιμολογίων χωρίς εμφάνιση, οι υποψήφιοι μπορούν να αποκατασταθούν κατά την κρίση της K-BID μόνο μετά από ποινή του 20% των μη καταβληθέντων τιμολογίων και ένα τέλος αποκατάστασης των $ 25.00 έχει καταβληθεί στο K-BID και ένα σαρωμένο αντίγραφο της άδειας οδήγησης σας με ηλεκτρονικό ταχυδρομείο. Τα στοιχεία τιμολόγησης δεν θα απονεμηθούν. Η πληρωμή είναι τιμωρητική και σκοπεύει να αποτρέψει τα μη εμφάνιση. Οι λογαριασμοί διπλών προσφέροντος θα απενεργοποιηθούν όταν είναι αποφασισμένοι να υπάρχουν. Εάν είναι δυνατόν και κατά την κρίση μας, η K-BID διατηρεί το δικαίωμα να διαγράψει οποιαδήποτε προσφορά πιστεύουμε ότι έχει τοποθετηθεί από έναν ύποπτο πλειοδότη. Οποιαδήποτε εγγραφή που εμφανίζεται στο σύστημα ανίχνευσης απάτης μπορεί να τοποθετηθεί σε αναμονή και να αφαιρεθούν οι προσφορές μέχρι να επαληθευτεί ο χρήστης. Το K-BID Online, η Inc διατηρεί το δικαίωμα να απαγορεύει σε οποιονδήποτε από την υποβολή προσφορών στον ιστότοπό της. Οι περιπτώσεις προφανείς προσφορές χωρίς πρόθεση να εξαργυρώσουν θα παραπεμφθούν στις κατάλληλες νομικές αρχές.

Οι θυγατρικές ενδέχεται να μειώσουν πολλά αποθεματικά ανά πάσα στιγμή πριν ή μετά από μια δημοπρασία. Εάν το αποθεματικό μειωθεί ενώ η δημοπρασία βρίσκεται σε εξέλιξη, το εφαρμοστέο μήνυμα αποθεματικού θα εμφανιστεί κάτω από τις επόμενες απαιτούμενες πληροφορίες προσφοράς (το αποθεματικό δεν πληρούται ή έχει επιτευχθεί αποθεματικό). Το περιουσιακό στοιχείο θα πουλήσει στον υψηλό πλειοδότη εάν το ποσό που έχει μειωθεί. Εάν το αποθεματικό μειωθεί μετά την ολοκλήρωση της δημοπρασίας, ο υψηλότερος πλειοδότης στη δημοπρασία θα λάβει ένα τιμολόγιο που κέρδισε τον πλειοδότη.

Μόλις ξεκινήσει η δημοπρασία της διαδικασίας, οι ειδοποιήσεις δεν θα σταλούν οι ειδοποιήσεις.

Μόλις τοποθετηθεί μια προσφορά, δεν μπορεί να αποσυρθεί.

Υψηλή διαθεσιμότητα με τον Redis Sentinel

Το ίδιο το Sentinel έχει σχεδιαστεί για να τρέχει σε μια διαμόρφωση όπου υπάρχουν πολλαπλές διαδικασίες Sentinel που συνεργάζονται μαζί. Το πλεονέκτημα της συνεργασίας πολλαπλών διεργασιών Sentinel είναι τα εξής:

  1. Η ανίχνευση αποτυχίας εκτελείται όταν πολλαπλά Sentinels συμφωνούν για το γεγονός ότι ένας συγκεκριμένος πλοίαρχος δεν είναι πλέον διαθέσιμος. Αυτό μειώνει την πιθανότητα ψευδών θετικών.
  2. Το Sentinel λειτουργεί ακόμη και αν δεν λειτουργούν όλες οι διαδικασίες Sentinel, καθιστώντας το σύστημα ισχυρό έναντι αποτυχιών. Δεν υπάρχει διασκέδαση στο να έχουμε ένα σύστημα αποτυχίας που είναι το ίδιο ένα σημείο αποτυχίας, τελικά.

Το άθροισμα των Sentinels, των περιπτώσεων Redis (Masters and Replicas) και των πελατών που συνδέονται με το Sentinel και το Redis, είναι επίσης ένα μεγαλύτερο κατανεμημένο σύστημα με συγκεκριμένες ιδιότητες. Σε αυτό το έγγραφο οι έννοιες θα εισαχθούν σταδιακά ξεκινώντας από τις βασικές πληροφορίες που απαιτούνται για να κατανοήσουν τις βασικές ιδιότητες του Sentinel, σε πιο περίπλοκες πληροφορίες (που είναι προαιρετικές) για να κατανοήσουμε πώς λειτουργεί ακριβώς το Sentinel λειτουργεί.

Sentinel Γρήγορη εκκίνηση

Απόκτηση του Sentinel

Η τρέχουσα έκδοση του Sentinel καλείται Φρουρός 2. Πρόκειται για επανεγγραφή της αρχικής εφαρμογής Sentinel χρησιμοποιώντας ισχυρότερους και απλούστερους αλγόριθμους (που εξηγούνται σε αυτή την τεκμηρίωση).

Μια σταθερή απελευθέρωση του Redis Sentinel αποστέλλεται από το Redis 2.8.

Οι νέες εξελίξεις πραγματοποιούνται στο ασταθής Το υποκατάστημα και τα νέα χαρακτηριστικά μερικές φορές μεταφέρονται πίσω στο τελευταίο σταθερό υποκατάστημα μόλις θεωρηθούν σταθεροί.

Redis Sentinel Έκδοση 1, που αποστέλλεται με Redis 2.6, δεν πρέπει να χρησιμοποιείται.

Τρέχουσα Sentinel

Εάν χρησιμοποιείτε το εκτελέσιμο εκτελέσιμο Redis-Sentinel (ή αν έχετε συμβολικό σύνδεσμο με αυτό το όνομα στο εκτελέσιμο εκτελέσιμο Redis-Server), μπορείτε να εκτελέσετε το Sentinel με την ακόλουθη γραμμή εντολών:

redis-sentinel/path/to/sentinel.τολμηρός 

Διαφορετικά, μπορείτε να χρησιμοποιήσετε απευθείας το εκτελέσιμο εκτελέσιμο redis-server ξεκινώντας από τη λειτουργία Sentinel:

redis-server/path/to/sentinel.συγχρονισμός 

Και οι δύο τρόποι λειτουργούν το ίδιο.

Ωστόσο είναι υποχρεωτικό Για να χρησιμοποιήσετε ένα αρχείο διαμόρφωσης κατά την εκτέλεση του Sentinel, καθώς αυτό το αρχείο θα χρησιμοποιηθεί από το σύστημα για να αποθηκεύσετε την τρέχουσα κατάσταση που θα επαναφορτωθεί σε περίπτωση επανεκκίνησης. Το Sentinel απλά αρνείται να ξεκινήσει εάν δεν δίνεται κανένα αρχείο ρύθμισης παραμέτρων ή εάν η διαδρομή αρχείου διαμόρφωσης δεν είναι εγγράψιμο.

Sentinels από προεπιλεγμένη εκτέλεση Ακούγοντας για συνδέσεις στη θύρα TCP 26379, Έτσι για να λειτουργήσουν οι Sentinels, το Port 26379 των διακομιστών σας Πρέπει να είναι ανοιχτό Για να λαμβάνετε συνδέσεις από τις διευθύνσεις IP των άλλων περιπτώσεων Sentinel. Διαφορετικά, οι Sentinels δεν μπορούν να μιλήσουν και δεν μπορούν να συμφωνήσουν για το τι πρέπει να κάνουμε, οπότε η αποτυχία δεν θα εκτελεστεί ποτέ.

Θεμελιώδη πράγματα που πρέπει να γνωρίζετε για το Sentinel πριν από την ανάπτυξη

  1. Χρειάζεστε τουλάχιστον τρεις περιπτώσεις Sentinel για μια ισχυρή ανάπτυξη.
  2. Οι τρεις περιπτώσεις Sentinel θα πρέπει να τοποθετηθούν σε υπολογιστές ή εικονικές μηχανές που πιστεύεται ότι αποτυγχάνουν με ανεξάρτητο τρόπο. Έτσι, για παράδειγμα, διαφορετικοί φυσικοί διακομιστές ή εικονικές μηχανές που εκτελούνται σε διαφορετικές ζώνες διαθεσιμότητας.
  3. Το σύστημα Distributed Distributed Sentinel + Redis δεν εγγυάται ότι οι αναγνωρισμένες εγγραφές διατηρούνται κατά τη διάρκεια των αποτυχιών, αφού ο Redis χρησιμοποιεί ασύγχρονη αντιγραφή. Ωστόσο, υπάρχουν τρόποι για την ανάπτυξη του Sentinel που κάνουν το παράθυρο να χάσει γραπτά περιορίζονται σε ορισμένες στιγμές, ενώ υπάρχουν άλλοι λιγότερο ασφαλείς τρόποι για την ανάπτυξη του.
  4. Χρειάζεστε υποστήριξη Sentinel στους πελάτες σας. Οι δημοφιλείς βιβλιοθήκες πελατών έχουν υποστήριξη Sentinel, αλλά όχι όλες.
  5. Δεν υπάρχει ρύθμιση HA που είναι ασφαλές εάν δεν δοκιμάζετε από καιρό σε καιρό σε περιβάλλοντα ανάπτυξης, ή ακόμα καλύτερα αν μπορείτε, σε περιβάλλοντα παραγωγής, εάν λειτουργούν. Μπορεί να έχετε μια εσφαλμένη διαμόρφωση που θα γίνει εμφανής μόνο όταν είναι πολύ αργά (στις 3 π.μ. όταν ο κύριος σας σταματάει να λειτουργεί).
  6. Sentinel, Docker ή άλλες μορφές μετάφρασης διευθύνσεων δικτύου ή χαρτογράφηση λιμένων θα πρέπει να αναμειγνύονται με προσοχή: Ο Docker εκτελεί την αποκατάσταση των λιμένων, το Breaking Sentinel Auto Discovery of άλλες διαδικασίες Sentinel και τον κατάλογο των αντιγράφων για έναν πλοίαρχο. Ελέγξτε την ενότητα για Sentinel και Docker Αργότερα σε αυτό το έγγραφο για περισσότερες πληροφορίες.

Ρύθμιση του Sentinel

Η κατανομή της πηγής Redis περιέχει ένα αρχείο που ονομάζεται Sentinel.Conf που είναι ένα αυτο-τεκμηριωμένο αρχείο διαμόρφωσης παραδείγματος που μπορείτε να χρησιμοποιήσετε για να διαμορφώσετε το Sentinel, ωστόσο ένα τυπικό ελάχιστο αρχείο διαμόρφωσης μοιάζει με τα εξής:

Sentinel Monitor Mymaster 127.0.0.1 6379 2 Sentinel Down-After-Milliseconds Mymaster 60000 Sentinel Failover-Timeout Mymaster 180000 Sentinel Parallel Syncs Mymaster 1 Sentinel Monitor Resque 192.168.1.3 6380 4 Sentinel Down-After-Milliseconds Resque 10000 Sentinel Failover-Timeout Resque 180000 Sentinel Parallel-Syncs Resque 5 

Πρέπει μόνο να καθορίσετε τους Δασκάλους για να παρακολουθείτε, δίνοντας σε κάθε διαχωρισμένο κύριο (που μπορεί να έχει οποιοδήποτε αριθμό αντιγράφων) ένα διαφορετικό όνομα. Δεν χρειάζεται να καθορίσετε αντίγραφα, τα οποία ανακαλύπτονται αυτόματα. Το Sentinel θα ενημερώσει αυτόματα τη διαμόρφωση με πρόσθετες πληροφορίες σχετικά με τα αντίγραφα (προκειμένου να διατηρήσει τις πληροφορίες σε περίπτωση επανεκκίνησης). Η διαμόρφωση ξαναγράφεται επίσης κάθε φορά που ένα αντίγραφο προωθείται στον κύριο κατά τη διάρκεια μιας αποτυχίας και κάθε φορά που ανακαλύπτεται ένα νέο Sentinel.

Η διαμόρφωση παραδείγματος παραπάνω παρακολουθεί βασικά δύο σετ περιπτώσεων Redis, το καθένα από τα οποία αποτελείται από έναν πλοίαρχο και έναν απροσδιόριστο αριθμό αντιγράφων. Ένα σύνολο περιπτώσεων ονομάζεται Mymaster, και το άλλο resque .

Η έννοια των επιχειρήματος των δηλώσεων παρακολούθησης Sentinel είναι η εξής:

οθόνη Sentinel

Για λόγους σαφήνειας, ας ελέγξουμε τη γραμμή ανά γραμμή τι σημαίνουν οι επιλογές διαμόρφωσης:

Η πρώτη γραμμή χρησιμοποιείται για να πει στον Redis να παρακολουθεί έναν κύριο που ονομάζεται ο αφέντης μου, δηλαδή στη διεύθυνση 127.0.0.1 και θύρα 6379, με απαρτία 2. Όλα είναι αρκετά προφανή αλλά το απαρτία διαφωνία:

  • ο απαρτία είναι ο αριθμός των Sentinels που πρέπει να συμφωνήσουν για το γεγονός ότι ο πλοίαρχος δεν είναι προσβάσιμος, προκειμένου να σηματοδοτήσει πραγματικά τον κύριο ως αποτυχία και τελικά να ξεκινήσει μια διαδικασία αποτυχίας, αν είναι δυνατόν.
  • Ωστόσο Η απαρτία χρησιμοποιείται μόνο για την ανίχνευση της αποτυχίας. Προκειμένου να εκτελέσει πραγματικά μια αποτυχία, ένας από τους Sentinels πρέπει να εκλεγεί ηγέτης για την αποτυχία και να εξουσιοδοτηθεί να προχωρήσει. Αυτό συμβαίνει μόνο με την ψήφο του πλειοψηφία των διαδικασιών Sentinel.

Έτσι, για παράδειγμα, αν έχετε 5 διαδικασίες Sentinel, και η απαρτία για έναν δεδομένο κύριο που έχει οριστεί στην τιμή των 2, αυτό συμβαίνει:

  • Εάν δύο Sentinels συμφωνούν ταυτόχρονα για το ότι ο Δάσκαλος είναι απρόσιτος, ένας από τους δύο θα προσπαθήσει να ξεκινήσει μια αποτυχία.
  • Εάν υπάρχουν τουλάχιστον συνολικά τρία φρουρά προσβάσιμα, η αποτυχία θα εγκριθεί και θα ξεκινήσει πραγματικά.

Στην πράξη, αυτό σημαίνει κατά τη διάρκεια των αποτυχιών Ο Sentinel δεν ξεκινά ποτέ μια αποτυχία εάν η πλειοψηφία των διαδικασιών Sentinel δεν είναι σε θέση να μιλήσει (γνωστός και ως No Failover στο διαμέρισμα των μειονοτήτων).

Άλλες επιλογές Sentinel

Οι άλλες επιλογές είναι σχεδόν πάντα στη μορφή:

φρουρός

Και χρησιμοποιούνται για τους ακόλουθους σκοπούς:

  • κάτω από το μνημείο του δευτερολέπτου είναι ο χρόνος σε χιλιοστά του δευτερολέπτου δεν πρέπει να είναι προσβάσιμη (είτε δεν απαντά στα pings μας είτε απαντά με ένα σφάλμα) για ένα sentinel που αρχίζει να πιστεύει ότι είναι κάτω.
  • Το Parallel Syncs ορίζει τον αριθμό των αντιγράφων που μπορούν να αναδιαμορφωθούν για να χρησιμοποιήσουν τον νέο κύριο μετά από μια αποτυχία ταυτόχρονα. Όσο χαμηλότερος είναι ο αριθμός, τόσο περισσότερο χρόνο θα χρειαστεί για να ολοκληρωθεί η διαδικασία αποτυχίας, ωστόσο, αν τα αντίγραφα έχουν διαμορφωθεί ώστε να εξυπηρετούν παλιά δεδομένα, ίσως να μην θέλετε όλα τα αντίγραφα να επανασυνδέονται με τον κύριο ταυτόχρονα. Ενώ η διαδικασία αναπαραγωγής είναι ως επί το πλείστον μη αποκλεισμός για ένα αντίγραφο, υπάρχει μια στιγμή που σταματά να φορτώνει τα χύμα δεδομένα από τον κύριο. Μπορεί να θέλετε να βεβαιωθείτε ότι μόνο ένα αντίγραφο κάθε φορά δεν είναι προσβάσιμο, καθορίζοντας αυτήν την επιλογή στην τιμή του 1.

Πρόσθετες επιλογές περιγράφονται στο υπόλοιπο του παρόντος εγγράφου και τεκμηριώνεται στο παράδειγμα Sentinel.Το αρχείο COND αποστέλλεται με τη διανομή Redis.

Οι παράμετροι διαμόρφωσης μπορούν να τροποποιηθούν κατά το χρόνο εκτέλεσης:

  • Οι παραμέτρους διαμόρφωσης με βάση το κύριο είναι τροποποιημένες χρησιμοποιώντας το Setinel Set .
  • Οι παράμετροι παγκόσμιας διαμόρφωσης τροποποιούνται χρησιμοποιώντας το σύνολο παραμέτρων Sentinel .

Παράδειγμα Ανάπτυξης Sentinel

Τώρα που γνωρίζετε τις βασικές πληροφορίες για το Sentinel, μπορείτε να αναρωτηθείτε πού πρέπει να τοποθετήσετε τις διαδικασίες Sentinel, πόσες διαδικασίες Sentinel χρειάζεστε και ούτω καθεξής. Αυτή η ενότητα δείχνει μερικές παραδείγματος ανάπτυξη.

Χρησιμοποιούμε την τέχνη ASCII για να σας δείξουμε παραδείγματα διαμόρφωσης σε ένα γραφικός Μορφή, αυτό σημαίνει τα διαφορετικά σύμβολα:

+--------------------+ | Αυτός είναι ένας υπολογιστής | | ή VM που αποτυγχάνει | | ανεξάρτητα. Εμείς | | Καλέστε το "κουτί" | +--------------------+ 

Γράφουμε μέσα στα κουτιά τι τρέχουν:

+-------------------+ | Redis Master M1 | | Redis Sentinel S1 | +-------------------+ 

Διαφορετικά κουτιά συνδέονται με γραμμές, για να δείξουν ότι είναι σε θέση να μιλήσουν:

+-------------+ +-------------+ | Sentinel S1 | ---------------- | Sentinel S2 | +-------------+ +-------------+ 

Τα διαμερίσματα δικτύου εμφανίζονται ως διακεκομμένες γραμμές με τη χρήση slashes:

+-------------+ +-------------+ | Sentinel S1 | ------- // ------- | Sentinel S2 | +-------------+ +-------------+ 

  • Οι κύριοι ονομάζονται M1, M2, M3, . ΜΝ.
  • Τα αντίγραφα ονομάζονται R1, R2, R3, . Το RN (R αντιπροσωπεύει πανομοιότυπο·.
  • Οι Sentinels ονομάζονται S1, S2, S3, . Και.
  • Οι πελάτες ονομάζονται C1, C2, C3, . ΚΝΗ.
  • Όταν μια εμφάνιση αλλάζει ρόλο λόγω των ενεργειών του Sentinel, το βάζουμε μέσα σε τετράγω.

Σημειώστε ότι δεν θα δείξουμε ποτέ Ρυθμίσεις όπου χρησιμοποιούνται μόνο δύο Sentinels, Δεδομένου ότι οι Sentinels χρειάζονται πάντα Για να μιλήσετε με την πλειοψηφία Για να ξεκινήσετε μια αποτυχία.

Παράδειγμα 1: Μόνο δύο Sentinels, μην το κάνετε αυτό

+----+ +----+ | M1 | ----------- | R1 | | S1 | | S2 | + ----++ ----+ Διαμόρφωση: απαρτία = 1 

  • Σε αυτή τη ρύθμιση, εάν ο κύριος M1 αποτύχει, το R1 θα προωθηθεί, αφού οι δύο Sentinels μπορούν να καταλήξουν σε συμφωνία σχετικά με την αποτυχία (προφανώς με την απαρτία που έχει οριστεί σε 1) και μπορεί επίσης να επιτρέψει μια αποτυχία επειδή η πλειοψηφία είναι δύο. Έτσι προφανώς θα μπορούσε να λειτουργήσει επιφανειακά, ωστόσο ελέγξτε τα επόμενα σημεία για να δείτε γιατί αυτή η ρύθμιση έχει σπάσει.
  • Εάν το κουτί όπου το M1 τρέχει σταματάει, επίσης το S1 σταματάει να λειτουργεί. Το Sentinel που εκτελείται στο άλλο πλαίσιο S2 δεν θα είναι σε θέση να εξουσιοδοτήσει μια αποτυχία, οπότε το σύστημα δεν θα γίνει διαθέσιμο.

Σημειώστε ότι απαιτείται πλειοψηφία για να παραγγείλετε διαφορετικές αποτυχίες και αργότερα να διαδώσετε την τελευταία διαμόρφωση σε όλους τους Sentinels. Σημειώστε επίσης ότι η δυνατότητα αποτυχίας σε μία μόνο πλευρά της παραπάνω εγκατάστασης, χωρίς καμία συμφωνία, θα ήταν πολύ επικίνδυνη:

+----+ +------+ | M1 | ---- // ----- | [M1] | | S1 | | S2 | +----+ +------+ 

Στην παραπάνω διαμόρφωση δημιουργήσαμε δύο κυρίους (υποθέτοντας ότι το S2 θα μπορούσε να αποκατασταθεί χωρίς άδεια) με απόλυτα συμμετρικό τρόπο. Οι πελάτες μπορούν να γράψουν επ ‘αόριστον και στις δύο πλευρές και δεν υπάρχει τρόπος να καταλάβουμε πότε το διαμέρισμα θεραπεύει ποια διαμόρφωση είναι η σωστή, προκειμένου να αποφευχθεί Μόνιμη κατάσταση διαχωρισμού του εγκεφάλου.

Λοιπόν, παρακαλώ Αναπτύξτε τουλάχιστον τρεις δείκτες σε τρία διαφορετικά κουτιά πάντα.

Παράδειγμα 2: Βασική ρύθμιση με τρία κουτιά

Πρόκειται για μια πολύ απλή ρύθμιση, που έχει το πλεονέκτημα να είναι απλό για πρόσθετη ασφάλεια. Βασίζεται σε τρία κουτιά, κάθε κουτί που εκτελεί τόσο μια διαδικασία Redis όσο και μια διαδικασία Sentinel.

 +----+ | M1 | | S1 | + ----+ | + ----+ | + ----+ | R2 | ----+---- | R3 | | S2 | | S3 | + ----++ ----+ Διαμόρφωση: απαρτία = 2 

Εάν ο κύριος M1 αποτύχει, τα S2 και S3 θα συμφωνήσουν για την αποτυχία και θα είναι σε θέση να επιτρέψουν μια αποτυχία, καθιστώντας τους πελάτες σε θέση να συνεχίσουν.

Σε κάθε εγκατάσταση Sentinel, καθώς ο Redis χρησιμοποιεί ασύγχρονη αναπαραγωγή, υπάρχει πάντα ο κίνδυνος να χάσει κάποιες εγγραφές επειδή μια δεδομένη αναγνωρισμένη εγγραφή μπορεί να μην είναι σε θέση να φτάσει στο αντίγραφο που προωθείται στον Master. Ωστόσο, στην παραπάνω εγκατάσταση υπάρχει υψηλότερος κίνδυνος λόγω της κατανομής των πελατών με έναν παλιό κύριο, όπως στην επόμενη εικόνα:

 +----+ | M1 | | S1 |  

Σε αυτή την περίπτωση ένα διαμέρισμα δικτύου που απομονώθηκε ο παλιός Master M1, οπότε το αντίγραφο R2 προωθείται στον Master. Ωστόσο, οι πελάτες, όπως το C1, που βρίσκονται στο ίδιο διαμέρισμα με τον παλιό κύριο, μπορούν να συνεχίσουν να γράφουν δεδομένα στον παλιό κύριο. Αυτά τα δεδομένα θα χαθούν για πάντα από τότε που το διαμέρισμα θα θεραπευτεί, ο πλοίαρχος θα αναδιαμορφωθεί ως αντίγραφο του νέου πλοιάρχου, απορρίπτοντας το σύνολο δεδομένων του.

Αυτό το πρόβλημα μπορεί να μετριαστεί χρησιμοποιώντας την ακόλουθη δυνατότητα αναπαραγωγής Redis, που επιτρέπει να σταματήσει η αποδοχή που γράφει εάν ένας κύριος ανιχνεύει ότι δεν είναι πλέον σε θέση να μεταφέρει τις εγγραφές του στον καθορισμένο αριθμό αντιγράφων.

min-replicas-to-write 1 min-replicas-max-lag 10 

Με την παραπάνω διαμόρφωση (ανατρέξτε στο redis με αυτοεξυπηρέτηση.Παράδειγμα Conf στο Redis Distribution για περισσότερες πληροφορίες) Μια παρουσία Redis, όταν ενεργεί ως κύριος, θα σταματήσει να δέχεται γράφει αν δεν μπορεί να γράψει σε τουλάχιστον 1 αντίγραφο. Δεδομένου ότι η αναπαραγωγή είναι ασύγχρονη δεν είναι σε θέση να γράψει Στην πραγματικότητα σημαίνει ότι το αντίγραφο είτε αποσυνδέεται είτε δεν μας στέλνει ασύγχρονη αναγνωρίζει για περισσότερο από τον καθορισμένο αριθμό δευτερολέπτων μέγιστης LAG.

Η χρήση αυτής της διαμόρφωσης, ο παλιός κύριος M1 του Redis στο παραπάνω παράδειγμα, θα γίνει μη διαθέσιμη μετά από 10 δευτερόλεπτα. Όταν το διαμέρισμα θεραπεύει, η διαμόρφωση Sentinel θα συγκλίνει στο νέο, ο πελάτης C1 θα μπορεί να φέρει μια έγκυρη διαμόρφωση και θα συνεχίσει με τον νέο κύριο.

Ωστόσο, δεν υπάρχει δωρεάν μεσημεριανό. Με αυτή τη βελτίωση, εάν τα δύο αντίγραφα είναι κάτω, ο πλοίαρχος θα σταματήσει να δέχεται γράφει. Είναι ένα εμπόριο.

Παράδειγμα 3: Sentinel στα πλαίσια πελάτη

Μερικές φορές διαθέτουμε μόνο δύο κουτιά redis, ένα για τον κύριο και ένα για το αντίγραφο. Η διαμόρφωση στο παράδειγμα 2 δεν είναι βιώσιμη σε αυτή την περίπτωση, ώστε να μπορέσουμε να καταφύγουμε στα παρακάτω, όπου τοποθετούνται οι Sentinels όπου οι πελάτες είναι:

 +----+ +----+ | M1 | ----+---- | R1 | | | | | | + ----+ | + ----+ | +------------+-------------+| | | | | | + ----++ ----++ ----+ | C1 | | C2 | | C3 | | S1 | | S2 | | S3 | + ----++ ----++ ----+ Διαμόρφωση: απαρτία = 2 

Σε αυτή τη ρύθμιση, η άποψη Sentinels είναι η ίδια με τους πελάτες: Εάν ένας κύριος είναι προσβάσιμος από την πλειοψηφία των πελατών, είναι εντάξει. C1, C2, C3 Εδώ είναι γενικοί πελάτες, αυτό δεν σημαίνει ότι το C1 προσδιορίζει έναν μόνο πελάτη συνδεδεμένο με Redis. Είναι πιο πιθανό κάτι σαν ένα διακομιστή εφαρμογών, μια εφαρμογή Rails ή κάτι τέτοιο.

Εάν το κουτί όπου τα M1 και S1 λειτουργούν αποτυγχάνουν, η αποτυχία θα συμβεί χωρίς προβλήματα, ωστόσο είναι εύκολο να δούμε ότι διαφορετικά διαμερίσματα δικτύου θα έχουν ως αποτέλεσμα διαφορετικές συμπεριφορές. Για παράδειγμα, το Sentinel δεν θα είναι σε θέση να ρυθμιστεί εάν το δίκτυο μεταξύ των πελατών και των διακομιστών Redis αποσυνδέεται, αφού ο Master Redis και το αντίγραφο θα είναι και τα δύο δεν είναι διαθέσιμα.

Σημειώστε ότι εάν το C3 διαχωρίζεται με το M1 (ελάχιστα δυνατό με το δίκτυο που περιγράφεται παραπάνω, αλλά πιθανότατα δυνατό με διαφορετικές διατάξεις ή λόγω των αποτυχιών στο στρώμα λογισμικού), έχουμε ένα παρόμοιο ζήτημα όπως περιγράφεται στο Παράδειγμα 2, με τη διαφορά ότι εδώ δεν έχουμε κανέναν τρόπο να σπάσουμε τη συμμετρία, αφού υπάρχει μόνο ένα αντίγραφο και ο Δάσκαλος, οπότε ο Δάσκαλος δεν μπορεί να σταματήσει να δέχουμε τα ερωτήματα όταν δεν υπάρχει ποτέ η μάστερ,.

Επομένως, αυτή είναι μια έγκυρη ρύθμιση, αλλά η ρύθμιση στο παράδειγμα 2 έχει πλεονεκτήματα όπως το σύστημα HA του Redis που τρέχει στα ίδια κιβώτια με το ίδιο το Redis που μπορεί να είναι απλούστερο στη διαχείριση και η δυνατότητα να τεθεί ένα όριο στο χρονικό διάστημα που ένας πλοίαρχος στο μειονοτικό διαμέρισμα μπορεί να λάβει γράφει.

Παράδειγμα 4: πλευρά πελατών Sentinel με λιγότερους από τρεις πελάτες

Η ρύθμιση που περιγράφεται στο παράδειγμα 3 δεν μπορεί να χρησιμοποιηθεί εάν υπάρχουν λιγότερα από τρία κουτιά στην πλευρά του πελάτη (για παράδειγμα τρεις διακομιστές ιστού). Σε αυτή την περίπτωση πρέπει να καταφύγουμε σε μια μικτή ρύθμιση όπως τα εξής:

 +----+ +----+ | M1 | ----+---- | R1 | | S1 | | | S2 | + ----+ | + ----+ | +-----+-----+| | | | + ----++ ----+ | C1 | | C2 | | S3 | | S4 | + ----++ ----+ Διαμόρφωση: απαρτία = 3 

Αυτό είναι παρόμοιο με τη ρύθμιση στο Παράδειγμα 3, αλλά εδώ τρέχουμε τέσσερα Sentinels στα τέσσερα κουτιά που διαθέτουμε. Εάν ο κύριος M1 δεν είναι διαθέσιμος, τα άλλα τρία Sentinels θα εκτελέσουν το Failover.

Θεωρητικά, αυτή η ρύθμιση λειτουργεί αφαιρώντας το κουτί όπου εκτελούνται τα C2 και S4 και ορίζοντας την απαρτία σε 2. Ωστόσο, είναι απίθανο να θέλουμε το HA στην πλευρά Redis χωρίς να έχει υψηλή διαθεσιμότητα στο επίπεδο εφαρμογής μας.

Sentinel, Docker, Nat και πιθανά θέματα

Το Docker χρησιμοποιεί μια τεχνική που ονομάζεται χαρτογράφηση λιμένων: προγράμματα που εκτελούνται μέσα σε δοχεία Docker μπορεί να εκτίθενται με διαφορετική θύρα σε σύγκριση με αυτό που το πρόγραμμα πιστεύει ότι χρησιμοποιεί. Αυτό είναι χρήσιμο για να εκτελέσετε πολλαπλά δοχεία χρησιμοποιώντας τις ίδιες θύρες, ταυτόχρονα, στον ίδιο διακομιστή.

Το Docker δεν είναι το μόνο σύστημα λογισμικού όπου συμβαίνει αυτό, υπάρχουν άλλες ρυθμίσεις μετάφρασης διευθύνσεων δικτύου όπου οι θύρες μπορούν να επαναληφθούν, και μερικές φορές όχι θύρες αλλά και διευθύνσεις IP.

Η αποκατάσταση των θυρών και των διευθύνσεων δημιουργεί προβλήματα με τον Sentinel με δύο τρόπους:

  1. Το Sentinel Auto-Discovery άλλων Sentinels δεν λειτουργεί πλέον, αφού βασίζεται Γειά σου μηνύματα όπου κάθε Sentinel ανακοινώνει σε ποια λιμάνια και διεύθυνση IP ακούνε για σύνδεση. Ωστόσο, οι Sentinels δεν έχουν κανέναν τρόπο να καταλάβουν ότι μια διεύθυνση ή μια θύρα έχει επαναληφθεί, οπότε ανακοινώνει μια πληροφορία που δεν είναι σωστή για τη σύνδεση άλλων Sentinels.
  2. Τα αντίγραφα παρατίθενται στην έξοδο πληροφοριών ενός κύριου Redis με παρόμοιο τρόπο: η διεύθυνση ανιχνεύεται από τον κύριο έλεγχο του απομακρυσμένου ομότιμου συνδέσμου TCP, ενώ η θύρα διαφημίζεται από το ίδιο το αντίγραφο κατά τη διάρκεια της χειραψίας, ωστόσο η θύρα μπορεί να είναι λάθος για τον ίδιο λόγο με την εκτέλεση στο σημείο 1.

Δεδομένου ότι οι Sentinels Auto Detect Replicas χρησιμοποιώντας πληροφορίες για την έξοδο των πληροφοριών Masters, τα ανιχνευόμενα αντίγραφα δεν θα είναι προσβάσιμα και ο Sentinel δεν θα μπορέσει ποτέ να αποκαταστήσει τον κύριο, αφού δεν υπάρχουν καλά αντίγραφα από την άποψη του συστήματος, οπότε δεν υπάρχει τρόπος να παρακολουθείται με το Sentinel ένα σύνολο μεταπτυχιακών και αντιγράφων που αναπτύσσονται με το Docker,, Αν δεν δώσετε εντολή στο Docker να χαρτογραφήσει τη θύρα 1: 1.

Για το πρώτο πρόβλημα, σε περίπτωση που θέλετε να εκτελέσετε ένα σύνολο περιπτώσεων Sentinel χρησιμοποιώντας το Docker με θύρες προωθημένων (ή οποιαδήποτε άλλη ρύθμιση NAT όπου οι θύρες έχουν επαναληφθεί), μπορείτε να χρησιμοποιήσετε τις ακόλουθες δύο οδηγίες διαμόρφωσης Sentinel για να αναγκάσετε τον Sentinel να ανακοινώσει ένα συγκεκριμένο σύνολο IP και θύρας:

Το Sentinel ανακοίνωσε-IP Sentinel ανακοινώνει το λιμάνι

Σημειώστε ότι ο Docker έχει τη δυνατότητα να τρέξει Λειτουργία δικτύωσης υποδοχής (Ελέγξτε την επιλογή -net = host για περισσότερες πληροφορίες). Αυτό δεν πρέπει να δημιουργεί προβλήματα, αφού οι θύρες δεν έχουν μεταφερθεί σε αυτή τη ρύθμιση.

Διευθύνσεις IP και ονόματα DNS

Οι παλαιότερες εκδόσεις του Sentinel δεν υποστήριζαν ονόματα κεντρικών υπολογιστών και απαιτούνται διευθύνσεις IP που θα καθοριστούν παντού. Ξεκινώντας με την έκδοση 6.2, το Sentinel έχει προαιρετικός Υποστήριξη για ονόματα κεντρικών υπολογιστών.

Αυτή η δυνατότητα είναι απενεργοποιημένη από προεπιλογή. Εάν πρόκειται να ενεργοποιήσετε την υποστήριξη DNS/HostNames, παρακαλώ σημειώστε:

  1. Η διαμόρφωση ανάλυσης ονόματος στους κόμβους Redis και Sentinel πρέπει να είναι αξιόπιστη και να είναι σε θέση να επιλύσει τις διευθύνσεις γρήγορα. Οι απροσδόκητες καθυστερήσεις στην επίλυση διευθύνσεων μπορεί να έχουν αρνητικό αντίκτυπο στο Sentinel.
  2. Θα πρέπει να χρησιμοποιείτε ονόματα hostnames παντού και να αποφύγετε την ανάμειξη ονόματα κεντρικού υπολογιστή και διευθύνσεων IP. Για να το κάνετε αυτό, χρησιμοποιήστε το Replica-Announch-IP και το Sentinel Unounce-IP για όλες τις περιπτώσεις Redis και Sentinel, αντίστοιχα.

Η ενεργοποίηση της παγκόσμιας διαμόρφωσης Resolve-HostNames επιτρέπει στο Sentinel να δεχτεί ονόματα κεντρικών υπολογιστών:

  • Ως μέρος μιας εντολής Sentinel Monitor
  • Ως διεύθυνση ρεπλίκα, εάν το αντίγραφο χρησιμοποιεί μια τιμή ονόματος κεντρικού υπολογιστή για το Replica-Announch-IP

Το Sentinel θα δεχτεί τα ονόματα των κεντρικών υπολογιστών ως έγκυρες εισόδους και θα τα επιλύσει, αλλά θα εξακολουθεί να αναφέρεται στις διευθύνσεις IP όταν ανακοινώνει μια παρουσία, ενημέρωση αρχείων ρυθμίσεων κ.λπ.

Η ενεργοποίηση των παγκόσμιων διαμορφώσεων ανακοινώσεων-hostnames καθιστά τα ονόματα των κεντρικών υπολογιστών Sentinel. Αυτό επηρεάζει τις απαντήσεις σε πελάτες, τιμές γραμμένες σε αρχεία ρυθμίσεων, την εντολή Replicaof που εκδίδεται σε αντίγραφα κ.λπ.

Αυτή η συμπεριφορά μπορεί να μην είναι συμβατή με όλους τους πελάτες Sentinel, που μπορεί να περιμένουν ρητά μια διεύθυνση IP.

Η χρήση ονομάτων κεντρικών υπολογιστών μπορεί να είναι χρήσιμη όταν οι πελάτες χρησιμοποιούν TLS για να συνδεθούν σε περιπτώσεις και να απαιτούν ένα όνομα και όχι μια διεύθυνση IP για την εκτέλεση πιστοποιητικού αντιστοίχισης ASN.

Ένα γρήγορο σεμινάριο

Στα επόμενα τμήματα αυτού του εγγράφου, όλες οι λεπτομέρειες Sentinel API, Η διαμόρφωση και η σημασιολογία θα καλύπτονται σταδιακά. Ωστόσο, για άτομα που θέλουν να παίξουν με το σύστημα ASAP, αυτή η ενότητα είναι ένα σεμινάριο που δείχνει τον τρόπο διαμόρφωσης και αλληλεπίδρασης με 3 περιπτώσεις Sentinel.

Εδώ υποθέτουμε ότι οι περιπτώσεις εκτελούνται στη θύρα 5000, 5001, 5002. Υποθέτουμε επίσης ότι έχετε έναν κύριο Redis στο Port 6379 με αντίγραφο που τρέχει στη θύρα 6380. Θα χρησιμοποιήσουμε τη διεύθυνση IPv4 loopback 127.0.0.1 παντού κατά τη διάρκεια του σεμινάριο, υποθέτοντας ότι εκτελείτε την προσομοίωση στον προσωπικό σας υπολογιστή.

Τα τρία αρχεία διαμόρφωσης Sentinel πρέπει να μοιάζουν με τα εξής:

Port 5000 Sentinel Monmaster 127.0.0.1 6379 2 Sentinel Down-After-Milliseconds Mymaster 5000 Sentinel Failover-Timeout Mymaster 60000 Sentinel Parallel-Syncs Mymaster 1 

Τα άλλα δύο αρχεία διαμόρφωσης θα είναι πανομοιότυπα αλλά χρησιμοποιώντας 5001 και 5002 ως αριθμοί θύρας.

Μερικά πράγματα που πρέπει να σημειωθούν σχετικά με την παραπάνω διαμόρφωση:

  • Το κύριο σετ ονομάζεται Mymaster . Προσδιορίζει τον κύριο και τα αντίγραφά του. Από το καθένα κύριο σετ Έχει διαφορετικό όνομα, ο Sentinel μπορεί να παρακολουθεί ταυτόχρονα διαφορετικά σύνολα κυρίων και αντιγράφων ταυτόχρονα.
  • Η απαρτία ορίστηκε στην τιμή των 2 (τελευταίο επιχείρημα της οδηγίας διαμόρφωσης παρακολούθησης Sentinel).
  • Η τιμή down-μετά το χιλιοστό του δευτερολέπτου είναι 5000 χιλιοστά του δευτερολέπτου, δηλαδή 5 δευτερόλεπτα, έτσι ώστε οι πλοίαρχοι να ανιχνευθούν ως αποτυχία μόλις δεν λάβουμε καμία απάντηση από τα pings μας μέσα σε αυτό το χρονικό διάστημα.

Μόλις ξεκινήσετε τα τρία Sentinels, θα δείτε μερικά μηνύματα που καταγράφουν, όπως:

+Παρακολούθηση Master Mymaster 127.0.0.1 6379 Απαρτία 2 

Αυτό είναι ένα συμβάν Sentinel και μπορείτε να λάβετε αυτό το είδος συμβάντων μέσω pub/sub εάν εγγραφείτε στο όνομα του συμβάντος όπως καθορίζεται αργότερα Pub/sub μηνύματα Ενότητα.

Ο Sentinel δημιουργεί και καταγράφει διαφορετικά συμβάντα κατά την ανίχνευση και την αποτυχία αποτυχίας.

Ζητώντας από τον Sentinel για την κατάσταση ενός πλοιάρχου

Το πιο προφανές πράγμα που πρέπει να κάνετε με τον Sentinel για να ξεκινήσετε, είναι να ελέγξετε αν ο κύριος που παρακολουθεί κάνει καλά:

$ redis -cli -p 5000 127.0.0.1: 5000> Sentinel Master Mymaster 1) "Όνομα" 2) "Mymaster" 3) "IP" 4) "127.0.0.1 "5)" θύρα "6)" 6379 "7)" Runid "8)" 953Ae6a589449C13DDEFAEE3538D356D287F509B "9)" 10) "Master" 11). -ping-reply "18)" 735 "19)" Last-ping-reply "20)" 735 "21)" Down-after-milliseconds "22)" 5000 "23)" info-refresh "24)" 21) ES "32)" 1 "33)" Num-other-Sentinels "34)" 2 "35)" Quorum "36)" 2 "37)" Failover-timeout "38)" 60000 "39)" παράλληλες συγχρονισμένες "40)" 1 " 

Όπως μπορείτε να δείτε, εκτυπώνει μια σειρά πληροφοριών για τον κύριο. Υπάρχουν μερικοί που παρουσιάζουν ιδιαίτερο ενδιαφέρον για εμάς:

  1. Το Num-other-Sentinels είναι 2, οπότε γνωρίζουμε ότι ο Sentinel ανίχνευσε ήδη δύο ακόμα Sentinels για αυτόν τον κύριο. Εάν ελέγξετε τα αρχεία καταγραφής, θα δείτε τα συμβάντα Sentinel που παράγονται.
  2. Οι σημαίες είναι απλά κύριοι . Εάν ο πλοίαρχος ήταν κάτω, μπορούσαμε να περιμένουμε να δούμε και την σημαία του o_down εδώ.
  3. Οι αριθμητικοί σκλάβοι έχουν ρυθμιστεί σωστά σε 1, οπότε ο Sentinel ανίχνευσε επίσης ότι υπάρχει ένα συνημμένο αντίγραφο στον κύριό μας.

Για να διερευνήσετε περισσότερα σχετικά με αυτό το παράδειγμα, ίσως θελήσετε να δοκιμάσετε τις ακόλουθες δύο εντολές:

Sentinel Replicas Mymaster Sentinel Sentinels Mymaster 

Το πρώτο θα παρέχει παρόμοιες πληροφορίες σχετικά με τα αντίγραφα που συνδέονται με τον πλοίαρχο και το δεύτερο για τα άλλα Sentinels.

Λήψη της διεύθυνσης του τρέχοντος πλοιάρχου

Όπως ήδη καθορίσαμε, ο Sentinel ενεργεί επίσης ως πάροχος διαμόρφωσης για πελάτες που θέλουν να συνδεθούν σε ένα σύνολο master και replicas. Λόγω πιθανών ανακατασκευών ή ανασυγκρότησης, οι πελάτες δεν έχουν ιδέα για το ποιος είναι ο σημερινός ενεργός κύριος για ένα δεδομένο σύνολο περιπτώσεων, οπότε ο Sentinel εξάγει ένα API για να θέσει αυτή την ερώτηση:

127.0.0.1: 5000> Sentinel get-master-addr-by-name mymaster 1) "127.0.0.1 "2)" 6379 " 

Δοκιμή του Failover

Σε αυτό το σημείο η ανάπτυξη του παιχνιδιού Sentinel είναι έτοιμη να δοκιμαστεί. Μπορούμε απλώς να σκοτώσουμε τον κύριό μας και να ελέγξουμε αν αλλάξει η διαμόρφωση. Για να το κάνουμε αυτό μπορούμε απλά να κάνουμε:

Redis -CLI -P 6379 Debug Sleep 30 

Αυτή η εντολή θα κάνει τον κύριο μας να μην είναι πλέον προσβάσιμο, να κοιμάται για 30 δευτερόλεπτα. Βασικά προσομοιώνει έναν κύριο που κρέμεται για κάποιο λόγο.

Εάν ελέγξετε τα αρχεία καταγραφής Sentinel, θα πρέπει να μπορείτε να δείτε πολλή δράση:

  1. Κάθε Sentinel ανιχνεύει ότι ο πλοίαρχος είναι κάτω με ένα συμβάν +sdown.
  2. Αυτή η εκδήλωση κλιμακώνεται αργότερα στο +Odown, πράγμα που σημαίνει ότι πολλαπλά Sentinels συμφωνούν για το γεγονός ότι ο πλοίαρχος δεν είναι προσβάσιμος.
  3. Οι Sentinels ψηφίζουν ένα Sentinel που θα ξεκινήσει την πρώτη απόπειρα αποτυχίας.
  4. Η αποτυχία συμβαίνει.

Εάν ρωτήσετε ξανά ποια είναι η τρέχουσα διεύθυνση Mymaster, τελικά θα πρέπει να λάβουμε διαφορετική απάντηση αυτή τη φορά:

127.0.0.1: 5000> Sentinel get-master-addr-by-name mymaster 1) "127.0.0.1 "2)" 6380 " 

Μέχρι εδώ καλά. Σε αυτό το σημείο μπορείτε να μεταβείτε για να δημιουργήσετε την ανάπτυξη του Sentinel ή μπορείτε να διαβάσετε περισσότερα για να κατανοήσετε όλες τις εντολές και τα εσωτερικά Sentinel.

Sentinel API

Το Sentinel παρέχει ένα API προκειμένου να επιθεωρήσει την κατάστασή του, να ελέγξει την υγεία των παρακολούθησης Masters και Replicas, να εγγραφεί για να λάβει συγκεκριμένες ειδοποιήσεις και να αλλάξει τη διαμόρφωση Sentinel κατά το χρόνο εκτέλεσης.

Από προεπιλογή εκτέλεσης Sentinel χρησιμοποιώντας τη θύρα TCP 26379 (σημειώστε ότι το 6379 είναι η κανονική θύρα Redis). Οι Sentinels δέχονται εντολές χρησιμοποιώντας το πρωτόκολλο Redis, ώστε να μπορείτε να χρησιμοποιήσετε το Redis-CLI ή οποιοδήποτε άλλο μη τροποποιημένο πελάτη Redis για να μιλήσετε με το Sentinel.

Είναι δυνατόν απευθείας να ερωτηθείς ένα Sentinel για να ελέγξουμε ποια είναι η κατάσταση των παρακολούθησης των περιπτώσεων Redis από την άποψή του, για να δούμε τι άλλοι Sentinels γνωρίζουν και ούτω καθεξής. Εναλλακτικά, χρησιμοποιώντας το Pub/Sub, είναι δυνατόν να λάβετε στυλ ώθησης Ειδοποιήσεις από τους Sentinels, κάθε φορά που συμβαίνει κάποιο γεγονός, όπως μια αποτυχία, ή μια εμφάνιση που εισέρχεται σε μια κατάσταση σφάλματος και ούτω καθεξής.

Εντολές Sentinel

Η εντολή Sentinel είναι το κύριο API για το Sentinel. Ακολουθεί ο κατάλογος των υποεπιτροπών της (σημειώνεται ελάχιστη έκδοση για όπου ισχύει):

  • Sentinel Config Get (> = 6.2) Αποκτήστε την τρέχουσα τιμή μιας παγκόσμιας παραμέτρου διαμόρφωσης Sentinel. Το καθορισμένο όνομα μπορεί να είναι μια μπαλαντέρ, παρόμοια με την εντολή redis config get.
  • SETINEL SET (> = 6.2) Ρυθμίστε την τιμή μιας παγκόσμιας παραμέτρου διαμόρφωσης Sentinel.
  • Sentinel Ckquorum Ελέγξτε εάν η τρέχουσα διαμόρφωση Sentinel είναι σε θέση να φτάσει στην απαρτία που απαιτείται για την αποτυχία ενός πλοιάρχου και η πλειοψηφία απαιτείται για να επιτρέψει την αποτυχία. Αυτή η εντολή θα πρέπει να χρησιμοποιείται στα συστήματα παρακολούθησης για να ελέγξει εάν η ανάπτυξη του Sentinel είναι εντάξει.
  • Φουσκωτό Force Sentinel για να ξαναγράψει τη διαμόρφωσή του στο δίσκο, συμπεριλαμβανομένης της τρέχουσας πολιτείας Sentinel. Κανονικά ο Sentinel ξαναγράφει τη διαμόρφωση κάθε φορά που κάτι αλλάζει στην κατάσταση του (στο πλαίσιο του υποσυνόλου του κράτους που επιμένει στο δίσκο κατά την επανεκκίνηση). Ωστόσο, μερικές φορές είναι πιθανό το αρχείο διαμόρφωσης να χαθεί λόγω σφαλμάτων λειτουργίας, αποτυχίες δίσκου, σενάρια αναβάθμισης συσκευασίας ή διαχειριστές διαμόρφωσης. Σε αυτές τις περιπτώσεις ένας τρόπος για να αναγκάσετε τον Sentinel να ξαναγράψει το αρχείο διαμόρφωσης είναι χρήσιμος. Αυτή η εντολή λειτουργεί ακόμη και αν το προηγούμενο αρχείο διαμόρφωσης λείπει εντελώς.
  • Το Sentinel Failover αναδεικνύει μια αποτυχία σαν να μην ήταν προσβάσιμος ο πλοίαρχος και χωρίς να ζητήσει συμφωνία σε άλλους Sentinels (ωστόσο μια νέα έκδοση της διαμόρφωσης θα δημοσιευθεί έτσι ώστε οι άλλοι Sentinels να ενημερώσουν τις διαμορφώσεις τους).
  • Sentinel get-master-addr-by-name Επιστροφή του IP και του αριθμού θύρας του πλοιάρχου με αυτό το όνομα. Εάν μια αποτυχία βρίσκεται σε εξέλιξη ή τερματιστεί με επιτυχία για αυτόν τον κύριο, επιστρέφει τη διεύθυνση και το λιμάνι του προωθημένου αντιγράφου.
  • Sentinel Info-Cache (> = 3.2) Επιστροφή αποθηκευμένων πληροφοριών εξόδου από Masters and Replicas.
  • Sentinel Is-Master-Down-by-Addr Ελέγξτε εάν ο κύριος που καθορίζεται από τη θύρα IP: είναι κάτω από την άποψη του τρέχοντος Sentinel. Αυτή η εντολή είναι κυρίως για εσωτερική χρήση.
  • Ο Sentinel Master δείχνει την κατάσταση και τις πληροφορίες του συγκεκριμένου πλοιάρχου.
  • Δασκάλων Εμφάνιση μιας λίστας παρακολούθησης των πλοιάρχων και της πολιτείας τους.
  • Οθόνη Sentinel Ξεκινήστε την παρακολούθηση του Sentinel. Αναφέρομαι στο Αναδιαμόρφωση του Sentinel κατά το χρόνο εκτέλεσης Τμήμα για περισσότερες πληροφορίες.
  • Sentinel Myid (> = 6.2) Επιστρέψτε το αναγνωριστικό της παρουσίας Sentinel.
  • Sentinel εκκρεμείς-scripts Αυτή η εντολή επιστρέφει πληροφορίες σχετικά με εκκρεμείς σενάρια.
  • Κατάργηση του Sentinel Σταματήστε την παρακολούθηση του Sentinel. Αναφέρομαι στο Αναδιαμόρφωση του Sentinel κατά το χρόνο εκτέλεσης Τμήμα για περισσότερες πληροφορίες.
  • Αντίγραφα Sentinel (> = 5.0) Εμφάνιση λίστας αντιγράφων για αυτόν τον κύριο και το κράτος τους.
  • Ο Sentinel Sentinels δείχνει μια λίστα με τις περιπτώσεις Sentinel για αυτόν τον πλοίαρχο και το κράτος τους.
  • Σετ Sentinel Ορίστε τη διαμόρφωση παρακολούθησης του Sentinel. Αναφέρομαι στο Αναδιαμόρφωση του Sentinel κατά το χρόνο εκτέλεσης Τμήμα για περισσότερες πληροφορίες.
  • Sentinel Simulate-Failure (Crash-After-Ecection | Crash-After-Promotion | Βοήθεια) (> = 3.2) Αυτή η εντολή προσομοιώνει διαφορετικά σενάρια σύγκρουσης Sentinel.
  • Sentinel Reset Αυτή η εντολή θα επαναφέρει όλους τους κυρίους με το αντίστοιχο όνομα. Το επιχείρημα του σχεδίου είναι ένα μοτίβο στυλ σφαιρίδας. Η διαδικασία επαναφοράς καθαρίζει οποιαδήποτε προηγούμενη κατάσταση σε έναν πλοίαρχο (συμπεριλαμβανομένου ενός ανακατασκευή που βρίσκεται σε εξέλιξη) και αφαιρεί κάθε αντίγραφο και Sentinel που έχουν ήδη ανακαλύψει και σχετίζονται με τον κύριο.

Για τους σκοπούς διαχείρισης και διαχείρισης σύνδεσης, ο Sentinel υποστηρίζει το ακόλουθο υποσύνολο των εντολών του Redis:

  • ACL (> = 6.2) Αυτή η εντολή διαχειρίζεται τη λίστα ελέγχου πρόσβασης Sentinel. Για περισσότερες πληροφορίες, ανατρέξτε στη σελίδα τεκμηρίωσης ACL και στην Έλεγχος ταυτότητας λίστας ελέγχου πρόσβασης Sentinel.
  • Εξάσκηση (> = 5.0.1) Επαληθεύστε μια σύνδεση πελάτη. Για περισσότερες πληροφορίες ανατρέξτε στην εντολή auth και το Ρύθμιση παρακολούθησης Sentinel με έλεγχο ταυτότητας Ενότητα.
  • ΠΕΛΑΤΗΣ Αυτή η εντολή διαχειρίζεται συνδέσεις πελατών. Για περισσότερες πληροφορίες ανατρέξτε στις σελίδες του υποεπικοινωνιών.
  • ΕΝΤΟΛΗ (> = 6.2) Αυτή η εντολή επιστρέφει πληροφορίες σχετικά με τις εντολές. Για περισσότερες πληροφορίες, ανατρέξτε στην εντολή εντολών και τις διάφορες υποεπιλογές της.
  • ΓΕΙΑ (> = 6.0) Μεταβείτε το πρωτόκολλο της σύνδεσης. Για περισσότερες πληροφορίες ανατρέξτε στην εντολή Hello.
  • Πληροφορίες Πληροφορίες επιστροφής και στατιστικά στοιχεία σχετικά με τον διακομιστή Sentinel. Για περισσότερες πληροφορίες, ανατρέξτε στην εντολή πληροφοριών.
  • Πινγκόν Αυτή η εντολή απλά επιστρέφει το Pong.
  • ΡΟΛΟΣ Αυτή η εντολή επιστρέφει τη συμβολοσειρά "Sentinel" και μια λίστα με παρακολούθησης Masters. Για περισσότερες πληροφορίες ανατρέξτε στην εντολή ρόλου.
  • ΤΕΡΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΑΣ Κλείστε την παρουσία του Sentinel.

Τέλος, ο Sentinel υποστηρίζει επίσης τις εντολές εγγραφής, διαγραφής, psubscribe και punsubscribe. Αναφέρομαι στο Pub/sub μηνύματα Τμήμα για περισσότερες λεπτομέρειες.

Αναδιαμόρφωση του Sentinel κατά το χρόνο εκτέλεσης

Ξεκινώντας με την έκδοση Redis 2.8.4, ο Sentinel παρέχει ένα API για να προσθέσει, να αφαιρέσει ή να αλλάξει τη διαμόρφωση ενός δεδομένου πλοιάρχου. Σημειώστε ότι εάν έχετε πολλαπλούς δείκτες, θα πρέπει να εφαρμόσετε τις αλλαγές σε όλους στις περιπτώσεις σας για τον Redis Sentinel να λειτουργήσει σωστά. Αυτό σημαίνει ότι η αλλαγή της διαμόρφωσης ενός ενιαίου Sentinel δεν μεταδίδει αυτόματα τις αλλαγές στα άλλα Sentinels στο δίκτυο.

Το παρακάτω είναι ένας κατάλογος των υποεπιλογών Sentinel που χρησιμοποιούνται για την ενημέρωση της διαμόρφωσης μιας παρουσίας Sentinel.

  • Sentinel Monitor Αυτή η εντολή λέει στο Sentinel να ξεκινήσει την παρακολούθηση ενός νέου πλοιάρχου με το καθορισμένο όνομα, IP, θύρα και απαρτία. Είναι πανομοιότυπο με την οδηγία διαμόρφωσης παρακολούθησης Sentinel στο Sentinel.αρχείο διαμόρφωσης conf, με τη διαφορά που δεν μπορείτε να χρησιμοποιήσετε ένα όνομα κεντρικού υπολογιστή ως IP, αλλά πρέπει να παρέχετε μια διεύθυνση IPv4 ή IPv6.
  • Το Sentinel Remove χρησιμοποιείται για να αφαιρέσει τον καθορισμένο κύριο: ο πλοίαρχος δεν θα παρακολουθείται πλέον και θα απομακρυνθεί πλήρως από την εσωτερική κατάσταση του Sentinel, οπότε δεν θα αναφέρεται πλέον από τους Masters Sentinel και ούτω καθεξής.
  • Setinel set [ . ] Η εντολή SET είναι πολύ παρόμοια με την εντολή ρύθμισης ρυθμίσεων του redis και χρησιμοποιείται για να αλλάξετε τις παραμέτρους διαμόρφωσης ενός συγκεκριμένου κύριου. Μπορούν να καθοριστούν πολλαπλά ζεύγη επιλογής / αξίας (ή καθόλου). Όλες οι παραμέτρους διαμόρφωσης που μπορούν να ρυθμιστούν μέσω του Sentinel.Το Conf είναι επίσης διαμορφώσιμο χρησιμοποιώντας την εντολή SET.

Το παρακάτω είναι ένα παράδειγμα της εντολής SETINEL SET για να τροποποιήσετε τη διαμόρφωση Down-After-Milliseconds ενός κύριου που ονομάζεται αντικείμενα-μνήμη:

Sentinel Set Objects-Cache-Master Down-After-Milliseconds 1000 

Όπως έχει ήδη αναφερθεί, το σύνολο Sentinel μπορεί να χρησιμοποιηθεί για να ορίσετε όλες τις παραμέτρους διαμόρφωσης που είναι ρυθμιζόμενες στο αρχείο διαμόρφωσης εκκίνησης. Επιπλέον, είναι δυνατόν να αλλάξετε μόνο τη διαμόρφωση της κύριας απαρτίας χωρίς να αφαιρέσετε και να προσθέσετε ξανά τον πλοίαρχο με την κατάργηση του Sentinel, ακολουθούμενη από τον Sentinel Monitor, αλλά απλά χρησιμοποιώντας:

Sentinel Set Objects-Cache-Master Quorum 5 

Σημειώστε ότι δεν υπάρχει ισοδύναμη εντολή GET, αφού ο Sentinel Master παρέχει όλες τις παραμέτρους διαμόρφωσης σε μια απλή μορφή αναλύσεων (ως συστοιχία ζεύγους πεδίου/τιμών).

Ξεκινώντας με την έκδοση Redis 6.2, το Sentinel επιτρέπει επίσης τη λήψη και τη ρύθμιση παγκόσμιων παραμέτρων διαμόρφωσης που υποστηρίχθηκαν μόνο στο αρχείο διαμόρφωσης πριν από αυτό.

  • Το Sentinel Config Get Get the τρέχουσα τιμή μιας παγκόσμιας παραμέτρου διαμόρφωσης Sentinel. Το καθορισμένο όνομα μπορεί να είναι μια μπαλαντέρ, παρόμοια με την εντολή redis config get.
  • Sentinel Config Ρύθμιση Ρυθμίστε την τιμή μιας παγκόσμιας παραμέτρου διαμόρφωσης Sentinel.

Οι παγκόσμιες παράμετροι που μπορούν να χειριστούν περιλαμβάνουν:

  • επίλυση-hostnames, ανακοινώσεις-hostnames . Βλέπω Διευθύνσεις IP και ονόματα DNS.
  • ανακοινώστε-IP, ανακοινώστε το λιμάνι . Βλέπω Sentinel, Docker, Nat και πιθανά θέματα.
  • Sentinel-User, Sentinel-Pass . Βλέπω Ρύθμιση παρακολούθησης Sentinel με έλεγχο ταυτότητας.

Προσθήκη ή αφαίρεση των Sentinels

Η προσθήκη ενός νέου Sentinel στην ανάπτυξή σας είναι μια απλή διαδικασία λόγω του μηχανισμού αυτόματης αναστολής που εφαρμόζεται από τον Sentinel. Το μόνο που χρειάζεται να κάνετε είναι να ξεκινήσετε το νέο Sentinel που έχει διαμορφωθεί για να παρακολουθεί τον τρέχοντα ενεργό κύριο. Μέσα σε 10 δευτερόλεπτα ο Sentinel θα αποκτήσει τον κατάλογο άλλων Sentinels και το σύνολο των αντιγράφων που συνδέονται με τον κύριο.

Εάν πρέπει να προσθέσετε ταυτόχρονα πολλαπλά Sentinel. Αυτό είναι χρήσιμο για να εξακολουθεί να εγγυάται ότι η πλειοψηφία μπορεί να επιτευχθεί μόνο σε μια πλευρά ενός διαμερίσματος, στις πιθανότητες αποτυχίας θα πρέπει να συμβεί στη διαδικασία προσθήκης νέων φρουρών.

Αυτό μπορεί εύκολα να επιτευχθεί προσθέτοντας κάθε νέο Sentinel με καθυστέρηση 30 δευτερολέπτων και κατά τη διάρκεια της απουσίας διαμερίσματος δικτύου.

Στο τέλος της διαδικασίας είναι δυνατόν να χρησιμοποιήσετε το MasterName MasterName της εντολής Sentinel για να ελέγξετε αν όλα τα Sentinels συμφωνούν για τον συνολικό αριθμό των Sentinels που παρακολουθεί τον κύριο.

Η αφαίρεση ενός Sentinel είναι λίγο πιο περίπλοκη: Οι Sentinels ποτέ δεν ξεχνούν ήδη Sentinels, Ακόμη και αν δεν είναι προσβάσιμα για μεγάλο χρονικό διάστημα, αφού δεν θέλουμε να αλλάξουμε δυναμικά την πλειοψηφία που απαιτείται για να επιτρέψει μια αποτυχία και τη δημιουργία ενός νέου αριθμού διαμόρφωσης. Έτσι, για να αφαιρέσετε ένα Sentinel, τα παρακάτω βήματα θα πρέπει να εκτελούνται ελλείψει διαμερισμάτων δικτύου:

  1. Σταματήστε τη διαδικασία Sentinel του Sentinel που θέλετε να αφαιρέσετε.
  2. Στείλτε μια εντολή επαναφοράς Sentinel * σε όλες τις άλλες περιπτώσεις Sentinel (αντί * μπορείτε να χρησιμοποιήσετε το ακριβές κύριο όνομα εάν θέλετε να επαναφέρετε μόνο έναν κύριο). Το ένα μετά το άλλο, περιμένοντας τουλάχιστον 30 δευτερόλεπτα μεταξύ των περιπτώσεων.
  3. Ελέγξτε ότι όλα τα Sentinels συμφωνούν για τον αριθμό των Sentinels που είναι ενεργοί, επιθεωρώντας την έξοδο του Mastername Sentinel Master για κάθε Sentinel.

Αφαίρεση του παλιού πλοιάρχου ή των απρόσιτων αντίγραφων

Οι Sentinels δεν ξεχνούν ποτέ τα αντίγραφα ενός συγκεκριμένου πλοιάρχου, ακόμη και όταν είναι απρόσιτα για μεγάλο χρονικό διάστημα. Αυτό είναι χρήσιμο, επειδή οι Sentinels θα πρέπει να είναι σε θέση να αναδιαμορφώσουν σωστά ένα αντίγραφο επιστροφής μετά από ένα διαμέρισμα δικτύου ή ένα συμβάν αποτυχίας.

Επιπλέον, μετά από μια αποτυχία, ο αποτυχημένος πάνω από τον πλοίαρχο προστίθεται ουσιαστικά ως αντίγραφο του νέου πλοιάρχου, με αυτόν τον τρόπο θα αναδιαμορφωθεί για να αναπαραχθεί με τον νέο πλοίαρχο μόλις θα είναι διαθέσιμο ξανά.

Ωστόσο, μερικές φορές θέλετε να αφαιρέσετε ένα αντίγραφο (που μπορεί να είναι ο παλιός κύριος) για πάντα από τη λίστα των αντιγράφων που παρακολουθούνται από τους Sentinels.

Για να γίνει αυτό, πρέπει να στείλετε μια εντολή Sentinel Reset MasterName σε όλα τα Sentinels: θα ανανεώσουν τη λίστα των αντιγράφων εντός των επόμενων 10 δευτερολέπτων, προσθέτοντας μόνο αυτά που αναφέρονται ως σωστά αντιγραφή από την τρέχουσα έξοδο πληροφοριών.

Pub/sub μηνύματα

Ένας πελάτης μπορεί να χρησιμοποιήσει ένα Sentinel ως ένα συμβατό με Redis Pub/Sub Server (αλλά δεν μπορείτε να χρησιμοποιήσετε τη δημοσίευση) για να εγγραφείτε ή PSUBScribe σε κανάλια και να ενημερωθείτε για συγκεκριμένα γεγονότα.

Το όνομα του καναλιού είναι το ίδιο με το όνομα της εκδήλωσης. Για παράδειγμα, το κανάλι που ονομάζεται +sdown θα λάβει όλες τις ειδοποιήσεις που σχετίζονται με περιπτώσεις που εισέρχονται σε ένα sdown (sdown σημαίνει ότι η εμφάνιση δεν είναι πλέον προσβάσιμη από την άποψη του Sentinel που ερωτάτε) κατάσταση).

Για να λάβετε όλα τα μηνύματα, απλώς εγγραφείτε χρησιμοποιώντας το psubscribe * .

Το παρακάτω είναι μια λίστα με κανάλια και μορφές μηνυμάτων που μπορείτε να λάβετε χρησιμοποιώντας αυτό το API. Η πρώτη λέξη είναι το όνομα καναλιού / συμβάντος, το υπόλοιπο είναι η μορφή των δεδομένων.

Σημείωση: Πού Λεπτομέρειες παρουσίασης έχει καθοριστεί ότι σημαίνει ότι παρέχονται τα ακόλουθα επιχειρήματα για τον προσδιορισμό της εμφάνισης -στόχου:

Το μέρος που προσδιορίζει τον κύριο (από το επιχείρημα @ μέχρι το τέλος) είναι προαιρετικό και καθορίζεται μόνο εάν η εμφάνιση δεν είναι ο ίδιος.

  • +επαναφορά-κύριος-- Ο πλοίαρχος επαναφέρει.
  • +δούλος-- Ένα νέο αντίγραφο ανιχνεύθηκε και επισυνάπτεται.
  • +αποτυχία-κράτος-ανακλαστικά-σκλάβοι-- Η κατάσταση αποτυχίας άλλαξε σε κατάσταση ανανέωσης-σκλάβων.
  • +ανιχνευμένος με αποτυχία-- Η αποτυχία που ξεκίνησε από ένα άλλο Sentinel ή οποιαδήποτε άλλη εξωτερική οντότητα ανιχνεύθηκε (ένα συνημμένο αντίγραφο μετατράπηκε σε κύριο).
  • +σκλάβος-reconf-sent-- Ο ηγέτης Sentinel έστειλε το αντίγραφο της εντολής σε αυτό το παράδειγμα, προκειμένου να το επαναπροσδιορίσει για το νέο αντίγραφο.
  • +σκλάβος-reconf-inprog-- Το αντίγραφο που αναδιαμορφώθηκε έδειξε ότι είναι ένα αντίγραφο του νέου κύριου ζεύγους IP: θύρας, αλλά η διαδικασία συγχρονισμού δεν έχει ακόμη ολοκληρωθεί.
  • +σκλάβος-reconf-done-- Το αντίγραφο συγχρονίζεται τώρα με τον νέο κύριο.
  • -ντεντινέλ-- Ένας ή περισσότεροι φρουρός για τον καθορισμένο κύριο αφαιρέθηκε ως διπλότυπος (αυτό συμβαίνει για παράδειγμα όταν επανεκκινείται μια εμφάνιση Sentinel).
  • +φρουρός-- Ένα νέο Sentinel για αυτόν τον πλοίαρχο ανιχνεύθηκε και επισυνάπτεται.
  • +λοξοτομώ-- Η καθορισμένη παρουσία είναι τώρα σε υποκειμενικά κάτω κατάσταση.
  • -λοξοτομώ-- Η καθορισμένη παρουσία δεν είναι πλέον υποκειμενικά κάτω κατάσταση.
  • +ωτίδα-- Η καθορισμένη εμφάνιση βρίσκεται τώρα σε αντικειμενικά κάτω κατάσταση.
  • -ωτίδα-- Η καθορισμένη εμφάνιση δεν είναι πλέον αντικειμενικά κάτω κατάσταση.
  • +Νέο-Εφχ-- Η τρέχουσα εποχή ενημερώθηκε.
  • +δοκιμή-- Νέο αποτυχία σε εξέλιξη, περιμένοντας να εκλεγεί από την πλειοψηφία.
  • +εκλεγμένος ηγέτης-- Κέρδισε τις εκλογές για την καθορισμένη εποχή, μπορεί να κάνει το Failover.
  • +αποτυχία-κατάσταση-επιλεκτική-λοξοτομία-- Η νέα κατάσταση αποτυχίας είναι το Select-Slave: Προσπαθούμε να βρούμε ένα κατάλληλο αντίγραφο για προώθηση.
  • χωρίς καλές-- Δεν υπάρχει καλό αντίγραφο για προώθηση. Επί του παρόντος θα προσπαθήσουμε μετά από κάποιο χρονικό διάστημα, αλλά πιθανότατα αυτό θα αλλάξει και το μηχάνημα κατάστασης θα ακυρώσει καθόλου την αποτυχία σε αυτή την περίπτωση.
  • επιλεγμένος-σκλάβος-- Βρήκαμε το καθορισμένο καλό αντίγραφο για προώθηση.
  • αποτυχία-κατάσταση-send-slaveof-noone-- Προσπαθούμε να αναδιαμορφώσουμε το προωθούμενο αντίγραφο ως κύριο, περιμένοντας να αλλάξει.
  • αποτυχία-άκρο-χρονικό διάστημα-- Η αποτυχία που τερματίστηκε για το χρονικό όριο, τα αντίγραφα θα διαμορφωθούν τελικά για να αναπαραχθούν με τον νέο κύριο ούτως ή άλλως.
  • αποτυχία-- Η αποτυχία τερματίστηκε με επιτυχία. Όλα τα αντίγραφα φαίνεται να αναδιαμορφώνονται για να αναπαραχθούν με τον νέο κύριο.
  • διακόπτης-- Το κύριο νέο IP και η διεύθυνση είναι το καθορισμένο μετά από μια αλλαγή διαμόρφωσης. Αυτό είναι Το μήνυμα πιο εξωτερικοί χρήστες ενδιαφέρονται.
  • +γέρνω -- Εισαγωγή λειτουργίας κλίσης.
  • -γέρνω -- Λειτουργία κλίσης.

Χειρισμός -Busy State

Το σφάλμα -BUSY επιστρέφεται από μια παρουσία Redis όταν ένα σενάριο LUA εκτελείται για περισσότερο χρόνο από το χρονικό όριο Screatured Lua Script. Όταν συμβεί αυτό πριν ενεργοποιηθεί μια αποτυχία πάνω από το Redis Sentinel θα προσπαθήσει να στείλει μια εντολή script kill, αυτό θα επιτύχει μόνο εάν το σενάριο ήταν μόνο για ανάγνωση.

Εάν η εμφάνιση βρίσκεται ακόμα σε κατάσταση σφάλματος μετά από αυτή τη δοκιμή, τελικά θα αποτύχει.

Προτεραιότητα αντιγράφων

Οι περιπτώσεις Redis έχουν μια παράμετρο διαμόρφωσης που ονομάζεται Repriority Repriority . Αυτές οι πληροφορίες εκτίθενται από τις περιπτώσεις Redis Replica στην έξοδο των πληροφοριών τους και ο Sentinel το χρησιμοποιεί για να επιλέξει ένα αντίγραφο μεταξύ αυτών που μπορούν να χρησιμοποιηθούν για να αποκατασταθούν ένας πλοίαρχος:

  1. Εάν η προτεραιότητα ρεπλίκα έχει οριστεί στο 0, το αντίγραφο δεν προωθείται ποτέ στο Master.
  2. Αντίγραφα με ένα πιο χαμηλα Ο αριθμός προτεραιότητας προτιμάται από τον Sentinel.

Για παράδειγμα, εάν υπάρχει ένα αντίγραφο S1 στο ίδιο κέντρο δεδομένων του τρέχοντος πλοιάρχου και ένα άλλο αντίγραφο S2 σε άλλο κέντρο δεδομένων, είναι δυνατό να ορίσετε S1 με προτεραιότητα 10 και S2 με προτεραιότητα 100, έτσι ώστε εάν ο κύριος αποτύχει και τα S1 και S2 είναι διαθέσιμα, το S1 θα προτιμάται.

Για περισσότερες πληροφορίες σχετικά με τον τρόπο που επιλέγονται τα αντίγραφα, ελέγξτε το Επιλογή και προτεραιότητα αντιγράφων Τμήμα αυτής της τεκμηρίωσης.

Ο έλεγχος ταυτότητας Sentinel και Redis

Όταν ο πλοίαρχος έχει ρυθμιστεί ώστε να απαιτεί έλεγχο ταυτότητας από τους πελάτες, ως μέτρο ασφαλείας, τα αντίγραφα πρέπει επίσης να γνωρίζουν τα διαπιστευτήρια για να πιστοποιηθούν με τον κύριο και να δημιουργήσουν τη σύνδεση Master-Replica που χρησιμοποιείται για το πρωτόκολλο ασύγχρονης αναπαραγωγής.

Redis Access Control List Containtication

Ξεκινώντας από το Redis 6, ο έλεγχος ταυτότητας και η άδεια χρήστη διαχειρίζεται με τη λίστα ελέγχου πρόσβασης (ACL).

Προκειμένου οι Sentinels να συνδεθούν με τις περιπτώσεις του διακομιστή Redis όταν έχουν ρυθμιστεί με ACL, η διαμόρφωση Sentinel πρέπει να περιλαμβάνει τις ακόλουθες οδηγίες:

Sentinel Auth-User Sentinel Auth-Pass

Πού και είναι το όνομα χρήστη και ο κωδικός πρόσβασης για την πρόσβαση στις περιπτώσεις της ομάδας. Αυτά τα διαπιστευτήρια θα πρέπει να παρέχονται σε όλες τις περιπτώσεις Redis της ομάδας με τα ελάχιστα δικαιώματα ελέγχου. Για παράδειγμα:

127.0.0.1: 6379> ACL Setuser Sentinel-User On> SomePassword AllChannels +Multi +SlaveOf +Ping +Exec +Εγγραφή +Config | Rewrite +Ρόλος +Δημοσίευση +Πληροφορίες +Πελάτης | SetName +Πελάτης | Σενάριο 

Ο έλεγχος ταυτότητας μόνο για κωδικό πρόσβασης Redis

Μέχρι το Redis 6, επιτυγχάνεται ο έλεγχος ταυτότητας χρησιμοποιώντας τις ακόλουθες οδηγίες διαμόρφωσης:

  • Απαιτώστε τον κύριο, προκειμένου να ορίσετε τον κωδικό πρόσβασης ταυτότητας και να βεβαιωθείτε ότι η παρουσία δεν θα επεξεργαστεί αιτήματα για μη πιστοποιημένους πελάτες.
  • Masterauth στα αντίγραφα, προκειμένου τα αντίγραφα να επαληθεύσουν με τον κύριο προκειμένου να αναπαράγουν σωστά τα δεδομένα από αυτό.

Όταν χρησιμοποιείται ο Sentinel, δεν υπάρχει κανένας κύριος, αφού μετά από ένα αντίγραφο αποτυχίας μπορεί να παίξει το ρόλο των πλοιάρχων και οι παλιοί πλοίαρχοι μπορούν να αναδιαμορφωθούν για να ενεργήσουν ως αντίγραφα, οπότε αυτό που θέλετε να κάνετε είναι να ορίσετε τις παραπάνω οδηγίες σε όλες τις περιπτώσεις σας, και οι δύο κύριοι και τα αντίγραφα.

Αυτό είναι επίσης συνήθως μια λογική ρύθμιση, αφού δεν θέλετε να προστατεύσετε τα δεδομένα μόνο στον κύριο, έχοντας τα ίδια δεδομένα προσβάσιμα στα αντίγραφα.

Ωστόσο, στην ασυνήθιστη περίπτωση όπου χρειάζεστε ένα αντίγραφο που είναι προσβάσιμο χωρίς έλεγχο ταυτότητας, μπορείτε ακόμα να το κάνετε με τη ρύθμιση προτεραιότητα ρεπλίκα μηδέν, Για να αποφευχθεί η προώθηση αυτού του αντιγράφου σε κύριο και διαμόρφωση σε αυτό το αντίγραφο μόνο η οδηγία Masterauth, χωρίς να χρησιμοποιεί την οδηγία απαιτήσεων, έτσι ώστε τα δεδομένα να είναι ευανάγνωστα από μη αυθεντικούς πελάτες.

Προκειμένου οι Sentinels να συνδεθούν με τις περιπτώσεις Redis Server όταν είναι διαμορφωμένα με την απαίτηση, η διαμόρφωση Sentinel πρέπει να περιλαμβάνει την οδηγία Sentinel Auth-Pass, με τη μορφή:

Sentinel Auth-Pass

Ρύθμιση παρακολούθησης Sentinel με έλεγχο ταυτότητας

Οι ίδιες οι περιπτώσεις Sentinel μπορούν να εξασφαλιστούν απαιτώντας από τους πελάτες να πιστοποιήσουν μέσω της εντολής Auth. Ξεκινώντας με τον Redis 6.2, είναι διαθέσιμη η λίστα ελέγχου πρόσβασης (ACL), ενώ οι προηγούμενες εκδόσεις (ξεκινώντας από το Redis 5.0.1) Υποστήριξη ελέγχου ταυτότητας μόνο για κωδικό πρόσβασης.

Σημειώστε ότι η διαμόρφωση ελέγχου ταυτότητας του Sentinel πρέπει να είναι Εφαρμοσμένο σε κάθε μία από τις περιπτώσεις στην ανάπτυξή σας και Όλες οι περιπτώσεις πρέπει να χρησιμοποιούν την ίδια διαμόρφωση. Επιπλέον, ο έλεγχος ταυτότητας ACL και ο κωδικός πρόσβασης δεν πρέπει να χρησιμοποιείται μαζί.

Έλεγχος ταυτότητας λίστας ελέγχου πρόσβασης Sentinel

Το πρώτο βήμα για την εξασφάλιση μιας παρουσίας Sentinel με την ACL εμποδίζει οποιαδήποτε μη εξουσιοδοτημένη πρόσβαση σε αυτό. Για να γίνει αυτό, θα πρέπει να απενεργοποιήσετε τον προεπιλεγμένο superuser (ή τουλάχιστον να το ρυθμίσετε με έναν ισχυρό κωδικό πρόσβασης) και να δημιουργήσετε ένα νέο και να του επιτρέψετε πρόσβαση σε κανάλια Pub/Sub:

127.0.0.1: 5000> ACL setuser admin on> admin-password allChannels +@all ok 127.0.0.1: 5000> Προεπιλογή ACL Setuser Off OK 

Ο προεπιλεγμένος χρήστης χρησιμοποιείται από το Sentinel για να συνδεθεί με άλλες περιπτώσεις. Μπορείτε να παράσχετε τα διαπιστευτήρια ενός άλλου superuser με τις ακόλουθες οδηγίες διαμόρφωσης:

Sentinel Sentinel-User Sentinel Sentinel-Pass

Πού και είναι ο υπερσύγχρονος και ο κωδικός πρόσβασης του Sentinel, αντίστοιχα (e.σολ. admin και admin-password στο παραπάνω παράδειγμα).

Τέλος, για τον έλεγχο ταυτότητας εισερχόμενων συνδέσεων πελάτη, μπορείτε να δημιουργήσετε ένα προφίλ χρήστη περιορισμένου Sentinel, όπως τα εξής:

127.0.0.1: 5000> ACL setuser sentinel-user on> user-password-@all +auth +client | getName +client | id +client | setname +hello +ping +ρόλος +sentinel | get-master-addr-by-name +sentinel | 

Ανατρέξτε στην τεκμηρίωση του πελάτη Sentinel για περισσότερες πληροφορίες.

Έλεγχος ταυτότητας μόνο για κωδικό πρόσβασης Sentinel

Για να χρησιμοποιήσετε το Sentinel με έλεγχο ταυτότητας μόνο για κωδικό πρόσβασης, προσθέστε την οδηγία διαμόρφωσης απαιτήσεων όλα Οι περιπτώσεις Sentinel ως εξής:

Απαιτώντας "your_password_here" 

Όταν ρυθμιστεί με αυτόν τον τρόπο, οι Sentinels θα κάνουν δύο πράγματα:

  1. Ένας κωδικός πρόσβασης θα απαιτείται από τους πελάτες προκειμένου να στείλετε εντολές σε Sentinels. Αυτό είναι προφανές, δεδομένου ότι έτσι λειτουργεί μια τέτοια οδηγία διαμόρφωσης στο Redis γενικά.
  2. Επιπλέον, ο ίδιος κωδικός πρόσβασης που έχει διαμορφωθεί για πρόσβαση στο τοπικό Sentinel, θα χρησιμοποιηθεί από αυτή την παρουσία του Sentinel προκειμένου να πιστοποιηθεί σε όλες τις άλλες περιπτώσεις Sentinel που συνδέεται με.

Αυτό σημαίνει ότι Θα πρέπει να διαμορφώσετε τον ίδιο κωδικό πρόσβασης απαιτήσεων σε όλες τις περιπτώσεις Sentinel. Με αυτόν τον τρόπο κάθε Sentinel μπορεί να μιλήσει με κάθε άλλο Sentinel χωρίς να χρειάζεται να διαμορφώσετε για κάθε δελτίο τον κωδικό πρόσβασης για να αποκτήσετε πρόσβαση σε όλους τους άλλους Sentinels, που θα ήταν πολύ ανέφικτο.

Πριν χρησιμοποιήσετε αυτήν τη διαμόρφωση, βεβαιωθείτε ότι η βιβλιοθήκη πελατών σας μπορεί να στείλει την εντολή auth σε περιπτώσεις Sentinel.

Εφαρμογή πελατών Sentinel

Το Sentinel απαιτεί ρητή υποστήριξη πελατών, εκτός εάν το σύστημα έχει ρυθμιστεί να εκτελεί ένα σενάριο που εκτελεί μια διαφανή ανακατεύθυνση όλων των αιτημάτων στη νέα κύρια παρουσία (εικονική IP ή άλλα παρόμοια συστήματα). Το θέμα της εφαρμογής των βιβλιοθηκών πελατών καλύπτεται στις οδηγίες πελατών Sentinel Sentinel.

Πιο προηγμένες έννοιες

Στις επόμενες ενότητες θα καλύψουμε μερικές λεπτομέρειες σχετικά με τον τρόπο λειτουργίας του Sentinel, χωρίς να καταφύγουμε σε λεπτομέρειες εφαρμογής και αλγόριθμους που θα καλύπτονται στο τελευταίο μέρος αυτού του εγγράφου.

Κατάσταση αποτυχίας Sdown και Odown

Ο Redis Sentinel έχει δύο διαφορετικές έννοιες του είμαι κάτω, Το ένα ονομάζεται α Υποκειμενικά κάτω Κατάσταση (sdown) και είναι μια κάτω κατάσταση που είναι τοπική σε μια δεδομένη παρουσία Sentinel. Ένας άλλος ονομάζεται Αντικειμενικά κάτω Κατάσταση (ODOWN) και επιτυγχάνεται όταν αρκετοί δείκτες (τουλάχιστον ο αριθμός που έχει ρυθμιστεί ως η παράμετρος απαρτίας του παρακολούθησης) έχουν μια κατάσταση Sdown και λαμβάνουν ανατροφοδότηση από άλλα Sentinel.

Από την άποψη ενός Sentinel επιτυγχάνεται μια κατάσταση Sdown όταν δεν λαμβάνει έγκυρη απάντηση στα αιτήματα ping για τον αριθμό των δευτερολέπτων που καθορίζονται στη διαμόρφωση ως παράμετρο-master-down-μετά το χιλιοστό του δευτερολέπτου.

Μια αποδεκτή απάντηση στο ping είναι ένα από τα παρακάτω:

  • Ο Ping απάντησε με +Pong.
  • Ο Ping απάντησε με σφάλμα φόρτωσης.
  • Ο Ping απάντησε με σφάλμα -masterdown.

Οποιαδήποτε άλλη απάντηση (ή καθόλου απάντηση) θεωρείται μη έγκυρη. Ωστόσο, σημειώστε ότι Ένας λογικός κύριος που διαφημίζεται ως αντίγραφο στην έξοδο πληροφοριών θεωρείται ότι είναι κάτω.

Σημειώστε ότι το Sdown απαιτεί να μην ληφθεί αποδεκτή απάντηση για ολόκληρο το διάστημα, οπότε για παράδειγμα, αν το διάστημα είναι 30000 χιλιοστά του δευτερολέπτου (30 δευτερόλεπτα) και λαμβάνουμε μια αποδεκτή απάντηση ping κάθε 29 δευτερόλεπτα, η περίπτωση θεωρείται ότι λειτουργεί.

Το Sdown δεν αρκεί για να προκαλέσει μια αποτυχία: αυτό σημαίνει μόνο ότι ένας Sentinel πιστεύει ότι δεν είναι διαθέσιμη μια παρουσία Redis. Για να ενεργοποιηθεί μια αποτυχία, πρέπει να προσεγγιστεί η κατάσταση Odown.

Για να μεταβείτε από το Sdown σε ODOWN δεν χρησιμοποιείται ισχυρός αλγόριθμος συναίνεσης, αλλά απλώς μια μορφή κουτσομπολιού: Εάν ένα δεδομένο Sentinel αναφέρει ότι ένας πλοίαρχος δεν λειτουργεί από αρκετούς δείκτες Σε ένα δεδομένο χρονικό διάστημα, Το sdown προωθείται στο Odown. Εάν αυτή η αναγνώριση λείπει αργότερα, η σημαία έχει εκκαθαριστεί.

Απαιτείται μια πιο αυστηρή εξουσιοδότηση που χρησιμοποιεί μια πραγματική πλειοψηφία για να ξεκινήσει πραγματικά η αποτυχία, αλλά δεν μπορεί να ενεργοποιηθεί χωρίς να φτάσει χωρίς να φτάσει στην κατάσταση Odown.

Η κατάσταση Odown ισχύει μόνο για τους πλοιάρχους. Για άλλες περιπτώσεις που ο Sentinel δεν απαιτεί να ενεργήσει, οπότε η κατάσταση Odown δεν επιτεύχθηκε ποτέ για αντίγραφα και άλλα Sentinels, αλλά μόνο το Sdown είναι.

Ωστόσο, το Sdown έχει επίσης σημασιολογικές επιπτώσεις. Για παράδειγμα, ένα αντίγραφο στην κατάσταση Sdown δεν έχει επιλεγεί για να προωθηθεί από ένα Sentinel που εκτελεί ένα Failover.

Sentinels και Replicas Auto Discovery

Οι Sentinels παραμένουν συνδεδεμένοι με άλλα Sentinel. Ωστόσο, δεν χρειάζεται να διαμορφώσετε μια λίστα με άλλες διευθύνσεις Sentinel σε κάθε περίπτωση Sentinel που εκτελείτε, καθώς ο Sentinel χρησιμοποιεί το redis instances pub/sub δυνατότητες για να ανακαλύψετε τα άλλα Sentinels που παρακολουθούν τους ίδιους δασκάλους και αντίγραφα.

Αυτή η λειτουργία εφαρμόζεται με αποστολή γεια μηνύματα στο κανάλι που ονομάζεται __sentinel __: Γεια σας .

Ομοίως, δεν χρειάζεται να διαμορφώσετε ποια είναι η λίστα των αντιγράφων που συνδέονται με έναν κύριο, καθώς ο Sentinel θα ανακαλύψει αυτόματα αυτή τη λίστα.

  • Κάθε Sentinel δημοσιεύει ένα μήνυμα σε κάθε παρακολουθούμενο Master και Replica Pub/Sub Channel __sentinel __: Γεια σας, κάθε δύο δευτερόλεπτα, ανακοινώνοντας την παρουσία του με IP, Port, Runid.
  • Κάθε Sentinel έχει εγγραφεί στο Pub/Sub Channel __sentinel __: Γεια σας από κάθε κύριο και αντίγραφο, αναζητώντας άγνωστα Sentinels. Όταν εντοπίζονται νέα Sentinels, προστίθενται ως Sentinels αυτού του πλοιάρχου.
  • Γεια σας μηνύματα περιλαμβάνουν επίσης την πλήρη τρέχουσα διαμόρφωση του πλοιάρχου. Εάν το Sentinel Receing έχει μια διαμόρφωση για ένα συγκεκριμένο κύριο που είναι παλαιότερο από αυτό που έχει ληφθεί, ενημερώνεται αμέσως στη νέα διαμόρφωση.
  • Πριν από την προσθήκη ενός νέου Sentinel σε έναν κύριο, ένας Sentinel ελέγχει πάντα εάν υπάρχει ήδη ένα Sentinel με τον ίδιο runid ή την ίδια διεύθυνση (IP και Port Pair). Σε αυτή την περίπτωση, όλα τα αντίστοιχα Sentinels αφαιρούνται και το νέο προστέθηκε.

Αναδιάρθρωση των περιπτώσεων Sentinel εκτός της διαδικασίας αποτυχίας

Ακόμη και όταν δεν υπάρχει αποτυχία, οι Sentinels θα προσπαθούν πάντα να ορίσουν την τρέχουσα διαμόρφωση σε παρακολούθησης περιπτώσεων. ΕΙΔΙΚΑ:

  • Replicas (σύμφωνα με την τρέχουσα διαμόρφωση) που ισχυρίζονται ότι είναι κύριοι, θα ρυθμιστούν ως αντίγραφα για να αναπαραχθούν με τον τρέχοντα κύριο.
  • Τα αντίγραφα που συνδέονται με έναν λάθος κύριο, θα αναδιαμορφωθούν για να αναπαραχθούν με το σωστό κύριο.

Για τους Sentinels για την αναδιάρθρωση των αντιγράφων, πρέπει να παρατηρηθεί η λανθασμένη διαμόρφωση για κάποιο χρονικό διάστημα, δηλαδή μεγαλύτερη από την περίοδο που χρησιμοποιείται για τη μετάδοση νέων διαμορφώσεων.

Αυτό αποτρέπει τους Sentinels με μια παλιά διαμόρφωση (για παράδειγμα επειδή επανήλθαν από ένα διαμέρισμα) θα προσπαθήσουν να αλλάξουν τη διαμόρφωση αντίγραφα πριν λάβουν μια ενημέρωση.

Σημειώστε επίσης πώς η σημασιολογία της πάντα προσπαθώντας να επιβάλει την τρέχουσα διαμόρφωση καθιστά την αποτυχία πιο ανθεκτική στα διαμερίσματα:

  • Οι Masters απέτυχαν να αναδιαμορφωθούν ως αντίγραφα όταν επιστρέφουν διαθέσιμα.
  • Τα αντίγραφα που χωρίζονται κατά τη διάρκεια ενός διαμερίσματος αναδιαμορφώνονται μόλις προσβάσιμα.

Το σημαντικό μάθημα που πρέπει να θυμάστε για αυτό το τμήμα είναι: Το Sentinel είναι ένα σύστημα όπου κάθε διαδικασία θα προσπαθήσει πάντα να επιβάλει την τελευταία λογική διαμόρφωση στο σύνολο των παρακολούθησης περιπτώσεων.

Επιλογή και προτεραιότητα αντιγράφων

Όταν μια εμφάνιση Sentinel είναι έτοιμη να εκτελέσει μια αποτυχία, αφού ο πλοίαρχος είναι στο Odown State και το Sentinel έλαβε την εξουσιοδότηση σε αποτυχία από την πλειοψηφία των γνωστών περιπτώσεων Sentinel, πρέπει να επιλεγεί κατάλληλο αντίγραφο πρέπει να επιλεγεί ένα κατάλληλο αντίγραφο.

Η διαδικασία επιλογής ρεπλίκα αξιολογεί τις ακόλουθες πληροφορίες σχετικά με τα αντίγραφα:

  1. Χρόνος αποσύνδεσης από τον πλοίαρχο.
  2. Προτεραιότητα αντιγράφου.
  3. Μεταποίηση αντιγραφής.
  4. Εκτέλεση ταυτότητας.

Ένα αντίγραφο που βρέθηκε να αποσυνδεθεί από τον πλοίαρχο για περισσότερο από δέκα φορές το διαμορφωμένο κύριο χρονικό όριο (κάτω από τα χιλιοστά του δευτερολέπτου), καθώς και ο χρόνος που ο πλοίαρχος δεν είναι επίσης διαθέσιμος από την άποψη του Sentinel που κάνει το Failover, θεωρείται ότι δεν είναι κατάλληλο για το Failover και παραλείπεται.

Με αυστηρότερους όρους, ένα αντίγραφο του οποίου η έξοδος πληροφοριών υποδηλώνει ότι έχει αποσυνδεθεί από τον κύριο για περισσότερα από:

(Down-After-Milliseconds * 10) + milliseconds_since_master_is_in_sdown_state 

Θεωρείται αναξιόπιστο και αγνοείται εξ ολοκλήρου.

Η επιλογή ρεπλίκα θεωρεί μόνο τα αντίγραφα που πέρασαν την παραπάνω δοκιμή και το ταξινομεί με βάση τα παραπάνω κριτήρια, με την ακόλουθη σειρά.

  1. Τα αντίγραφα ταξινομούνται με προτεραιότητα αντιγράφου όπως διαμορφώνονται στο Redis.COND αρχείο της παρουσία Redis. Θα προτιμάται χαμηλότερη προτεραιότητα.
  2. Εάν η προτεραιότητα είναι η ίδια, ελέγχεται η μετατόπιση αντιγραφής που επεξεργάζεται το αντίγραφο και επιλέγεται το αντίγραφο που έλαβε περισσότερα δεδομένα από τον κύριο.
  3. Εάν πολλαπλά αντίγραφα έχουν την ίδια προτεραιότητα και επεξεργαστούν τα ίδια δεδομένα από τον κύριο, πραγματοποιείται ένας περαιτέρω έλεγχος, επιλέγοντας το αντίγραφο με το λεξικογραφικά μικρότερο αναγνωριστικό εκτέλεσης. Η κατοχή ενός χαμηλότερου id id δεν είναι ένα πραγματικό πλεονέκτημα για ένα αντίγραφο, αλλά είναι χρήσιμο για να γίνει η διαδικασία επιλογής ρεπλίκα πιο ντετερμινιστική, αντί να καταφύγετε για να επιλέξετε ένα τυχαίο αντίγραφο.

Στις περισσότερες περιπτώσεις, η προτεραιότητα αντιγράφου δεν χρειάζεται να ρυθμιστεί ρητά έτσι ώστε όλες οι περιπτώσεις να χρησιμοποιούν την ίδια προεπιλεγμένη τιμή. Εάν υπάρχει μια συγκεκριμένη προτίμηση αποτυχίας, η προτεραιότητα αντιγράφων πρέπει να οριστεί σε όλες τις περιπτώσεις, συμπεριλαμβανομένων των πλοιάρχων, ως κύριος μπορεί να γίνει αντίγραφο σε κάποιο μελλοντικό σημείο-και τότε θα χρειαστεί οι κατάλληλες ρυθμίσεις προτεραιότητας αντιγράφου.

Μια παρουσία Redis μπορεί να ρυθμιστεί με ειδική προτεραιότητα αντιγράφου μηδέν για να είναι ποτέ δεν επιλέξατε από τον Sentinels ως νέο πλοίαρχο. Ωστόσο, ένα αντίγραφο που έχει διαμορφωθεί με αυτόν τον τρόπο θα εξακολουθεί να αναδιαμορφώνεται από τους Sentinels για να αναπαραχθεί με τον νέο κύριο μετά από μια αποτυχία, η μόνη διαφορά είναι ότι ποτέ δεν θα γίνει κύριος του ίδιου.

Αλγόριθμοι και εσωτερικά

Στις επόμενες ενότητες θα διερευνήσουμε τις λεπτομέρειες της συμπεριφοράς του Sentinel. Δεν είναι αυστηρά απαραίτητο για τους χρήστες να γνωρίζουν όλες τις λεπτομέρειες, αλλά η βαθιά κατανόηση του Sentinel μπορεί να βοηθήσει στην ανάπτυξη και τη λειτουργία του Sentinel με πιο αποτελεσματικό τρόπο.

Απαρτία

Τα προηγούμενα τμήματα έδειξαν ότι κάθε κύριος που παρακολουθείται από το Sentinel συσχετίζεται με ένα διαμορφωμένο απαρτία. Καθορίζει τον αριθμό των διαδικασιών Sentinel που πρέπει να συμφωνήσουν σχετικά με την κατάσταση απροθυμίας ή σφάλματος του πλοιάρχου προκειμένου να ενεργοποιηθεί μια αποτυχία.

Ωστόσο, μετά την ενεργοποίηση της αποτυχίας, προκειμένου να γίνει πραγματικά η αποτυχία να εκτελεστεί, Τουλάχιστον η πλειοψηφία των Sentinels πρέπει να εγκρίνει το Sentinel να αποκαταστήσει. Ο Sentinel δεν εκτελεί ποτέ μια αποτυχία στο διαμέρισμα όπου υπάρχει μειοψηφία των Sentinels.

Ας προσπαθήσουμε να κάνουμε τα πράγματα λίγο πιο καθαρά:

  • Απαρτία: Ο αριθμός των διαδικασιών Sentinel που πρέπει να ανιχνεύσουν μια κατάσταση σφάλματος για να επισημανθεί ένας κύριος ως Ωτίδα.
  • Η αποτυχία ενεργοποιείται από το Ωτίδα κατάσταση.
  • Μόλις ενεργοποιηθεί η αποτυχία, ο Sentinel που προσπαθεί να αποκατασταθεί απαιτείται να ζητήσει την εξουσιοδότηση σε πλειοψηφία των Sentinels (ή περισσότερο από την πλειοψηφία εάν η απαρτία έχει οριστεί σε αριθμό μεγαλύτερη από την πλειοψηφία).

Η διαφορά μπορεί να φαίνεται λεπτή, αλλά είναι στην πραγματικότητα αρκετά απλή στην κατανόηση και τη χρήση. Για παράδειγμα, αν έχετε 5 περιπτώσεις Sentinel και η απαρτία έχει οριστεί σε 2, θα ενεργοποιηθεί μια αποτυχία μόλις 2 Sentinels πιστεύουν ότι ο πλοίαρχος δεν είναι προσβάσιμος, ωστόσο ένας από τους δύο Sentinels θα είναι σε θέση να αποτύχει μόνο αν λάβει άδεια τουλάχιστον από 3 Sentinel.

Εάν αντίθετα η απαρτία έχει ρυθμιστεί σε 5, όλα τα Sentinels πρέπει να συμφωνήσουν για την προϋπόθεση κύριου σφάλματος και απαιτείται η εξουσιοδότηση από όλα τα Sentinels για να αποκατασταθεί.

Αυτό σημαίνει ότι η απαρτία μπορεί να χρησιμοποιηθεί για τον συντονισμό του Sentinel με δύο τρόπους:

  1. Εάν μια απαρτία έχει οριστεί σε μια τιμή μικρότερη από την πλειοψηφία των Sentinels που αναπτύσσουμε, βασικά καθιστούμε τον Sentinel πιο ευαίσθητο στις κύριες αποτυχίες, η ενεργοποίηση μιας αποτυχίας μόλις ακόμη και μια μειοψηφία των Sentinels δεν είναι πλέον σε θέση να μιλήσει με τον κύριο.
  2. Εάν μια απαρτία έχει οριστεί σε τιμή μεγαλύτερη από την πλειοψηφία των Sentinels, κάνουμε το Sentinel σε θέση να αποκαταστήσει μόνο όταν υπάρχει πολύ μεγάλος αριθμός (μεγαλύτερη από την πλειοψηφία) καλά συνδεδεμένων φρουρών που συμφωνούν ότι ο Δάσκαλος είναι κάτω.

Εποχές διαμόρφωσης

Οι Sentinels απαιτούν να λάβουν εξουσιοδοτήσεις από την πλειοψηφία προκειμένου να ξεκινήσουν μια αποτυχία για μερικούς σημαντικούς λόγους:

Όταν ένα Sentinel είναι εξουσιοδοτημένο, παίρνει ένα μοναδικό Εποχή διαμόρφωσης Για τον Δάσκαλο αποτυγχάνει. Αυτός είναι ένας αριθμός που θα χρησιμοποιηθεί για την έκδοση της νέας διαμόρφωσης μετά την ολοκλήρωση της αποτυχίας. Επειδή η πλειοψηφία συμφώνησε ότι μια συγκεκριμένη έκδοση ανατέθηκε σε ένα συγκεκριμένο Sentinel, κανένας άλλος Sentinel δεν θα μπορούσε να το χρησιμοποιήσει. Αυτό σημαίνει ότι κάθε διαμόρφωση κάθε αποτυχίας είναι έκδοση με μια μοναδική έκδοση. Θα δούμε γιατί αυτό είναι τόσο σημαντικό.

Επιπλέον, οι Sentinels έχουν έναν κανόνα: Εάν ένας Sentinel ψήφισε ένα άλλο Sentinel για την αποτυχία ενός συγκεκριμένου πλοιάρχου, θα περιμένει λίγο χρόνο να προσπαθήσει να αποκαταστήσει τον ίδιο κύριο ξανά. Αυτή η καθυστέρηση είναι το 2 * αποτυχία-χρόνο που μπορείτε να διαμορφώσετε στο Sentinel.τολμηρός . Αυτό σημαίνει ότι οι Sentinels δεν θα προσπαθήσουν να αποτύχουν τον ίδιο κύριο ταυτόχρονα, ο πρώτος που θα ζητήσει να εξουσιοδοτηθεί θα προσπαθήσει, αν αποτύχει άλλο θα δοκιμάσει μετά από κάποιο χρονικό διάστημα και ούτω καθεξής.

Ο Redis Sentinel εγγυάται το ζημιά ιδιοκτησία ότι εάν η πλειοψηφία των Sentinels είναι σε θέση να μιλήσει, τελικά θα εξουσιοδοτηθεί να αποκατασταθεί εάν ο πλοίαρχος είναι κάτω.

Ο Redis Sentinel εγγυάται επίσης το ασφάλεια ιδιοκτησία που κάθε Sentinel θα αποτύχει στον ίδιο κύριο χρησιμοποιώντας διαφορετικό Εποχή διαμόρφωσης.

Διάδοση διαμόρφωσης

Μόλις ένα Sentinel είναι σε θέση να αποτύχει με επιτυχία έναν κύριο, θα αρχίσει να μεταδίδει τη νέα διαμόρφωση, έτσι ώστε οι άλλοι Sentinels να ενημερώσουν τις πληροφορίες τους για έναν συγκεκριμένο κύριο.

Για να θεωρηθεί επιτυχημένη μια αποτυχία, απαιτεί ότι ο Sentinel ήταν σε θέση να στείλει το αντίγραφο της εντολής του στο επιλεγμένο αντίγραφο και ότι ο διακόπτης στον κύριο παρατηρήθηκε αργότερα στην έξοδο πληροφοριών του Master.

Σε αυτό το σημείο, ακόμη και αν η αναδιάρθρωση των αντιγράφων βρίσκεται σε εξέλιξη, η αποτυχία θεωρείται επιτυχής και όλα τα Sentinels υποχρεούνται να ξεκινήσουν την αναφορά της νέας διαμόρφωσης.

Ο τρόπος διάδοσης μιας νέας διαμόρφωσης είναι ο λόγος για τον οποίο χρειαζόμαστε ότι κάθε αποτυχία Sentinel έχει εξουσιοδοτηθεί με διαφορετικό αριθμό έκδοσης (Configuration Epoch).

Κάθε Sentinel μεταδίδει συνεχώς την έκδοση της διαμόρφωσης ενός κύριου χρησιμοποιώντας redis pub/sub μηνύματα, τόσο στον πλοίαρχο όσο και σε όλα τα αντίγραφα. Ταυτόχρονα, όλοι οι Sentinels περιμένουν τα μηνύματα να δουν ποια είναι η διαμόρφωση που διαφημίζεται από τους άλλους Sentinels.

Οι διαμορφώσεις μεταδίδονται στο __sentinel __: Hello Pub/Sub Channel.

Επειδή κάθε διαμόρφωση έχει διαφορετικό αριθμό έκδοσης, η μεγαλύτερη έκδοση κερδίζει πάντα σε μικρότερες εκδόσεις.

Έτσι, για παράδειγμα, η διαμόρφωση για τον κύριο mymaster ξεκινά με όλα τα Sentinels που πιστεύουν ότι ο πλοίαρχος είναι στο 192.168.1.50: 6379. Αυτή η διαμόρφωση έχει έκδοση 1. Μετά από κάποιο χρονικό διάστημα ένα Sentinel είναι εξουσιοδοτημένο να αποκατασταθεί με την έκδοση 2. Εάν η αποτυχία είναι επιτυχής, θα αρχίσει να μεταδίδει μια νέα διαμόρφωση, ας πούμε 192.168.1.50: 9000, με την έκδοση 2. Όλες οι άλλες περιπτώσεις θα δουν αυτή τη διαμόρφωση και θα ενημερώσουν ανάλογα τη διαμόρφωσή τους, αφού η νέα διαμόρφωση έχει μεγαλύτερη έκδοση.

Αυτό σημαίνει ότι ο Sentinel εγγυάται μια δεύτερη ιδιότητα LEVITE.

Βασικά εάν το δίχτυ διαχωρίζεται, κάθε διαμέρισμα θα συγκλίνει στην υψηλότερη τοπική διαμόρφωση. Στην ειδική περίπτωση χωρίς διαμερίσματα, υπάρχει ένα ενιαίο διαμέρισμα και κάθε Sentinel θα συμφωνήσει για τη διαμόρφωση.

Υπό διαμερίσματα

Οι διαμορφώσεις Redis Sentinel είναι τελικά συνεπείς, οπότε κάθε διαμέρισμα θα συγκλίνει στην υψηλότερη διαθέσιμη διαμόρφωση. Ωστόσο, σε ένα πραγματικό σύστημα που χρησιμοποιεί το Sentinel υπάρχουν τρεις διαφορετικοί παίκτες:

  • Περιπτώσεις redis.
  • Περιπτώσεις Sentinel.
  • Πελάτες.

Προκειμένου να ορίσουμε τη συμπεριφορά του συστήματος, πρέπει να εξετάσουμε και τα τρία.

Το παρακάτω είναι ένα απλό δίκτυο όπου υπάρχουν 3 κόμβοι, καθένα από τα οποία τρέχει μια παρουσία Redis και μια παρουσία Sentinel:

 +-------------+ | Sentinel 1 | ----- Πελάτης A | Redis 1 (m) | + ---------------+ | | + ---------------+ | + ------------+ | Sentinel 2 | -----+-// ---- | Sentinel 3 | ----- Πελάτης B | Redis 2 (ες) | | Redis 3 (m) | +-------------+ +------------+ 

Σε αυτό το σύστημα η αρχική κατάσταση ήταν ότι ο Redis 3 ήταν ο πλοίαρχος, ενώ οι Redis 1 και 2 ήταν αντίγραφα. Ένα διαμέρισμα συνέβη απομόνωση του παλιού πλοιάρχου. Οι Sentinels 1 και 2 ξεκίνησαν μια αποτυχία που προωθούσε το Sentinel 1 ως το νέο Master.

Οι ιδιότητες Sentinel εγγυώνται ότι το Sentinel 1 και 2 τώρα έχουν τη νέα διαμόρφωση για τον κύριο. Ωστόσο, το Sentinel 3 εξακολουθεί να έχει η παλιά διαμόρφωση, καθώς ζει σε διαφορετικό διαμέρισμα.

Γνωρίζουμε ότι το Sentinel 3 θα ενημερωθεί η διαμόρφωσή του όταν το διαμέρισμα δικτύου θα θεραπευτεί, ωστόσο τι συμβαίνει κατά τη διάρκεια του διαμερίσματος εάν υπάρχουν πελάτες χωρισμένοι με τον παλιό κύριο?

Οι πελάτες θα είναι ακόμα σε θέση να γράψουν στο Redis 3, ο παλιός πλοίαρχος. Όταν το διαμέρισμα θα επανέλθει, ο Redis 3 θα μετατραπεί σε αντίγραφο του Redis 1 και όλα τα δεδομένα που γράφονται κατά τη διάρκεια του διαμερίσματος θα χαθούν.

Ανάλογα με τη διαμόρφωσή σας μπορεί να θέλετε ή όχι ότι συμβαίνει αυτό το σενάριο:

  • Εάν χρησιμοποιείτε το Redis ως cache, θα μπορούσε να είναι βολικό ότι ο πελάτης Β εξακολουθεί να είναι σε θέση να γράψει στον παλιό κύριο, ακόμη και αν τα δεδομένα του θα χαθούν.
  • Εάν χρησιμοποιείτε το Redis ως κατάστημα, αυτό δεν είναι καλό και πρέπει να διαμορφώσετε το σύστημα για να αποτρέψετε εν μέρει αυτό το πρόβλημα.

Δεδομένου ότι ο Redis αναπαράγεται ασύγχρονα, δεν υπάρχει τρόπος να αποτρέψουμε πλήρως την απώλεια δεδομένων σε αυτό το σενάριο, ωστόσο μπορείτε να δεσμεύσετε την απόκλιση μεταξύ Redis 3 και Redis 1 χρησιμοποιώντας την ακόλουθη επιλογή διαμόρφωσης Redis:

min-replicas-to-write 1 min-replicas-max-lag 10 

Με την παραπάνω διαμόρφωση (ανατρέξτε στο redis με αυτοεξυπηρέτηση.Παράδειγμα Conf στο Redis Distribution για περισσότερες πληροφορίες) Μια παρουσία Redis, όταν ενεργεί ως κύριος, θα σταματήσει να δέχεται γράφει αν δεν μπορεί να γράψει σε τουλάχιστον 1 αντίγραφο. Δεδομένου ότι η αναπαραγωγή είναι ασύγχρονη δεν είναι σε θέση να γράψει Στην πραγματικότητα σημαίνει ότι το αντίγραφο είτε αποσυνδέεται είτε δεν μας στέλνει ασύγχρονη αναγνωρίζει για περισσότερο από τον καθορισμένο αριθμό δευτερολέπτων μέγιστης LAG.

Χρησιμοποιώντας αυτή τη διαμόρφωση, το Redis 3 στο παραπάνω παράδειγμα θα γίνει μη διαθέσιμη μετά από 10 δευτερόλεπτα. Όταν το διαμέρισμα θεραπεύει, η διαμόρφωση Sentinel 3 θα συγκλίνει στο νέο και ο πελάτης Β θα είναι σε θέση να φέρει μια έγκυρη διαμόρφωση και να συνεχίσει.

Σε γενικές γραμμές Redis + Sentinel στο σύνολό τους είναι Τελικά συνεπές σύστημα όπου είναι η λειτουργία συγχώνευσης Η τελευταία αποτυχία κερδίζει, Και τα δεδομένα από τους παλιούς δασκάλους απορρίπτονται για να αναπαράγουν τα δεδομένα του τρέχοντος πλοιάρχου, οπότε υπάρχει πάντα ένα παράθυρο για να χάσετε αναγνωρισμένες εγγραφές. Αυτό οφείλεται στην ασύγχρονη αναπαραγωγή του Redis και στη φύση της "εικονικής" συγχώνευσης του συστήματος. Σημειώστε ότι αυτό δεν είναι ένας περιορισμός του ίδιου του Sentinel, και αν ενορχηστρώσετε το Failover με μια έντονα συνεπή μηχανική κατάστασης, οι ίδιες ιδιότητες θα εξακολουθούν να ισχύουν. Υπάρχουν μόνο δύο τρόποι για να αποφύγετε την απώλεια αναγνωρισμένων γραπτών:

  1. Χρησιμοποιήστε σύγχρονη αναπαραγωγή (και έναν κατάλληλο αλγόριθμο συναίνεσης για να εκτελέσετε ένα επαναλαμβανόμενο μηχάνημα κατάστασης).
  2. Χρησιμοποιήστε ένα τελικά συνεπές σύστημα όπου μπορούν να συγχωνευθούν διαφορετικές εκδόσεις του ίδιου αντικειμένου.

Ο Redis δεν είναι επί του παρόντος σε θέση να χρησιμοποιήσει κανένα από τα παραπάνω συστήματα και βρίσκεται αυτή τη στιγμή εκτός των αναπτυξιακών στόχων. Ωστόσο, υπάρχουν λύσεις εφαρμογής πληρεξουσίων "2" πάνω από τα καταστήματα Redis όπως το Soundcloud Roshi ή το Dynomite Netflix.

Επίμονη κατάσταση

Η κατάσταση Sentinel επιμένει στο αρχείο διαμόρφωσης Sentinel. Για παράδειγμα, κάθε φορά που λαμβάνεται μια νέα διαμόρφωση ή δημιουργείται (Sentinels Leader Sentinels), για έναν κύριο, η διαμόρφωση επιμένει στον δίσκο μαζί με την εποχή διαμόρφωσης. Αυτό σημαίνει ότι είναι ασφαλές να σταματήσουμε και να επανεκκινήσετε τις διαδικασίες Sentinel.

Λειτουργία κλίσης

Ο Redis Sentinel εξαρτάται σε μεγάλο βαθμό από την ώρα του υπολογιστή: Για παράδειγμα, για να καταλάβει εάν μια περίπτωση είναι διαθέσιμη, θυμάται την ώρα της τελευταίας επιτυχημένης απάντησης στην εντολή ping και το συγκρίνει με την τρέχουσα στιγμή για να καταλάβουμε πόσο χρονών είναι.

Ωστόσο, εάν ο χρόνος του υπολογιστή αλλάξει με απροσδόκητο τρόπο ή εάν ο υπολογιστής είναι πολύ απασχολημένος ή η διαδικασία μπλοκαριστεί για κάποιο λόγο, ο Sentinel μπορεί να αρχίσει να συμπεριφέρεται με απροσδόκητο τρόπο.

Η λειτουργία κλίσης είναι μια ειδική λειτουργία "προστασίας" που μπορεί να εισέλθει ένα Sentinel όταν εντοπιστεί κάτι περίεργο που μπορεί να μειώσει την αξιοπιστία του συστήματος. Η διακοπή του χρονοδιακόπτη Sentinel συνήθως ονομάζεται 10 φορές ανά δευτερόλεπτο, οπότε αναμένουμε ότι περισσότερο ή λιγότερο 100 χιλιοστά του δευτερολέπτου θα περάσουν μεταξύ δύο κλήσεων προς τη διακοπή του χρονοδιακόπτη.

Αυτό που κάνει ένα Sentinel είναι να καταχωρήσει την προηγούμενη φορά που η διακοπή του χρονοδιακόπτη κλήθηκε και να το συγκρίνει με την τρέχουσα κλήση: εάν η διαφορά ώρας είναι αρνητική ή απροσδόκητα μεγάλη (2 δευτερόλεπτα ή περισσότερο), η λειτουργία κλίσης εισάγεται (ή αν είχε ήδη εισαχθεί στην έξοδο από την αναβολή της λειτουργίας κλίσης).

Όταν βρίσκεται σε λειτουργία κλίσης, ο Sentinel θα συνεχίσει να παρακολουθεί τα πάντα, αλλά:

  • Σταματά καθόλου.
  • Αρχίζει να απαντά αρνητικά στο Sentinel Is-Master-Down-by-Addr αιτήματα, καθώς η δυνατότητα ανίχνευσης μιας αποτυχίας δεν είναι πλέον εμπιστευμένη.

Εάν όλα φαίνεται να είναι φυσιολογικά για 30 δευτερόλεπτα, η λειτουργία κλίσης εξέρχεται.

Στη λειτουργία κλίσης Sentinel, αν στείλουμε την εντολή πληροφοριών, θα μπορούσαμε να λάβουμε την ακόλουθη απάντηση:

$ redis -cli -p 26379 127.0.0.1: 26379> Πληροφορίες (άλλες πληροφορίες από το Sentinel Server παραλείπονται.) # Sentinel sentinel_masters: 1 sentinel_tilt: 0 sentinel_tilt_since_seconds: -1 sentinel_running_scripts: 0 sentinel_scripts_queue_length: 0 sentinel_simulate_failure_flags: 0 master0: name = mymaster, ok, διεύθυνση = 127.0.0.1: 6379, Σκλάβοι = 0, Sentinels = 1 

Το πεδίο "sentinel_tilt_since_seconds" υποδεικνύει πόσα δευτερόλεπτα το Sentinel είναι ήδη στη λειτουργία κλίσης. Εάν δεν βρίσκεται σε λειτουργία κλίσης, η τιμή θα είναι -1.

Σημειώστε ότι με κάποιους τρόπους η λειτουργία κλίσης θα μπορούσε να αντικατασταθεί χρησιμοποιώντας το μονότονο API ρολογιού που προσφέρουν πολλοί πυρήνες. Ωστόσο, δεν είναι ακόμη σαφές εάν αυτή είναι μια καλή λύση, αφού το τρέχον σύστημα αποφεύγει τα προβλήματα σε περίπτωση που η διαδικασία μόλις ανασταλεί ή δεν εκτελείται από τον προγραμματιστή για μεγάλο χρονικό διάστημα.

Μια σημείωση σχετικά με τη λέξη σκλάβος που χρησιμοποιείται σε αυτήν τη σελίδα Man: Ξεκινώντας με τον Redis 5, αν όχι για συμβατότητα προς τα πίσω, το έργο Redis δεν χρησιμοποιεί πλέον τη λέξη σκλάβος. Δυστυχώς σε αυτή την εντολή η λέξη σκλάβος είναι μέρος του πρωτοκόλλου, οπότε θα μπορέσουμε να αφαιρέσουμε τέτοια περιστατικά μόνο όταν αυτό το API θα καταργηθεί φυσικά.

Σε αυτήν την σελίδα

Αυτός είναι ένας ιστότοπος της κοινότητας που χρηματοδοτείται από την Redis Ltd. © 2023. Το Redis και το Logo Cube είναι εμπορικά σήματα της Redis Ltd. Όροι χρήσης και πολιτική απορρήτου.

Χρησιμοποιεί η SSH TLS ή SSL Κάνει βιοαποικοδρόμα από ανοξείδωτο χάλυβα

Related Posts

how_to_stay_safe_on_onlyfans_5

Νίσα

OnlyFans Free Pages vs Paid: How Access Differs

onlyfans_help_center

Νίσα

Budgeting Tips and PPV Across Free OnlyFans Pages

6a0b117e02549eec1a0db52c_infographic_user_growth_bar_chart-1

Νίσα

Safe Browsing Protocols for Zero-Dollar OnlyFans Pages

banner
banner

PROMO

racavedigger.com
© racavedigger.com 2026