Si immerge su Make Sentinel?
Riepilogo
In questo articolo, discutiamo della questione delle cassette di pistola Sentinel Stack-on che vengono richiamate a causa di un malfunzionamento del bullone che consente alla cassaforte di aprire senza una chiave o una combinazione. Forniamo anche esperienze personali e approfondimenti riguardanti il malfunzionamento e le possibili soluzioni. Inoltre, tocchiamo il costo delle casse di sicurezza in Cina e il prezzo al dettaglio finale negli Stati Uniti.
1. Qual è il problema con le casseforti della pistola Sentinel Stack-on?
Il malfunzionamento del bullone in queste casseforti consente loro di essere aperti senza una chiave o una combinazione.
2. Qual è l’avviso di richiamo per queste casseforti?
La Commissione per la sicurezza dei prodotti di consumo ha emesso un richiamo per circa 1.250 cassette di pistola Sentinel Stack-on.
3. Quali sono le caratteristiche delle casseforti ricordate?
Le casse di sicurezza sono nere, misurano 40 pollici per 25 pollici per 55 pollici e hanno tre ripiani. Possono archiviare circa dieci armi da fuoco.
4. Come viene identificato il numero di stile delle casseforti richiamate?
Il numero di stile, FSS18-64-MB-E-S, è disponibile sulla confezione di spedizione.
5. Dove sono state vendute queste casse?
Le casse di sicurezza sono state vendute nei negozi di articoli sportivi di Dick a livello nazionale da novembre 2018 a dicembre 2018.
6. Qual è il potenziale pericolo associato a queste casseforti?
Il facile accesso alle armi da fuoco immagazzinate all’interno delle casseforti pone un pericolo di infortunio.
7. Il gruppo combinato elettronico può essere sostituito con una serratura meccanica?
Sì, è possibile sostituire il gruppo combinato elettronico con un vero blocco meccanico.
8. Quanto sono affidabili le casseforti degli stack?
Le casseforti dello stack-on sono generalmente considerate nella parte inferiore, ma dovrebbero comunque essere riparabili per il prezzo.
9. Sono sufficienti per stack-on sufficienti per conservare le armi da fuoco?
Anche se potrebbero non essere le casseforti di alta qualità, possono servire allo scopo previsto abbastanza bene per alcune persone.
10. Quanto comporta il costo di produzione nel prezzo al dettaglio delle casseforti?
Considerando l’utile del produttore, del rivenditore, delle spese di trasporto e delle spese di produzione, una cassaforte di $ 700 può costare solo $ 100 per fare.
Collega le macchine virtuali di Azure Stack Hub a Microsoft Sentinel
Per collegare le macchine virtuali dell’hub di Azure Stack a Microsoft Sentinel, è necessario aggiungere l’estensione della macchina virtuale alle VM esistenti. Ciò ti consentirà di monitorare le macchine virtuali in base a Azure e Azure Stack Hub in una posizione centrale, offrendo una migliore visibilità e gestione.
Collega le macchine virtuali di Azure Stack Hub a Microsoft Sentinel
A seconda della configurazione che potresti desiderare o no che si verifichi questo scenario:
Si immerge su Make Sentinel?
“Circa 1.250 cassette di pistola Sentinel Stack-on vengono richiamate a causa di un malfunzionamento del bullone.
La Commissione per la sicurezza del prodotto di consumo riporta che il richiamo è stato emesso giovedì.
Il malfunzionamento del bullone può causare l’apertura della cassa.
Le cassioni richiamate sono nere e misurano 40 pollici per 25 pollici per 55 pollici. Hanno tre ripiani e possono conservare circa dieci armi da fuoco.
Il numero di stile richiamato, FSS18-64-MB-E-S, è disponibile sulla confezione di spedizione.
I prodotti sono stati venduti a Dick’S Sporting Goods Stores a livello nazionale da novembre 2018 a dicembre 2018 per circa $ 700.”
Fighter Cancer (linfoma non Hodgkins) Dal 2009, ora combattere il linfoma diffuso a grandi cellule a grandi dimensioni.
È abbastanza brutto che alcuni di questi possano avere il blocco bypassato con una clip di carta, ma ora scopriamo che su alcuni di essi devi semplicemente girare la maniglia e il blocco si aggira da solo.
Mi piacerebbe sapere qual è il vero “malfunzionamento”.
Fighter Cancer (linfoma non Hodgkins) Dal 2009, ora combattere il linfoma diffuso a grandi cellule a grandi dimensioni.
Puoi sostituire quel gruppo combinato elettronico crackerjacks con una vera chiusura meccanica?
Il blocco su quel modello sembra essere un body swing ridondante omega. Quindi sì, potresti mettere un altro blocco standard sulla cassaforte.
Fighter Cancer (linfoma non Hodgkins) Dal 2009, ora combattere il linfoma diffuso a grandi cellule a grandi dimensioni.
Nonostante i miei migliori sforzi, il mio brudder si è comprato da una pistola a blocco combinata elettronica. (Probabilmente non uno dei migliori).
Dopo cinque anni è arrivato dove aprirà il blocco solo se la batteria da 9 volt è nuova. L’ho avvertito di farla riparare.
Nessuna chiave di sicurezza neanche.
Questi potrebbero essere stati fabbricati specificamente agli standard di Dicks.
Mentre le casseforti stack-on sono l’estremità inferiore, per settecento dollari, dovrebbe essere utile.
Ho un paio di pile di lamiera sugli armadietti che ho ottenuto come luoghi a prova di bambino per mettere i loro .22 e simili. Potrebbero essere aperti con un bar, ma ci vorrebbe un po ‘di sforzo e sono abbastanza buoni per il loro uso previsto.
Una cassaforte bullonata pesante dovrebbe avere una serratura affidabile, essere resistente alla temperatura e molto difficile da aprire e abbastanza pesante da resistere al trasporto senza mostrarne uno, o un potabile (non possibile per i noleggi).
Non ci sono scuse per una cassaforte non lavorabile, anche se è l’estremità inferiore.
Non sapevo nemmeno che Stack-on avesse nemmeno fatto cassette reali. Associo sempre il nome a mobili e cassette per la lamiera economici.
Non ci sono scuse per una cassaforte non lavorabile, anche se è l’estremità inferiore
È più facile capire la scusa quando corri la matematica all’indietro.
C’è un pantalone in Cina piena di macchinari. Comprano l’acciaio, la vernice, il tappeto, il legno e rendono necessari tutte le parti e i pezzi. Lo assemblano in un prodotto finale, lo trasportano nell’oceano e lo spediscono qui negli Stati Uniti.
Una volta negli Stati Uniti viene trasmesso in camion in tutto il paese, collocato in un negozio, contrassegnato e venduto per $ 700.
Cosa pensi che la cassaforte in realtà costi per realizzare il factoring nell’utile del rivenditore, le spese di trasporto, il profitto del produttore e le spese di produzione? Quindi quando stai osservando quella cassa cinese da $ 700 nel negozio, stai effettivamente guardando una cassaforte da $ 100.
Il loro nuovo prodotto:
“I nazisti entrarono in questa guerra sotto l’illusione piuttosto infantile che avrebbero bombardato tutti gli altri, e nessuno li avrebbe bombardati. A Rotterdam, Londra, Varsavia e mezzo cento altri luoghi, hanno messo in funzione la loro teoria piuttosto ingenua. Hanno seminato il vento e ora raccoglieranno il vortice.”
-Bomber Harris
Originariamente pubblicato da qualche colpo:
Questi potrebbero essere stati fabbricati specificamente agli standard di Dicks.
Qualsiasi cocktail può essere un cocktail di gamberetti se ci metti in mente, e se porti molti gamberi sciolti in tasca.
הרחפת שלי מלה בצלופחים
Originariamente pubblicato da a1abdj:
Non ci sono scuse per una cassaforte non lavorabile, anche se è l’estremità inferiore
È più facile capire la scusa quando corri la matematica all’indietro.
C’è un pantalone in Cina piena di macchinari. Comprano l’acciaio, la vernice, il tappeto, il legno e rendono necessari tutte le parti e i pezzi. Lo assemblano in un prodotto finale, lo trasportano nell’oceano e lo spediscono qui negli Stati Uniti.
Una volta negli Stati Uniti viene trasmesso in camion in tutto il paese, collocato in un negozio, contrassegnato e venduto per $ 700.
Cosa pensi che la cassaforte in realtà costi per realizzare il factoring nell’utile del rivenditore, le spese di trasporto, il profitto del produttore e le spese di produzione? Quindi quando stai osservando quella cassa cinese da $ 700 nel negozio, stai effettivamente guardando una cassaforte da $ 100.
E per aggiungere insulto a lesioni, a “sicuro” Quello’è semplice da crack.
Fighter Cancer (linfoma non Hodgkins) Dal 2009, ora combattere il linfoma diffuso a grandi cellule a grandi dimensioni.
Attendere prego. La tua richiesta sta per essere eseguita. |
Collega le macchine virtuali di Azure Stack Hub a Microsoft Sentinel
Con Microsoft Sentinel, puoi monitorare le VM in esecuzione su Azure e Azure Stack Hub in un unico posto. Per a bordo le tue macchine da stack azure su Microsoft Sentinel, devi prima aggiungere l’estensione della macchina virtuale alle macchine virtuali esistenti del mozzo dello stack azure.
Dopo aver collegato le macchine per mozzo dello stack di Azure, scegli da una galleria di dashboard che Surface Insights in base ai tuoi dati. Questi dashboard possono essere facilmente personalizzati per le tue esigenze.
Aggiungi l’estensione della macchina virtuale
Aggiungi il Azure Monitor, Aggiornamento e gestione della configurazione Estensione della macchina virtuale alle macchine virtuali in esecuzione sull’hub di Azure Stack.
- In una nuova scheda browser, accedi al portale Hub Stack Azure.
- Vai al Macchine virtuali Pagina, seleziona la macchina virtuale che si desidera proteggere con Microsoft Sentinel. Per informazioni su come creare una macchina virtuale su Hub di Azure Stack, vedere Crea una VM di Windows Server con il portale Hub Stack Azure o creare una VM di Linux Server utilizzando il portale Hub Stack Azure.
- Selezionare Estensioni. Viene mostrato l’elenco delle estensioni della macchina virtuale installata su questa macchina virtuale.
- Seleziona il Aggiungere scheda. IL Nuova risorsa Menu Blade si apre e mostra l’elenco delle estensioni della macchina virtuale disponibili.
- Seleziona il Azure Monitor, Aggiornamento e gestione della configurazione estensione e selezionare Creare. IL Installare l’estensione La finestra di configurazione si apre.
Nota se non vedi il Azure Monitor, aggiornamento e gestione della configurazione Estensione elencata nel tuo mercato, contatta l’operatore del mozzo di Azure Stack per renderlo disponibile.
Per ulteriori informazioni sull’installazione e la configurazione dell’agente per Windows, consultare Connect Windows Computers.
Per la risoluzione dei problemi di Linux dei problemi degli agenti, consultare l’analisi del registro Azure Azure Agente Linux.
Nel portale Microsoft Sentinel su Azure, sotto Macchine virtuali, Hai una panoramica di tutte le macchine virtuali e computer insieme al loro stato.
Ripulire le risorse
Quando non è più necessario, è possibile rimuovere l’estensione dalla macchina virtuale tramite il portale del mozzo di Azure Stack.
Per rimuovere l’estensione:
- Apri il Portale hub stack azure.
- Vai a Macchine virtuali Pagina, selezionare la macchina virtuale da cui si desidera rimuovere l’estensione.
- Selezionare Estensioni, Seleziona l’estensione Microsoft.Enterprisecloud.Monitoraggio.
- Selezionare Disinstalla, e conferma la tua selezione.
Prossimi passi
Per saperne di più su Microsoft Sentinel, vedere i seguenti articoli:
- Scopri come ottenere visibilità sui tuoi dati e potenziali minacce.
- Inizia a rilevare le minacce con Microsoft Sentinel.
- Dati di streaming da elettrodomestici in formato eventi comuni in Microsoft Sentinel.
Chiuso
Vieni preparato con aiuto e attrezzatura per spostare questo da terra al tuo trasporto! Vedi YouTube per video utili sulla rimozione di porte sicure per facilitare la mossa. Il ritiro è a livello del suolo, nessun dock di caricamento. Abbiamo un jack pallet. Non abbiamo un ascensore.
Per questo modello non abbiamo PDF. Si prega di consultare le foto dell’etichetta e visualizzare le informazioni.
Informazioni di caricamento: preparati con aiuto e attrezzatura per spostare questo da terra al tuo trasporto! Vedi YouTube per video utili sulla rimozione di porte sicure per facilitare la mossa. Il ritiro è a livello del suolo, nessun dock di caricamento. Abbiamo un jack pallet. Non abbiamo un ascensore.
Più informazioni di caricamento (da Stack-on.com/pagine/domande frequenti):
D: Quanto pesa la porta?
A: circa 1/3 del peso totale della cassaforte.
D: La porta può essere rimossa?
A: Sì. Apri la porta, rimuovi i tappi a cerniera. Sollevare attentamente la porta: avrai bisogno di un sollevamento a squadra, la porta è molto pesante e non può essere sostituita.
Contatta Mark al numero (612)298-8901 per qualsiasi domanda o per ulteriori informazioni. Possiamo anche essere raggiunti via e -mail a [email protected] . Se non riesci a raggiungere il segno con la tua domanda, chiama Kim al numero 763-218-6591.
V-man non spedirà nessuna delle grandi casseforti. Le custodie portatili, le cassette più piccole e la maggior parte degli altri articoli possono essere spediti. Contattaci per prendere accordi.
Si prega di notare che loadout è a livello del suolo. Se stai acquistando un oggetto di grandi dimensioni, si prega di portare la forza lavoro, attrezzatura e veicolo necessari per caricare l’articolo. Aiuto con il caricamento non sarà disponibile. Abbiamo un jack pallet ma nessun ascensore.
Tutti vendono senza riserve ai più alti offerenti! Approfitta dell’opportunità di appuntamento di ispezione o chiama/e -mail con domande! Le immagini e le descrizioni non devono essere utilizzate al posto della tua ispezione e il giorno del pickup non è il giorno dell’ispezione. Tutto è venduto come è dove si trova. Qui non saranno adeguati o rifiuti di articoli venduti. Grazie per aver guardato!!
Ispezione:
Ven, 07 ottobre 2016
10:00 – 14:00
Chiusura dell’asta:
Sun, 09 ottobre 2016
Rimozione:
Mar, 11 ottobre 2016
09:30 – 17:30
Incrementi di offerte:
Gamma di offerte | Incremento minimo | ||
---|---|---|---|
$ 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 |
Premium dell’acquirente scontato | Premium dell’acquirente regolare | Cappuccio |
---|---|---|
10.00% | 13.00% | $ 3,250.00 |
Questa asta è contratta e gestita da: V-Man Auctions
Manager: Mark Cooper
Contanti, credito, cassiere’Controllo S/Bank
Questa asta è contratta e gestita dalle aste V-Man. Mettendo un’offerta su questa asta, si accetta i termini specifici dell’asta elencati in aggiunta ai termini dell’utente K-Bid. Per le aste contratte e gestite da una affiliata indipendente, K-Bid Online, Inc. funge solo da sede e non sarà coinvolto in alcuna controversia riguardante questa asta. Tutto è venduto “Così com’è, dov’è” senza garanzie o garanzie. Sei responsabile dell’ispezione degli articoli prima dell’acquisto. C’è un premio per gli acquirenti del 13% (13% bp) su questa asta. Tutti i pagamenti con carta non Credit/debito effettuati in piena (importo fatturato) riceveranno una riduzione del 3% del premio per gli acquirenti (10% bp). Verrà raccolta l’imposta sulle vendite del Minnesota applicabile. Alla fine dell’asta, gli articoli attivi rimarranno aperti fino a quando non sono state ricevute offerte per tre minuti. Nota importante: se l’offerente alto di un articolo non riconosce l’acquisto, i sistemi K-Bid si riserva il diritto di determinare come e a chi sarà rivenduto. Se determiniamo che l’offerta vincente non era un offerente in buona fede, l’articolo non andrà automaticamente alla seconda offerta più alta.
Questa asta è contratta e gestita da un affiliato indipendente. Mettendo un’offerta su questa asta, si accetta i termini specifici dell’asta elencati in questa pagina in aggiunta ai termini e agli accordi dell’utente K-Bid.
K-Bid Online, Inc. (K-Bid) è responsabile del mantenimento del K-Bid.sito web com. K-Bid.Com è la sede utilizzata da società di asta indipendenti (affiliate) per presentare le loro aste online agli offerenti.
K-Bid’Suolo s nelle aste elencate su K-Bid.com è limitato a fornire la sede per le aste di affiliazione. Gli affiliati non sono dipendenti, agenti, rappresentanti o partner di K-Bid Online, Inc. K-Bid’La conoscenza delle aste individuali e delle singole transazioni all’asta è limitata alle informazioni che compaiono sul sito Web.
Mettendo un’offerta su K-Bid.com, gli offerenti stanno verificando che hanno almeno 18 anni e riconoscono che comprendono e rispetteranno sia il K-Bid.Termini del sito Web e termini specifici dell’asta. Gli offerenti non devono condividere le informazioni sulla password o dell’account con nessuno. Gli offerenti sono responsabili delle offerte effettuate sul proprio conto.
Le date/tempi di ispezione sono disponibili per ogni asta. Gli offerenti sono fortemente incoraggiati a ispezionare prima di fare offerte. Il giorno di rimozione non è il giorno dell’ispezione. Quando un’asta termina e la fattura dell’offerente vincente appare sull’offerente’S Dashboard, l’offerente è obbligato a onorare le loro offerte.
Ogni oggetto d’asta viene venduto “Così com’è, dov’è” senza garanzie o garanzie. Sei responsabile dell’ispezione degli articoli prima dell’acquisto.
Gli offerenti sono responsabili della conoscenza e del rispetto dei termini dell’asta. La mancata osservanza di termini di rimozione può comportare disabilitare i privilegi di offerta. Una volta effettuata un’offerta, non può essere ritirata.
A venditori e ai loro agenti è vietato fare offerte sui propri beni.
Gli articoli con una riserva non saranno venduti a meno che il prezzo di riserva non sia stato soddisfatto.
Alla fine dell’asta, gli articoli attivi rimarranno aperti fino a quando non sono state ricevute offerte per tre minuti.
L’imposta sulle vendite applicabile sarà riscossa dall’affiliazione che gestisce l’asta.
Nel caso in cui i diritti di offerta siano terminati a causa di fatture senza show, gli offerenti possono essere ripristinati a discrezione di K-Bid solo dopo una commissione di penalità del 20% della fattura / i non pagata.00 è stato pagato a K-Bid e una copia scansionata della patente di guida inviata a noi. Gli articoli fatturati non verranno assegnati. Il pagamento è punitivo e inteso per dissuadere. I conti duplicati dell’offerente saranno disattivati quando sono determinati a esistere. Se possibile e a nostra discrezione, K-Bid si riserva il diritto di eliminare qualsiasi offerta che riteniamo sia stata effettuata da un sospetto offerente. Qualsiasi registrazione che viene visualizzata sul nostro sistema di rilevamento delle frodi può essere messa in attesa e le offerte rimosse fino a quando l’utente non viene verificata. K-Bid Online, Inc si riserva il diritto di impedire a chiunque di fare offerte sul suo sito Web. Casi di evidenti offerte senza intenzione di riscattare saranno indirizzati alle autorità legali appropriate.
Gli affiliati possono abbassare molto in qualsiasi momento prima o dopo l’asta si chiude. Se la riserva viene ridotta mentre l’asta è in corso, il messaggio di riserva applicabile apparirà sotto le successive informazioni di offerta richieste (la riserva non soddisfatta o la riserva è stata soddisfatta); L’attività verrà venduta all’offerente alto se l’importo di riserva ridotto viene soddisfatto. Se la riserva viene ridotta dopo la chiusura dell’asta, il miglior offerente all’asta chiuderà riceverà una fattura vincente dell’offerente.
Una volta che un’asta inizia il suo processo di chiusura, le notifiche consegnate non verranno inviate.
Una volta effettuata un’offerta, non può essere ritirata.
Chiuso
Contatta Mark al numero (612)298-8901 per qualsiasi domanda o per ulteriori informazioni. Possiamo anche essere raggiunti via e -mail a [email protected] . Se non riesci a raggiungere il segno con la tua domanda, chiama Kim al numero 763-218-6591.
V-man non spedirà nessuna delle grandi casseforti. Le custodie portatili, le cassette più piccole e la maggior parte degli altri articoli possono essere spediti. Contattaci per prendere accordi.
Si prega di notare che loadout è a livello del suolo. Se stai acquistando un oggetto di grandi dimensioni, si prega di portare la forza lavoro, attrezzatura e veicolo necessari per caricare l’articolo. Aiuto con il caricamento non sarà disponibile. Abbiamo un jack pallet ma nessun ascensore.
Tutti vendono senza riserve ai più alti offerenti! Approfitta dell’opportunità di appuntamento di ispezione o chiama/e -mail con domande! Le immagini e le descrizioni non devono essere utilizzate al posto della tua ispezione e il giorno del pickup non è il giorno dell’ispezione. Tutto è venduto come è dove si trova. Qui non saranno adeguati o rifiuti di articoli venduti. Grazie per aver guardato!!
Ispezione:
Ven, 07 ottobre 2016
10:00 – 14:00
Chiusura dell’asta:
Sun, 09 ottobre 2016
Rimozione:
Mar, 11 ottobre 2016
09:30 – 17:30
Incrementi di offerte:
Gamma di offerte | Incremento minimo | ||
---|---|---|---|
$ 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 |
Premium dell’acquirente scontato | Premium dell’acquirente regolare | Cappuccio |
---|---|---|
10.00% | 13.00% | $ 3,250.00 |
Questa asta è contratta e gestita da: V-Man Auctions
Manager: Mark Cooper
Contanti, credito, cassiere’Controllo S/Bank
Questa asta è contratta e gestita dalle aste V-Man. Mettendo un’offerta su questa asta, si accetta i termini specifici dell’asta elencati in aggiunta ai termini dell’utente K-Bid. Per le aste contratte e gestite da una affiliata indipendente, K-Bid Online, Inc. funge solo da sede e non sarà coinvolto in alcuna controversia riguardante questa asta. Tutto è venduto “Così com’è, dov’è” senza garanzie o garanzie. Sei responsabile dell’ispezione degli articoli prima dell’acquisto. C’è un premio per gli acquirenti del 13% (13% bp) su questa asta. Tutti i pagamenti con carta non Credit/debito effettuati in piena (importo fatturato) riceveranno una riduzione del 3% del premio per gli acquirenti (10% bp). Verrà raccolta l’imposta sulle vendite del Minnesota applicabile. Alla fine dell’asta, gli articoli attivi rimarranno aperti fino a quando non sono state ricevute offerte per tre minuti. Nota importante: se l’offerente alto di un articolo non riconosce l’acquisto, i sistemi K-Bid si riserva il diritto di determinare come e a chi sarà rivenduto. Se determiniamo che l’offerta vincente non era un offerente in buona fede, l’articolo non andrà automaticamente alla seconda offerta più alta.
Questa asta è contratta e gestita da un affiliato indipendente. Mettendo un’offerta su questa asta, si accetta i termini specifici dell’asta elencati in questa pagina in aggiunta ai termini e agli accordi dell’utente K-Bid.
K-Bid Online, Inc. (K-Bid) è responsabile del mantenimento del K-Bid.sito web com. K-Bid.Com è la sede utilizzata da società di asta indipendenti (affiliate) per presentare le loro aste online agli offerenti.
K-Bid’Suolo s nelle aste elencate su K-Bid.com è limitato a fornire la sede per le aste di affiliazione. Gli affiliati non sono dipendenti, agenti, rappresentanti o partner di K-Bid Online, Inc. K-Bid’La conoscenza delle aste individuali e delle singole transazioni all’asta è limitata alle informazioni che compaiono sul sito Web.
Mettendo un’offerta su K-Bid.com, gli offerenti stanno verificando che hanno almeno 18 anni e riconoscono che comprendono e rispetteranno sia il K-Bid.Termini del sito Web e termini specifici dell’asta. Gli offerenti non devono condividere le informazioni sulla password o dell’account con nessuno. Gli offerenti sono responsabili delle offerte effettuate sul proprio conto.
Le date/tempi di ispezione sono disponibili per ogni asta. Gli offerenti sono fortemente incoraggiati a ispezionare prima di fare offerte. Il giorno di rimozione non è il giorno dell’ispezione. Quando un’asta termina e la fattura dell’offerente vincente appare sull’offerente’S Dashboard, l’offerente è obbligato a onorare le loro offerte.
Ogni oggetto d’asta viene venduto “Così com’è, dov’è” senza garanzie o garanzie. Sei responsabile dell’ispezione degli articoli prima dell’acquisto.
Gli offerenti sono responsabili della conoscenza e del rispetto dei termini dell’asta. La mancata osservanza di termini di rimozione può comportare disabilitare i privilegi di offerta. Una volta effettuata un’offerta, non può essere ritirata.
A venditori e ai loro agenti è vietato fare offerte sui propri beni.
Gli articoli con una riserva non saranno venduti a meno che il prezzo di riserva non sia stato soddisfatto.
Alla fine dell’asta, gli articoli attivi rimarranno aperti fino a quando non sono state ricevute offerte per tre minuti.
L’imposta sulle vendite applicabile sarà riscossa dall’affiliazione che gestisce l’asta.
Nel caso in cui i diritti di offerta siano terminati a causa di fatture senza show, gli offerenti possono essere ripristinati a discrezione di K-Bid solo dopo una commissione di penalità del 20% della fattura / i non pagata.00 è stato pagato a K-Bid e una copia scansionata della patente di guida inviata a noi. Gli articoli fatturati non verranno assegnati. Il pagamento è punitivo e inteso per dissuadere. I conti duplicati dell’offerente saranno disattivati quando sono determinati a esistere. Se possibile e a nostra discrezione, K-Bid si riserva il diritto di eliminare qualsiasi offerta che riteniamo sia stata effettuata da un sospetto offerente. Qualsiasi registrazione che viene visualizzata sul nostro sistema di rilevamento delle frodi può essere messa in attesa e le offerte rimosse fino a quando l’utente non viene verificata. K-Bid Online, Inc si riserva il diritto di impedire a chiunque di fare offerte sul suo sito Web. Casi di evidenti offerte senza intenzione di riscattare saranno indirizzati alle autorità legali appropriate.
Gli affiliati possono abbassare molto in qualsiasi momento prima o dopo l’asta si chiude. Se la riserva viene ridotta mentre l’asta è in corso, il messaggio di riserva applicabile apparirà sotto le successive informazioni di offerta richieste (la riserva non soddisfatta o la riserva è stata soddisfatta); L’attività verrà venduta all’offerente alto se l’importo di riserva ridotto viene soddisfatto. Se la riserva viene ridotta dopo la chiusura dell’asta, il miglior offerente all’asta chiuderà riceverà una fattura vincente dell’offerente.
Una volta che un’asta inizia il suo processo di chiusura, le notifiche consegnate non verranno inviate.
Una volta effettuata un’offerta, non può essere ritirata.
Alta disponibilità con Redis Sentinel
Sentinel stesso è progettato per essere eseguito in una configurazione in cui vi sono più processi Sentinel che collaborano insieme. Il vantaggio di avere più processi di sentinella che collaborano sono i seguenti:
- Il rilevamento del fallimento viene eseguito quando più sentinelle concordano sul fatto che un determinato master non è più disponibile. Ciò riduce la probabilità di falsi positivi.
- Sentinel funziona anche se non tutti i processi Sentinel funzionano, rendendo il sistema robusto contro i guasti. Non c’è divertimento nell’avere un sistema di failover che è esso stesso un singolo punto di fallimento, dopo tutto.
La somma di sentinelle, istanze di Redis (maestri e repliche) e client che si collegano a Sentinel e Redis, sono anche un sistema distribuito più ampio con proprietà specifiche. In questo documento i concetti saranno introdotti gradualmente a partire dalle informazioni di base necessarie per comprendere le proprietà di base di Sentinel, a informazioni più complesse (che sono opzionali) per capire come funziona esattamente Sentinel.
Sentinel Quick Start
Ottenere Sentinel
La versione corrente di Sentinel si chiama Sentinel 2. È una riscrittura dell’implementazione iniziale di Sentinel utilizzando algoritmi più forti e più semplici a prevalenza (che sono spiegati in questa documentazione).
Un rilascio stabile di Redis Sentinel viene spedito da Redis 2.8.
Nuovi sviluppi vengono eseguiti nel instabile ramo e nuove funzionalità a volte sono tornate nell’ultima filiale stabile non appena sono considerate stabili.
Redis Sentinel versione 1, spedito con Redis 2.6, è deprecato e non dovrebbe essere usato.
Esecuzione di Sentinel
Se si utilizza l’esecutabile Redis-Sentinel (o se si dispone di un collegamento simbolico con quel nome all’eseguibile Redis-Server) puoi eseguire Sentinel con la seguente riga di comando:
Redis-Sentinel/Path/To/Sentinel.conf
Altrimenti è possibile utilizzare direttamente l’eseguibile Redis-Server avviandolo in modalità Sentinel:
Redis-Server/Path/To/Sentinel.Conf -Sentinel
Entrambi i modi funzionano allo stesso modo.
Tuttavia è obbligatorio Per utilizzare un file di configurazione durante l’esecuzione di Sentinel, poiché questo file verrà utilizzato dal sistema per salvare lo stato corrente che verrà ricaricato in caso di riavvio. Sentinel si rifiuterà semplicemente di avviare se non viene fornito alcun file di configurazione o se il percorso del file di configurazione non è scrivibile.
Sentinel per impostazione predefinita Ascoltare connessioni alla porta TCP 26379, Quindi, per le sentinelle di lavorare, porta 26379 dei tuoi server deve essere aperto per ricevere connessioni dagli indirizzi IP delle altre istanze Sentinel. Altrimenti le sentinelle non possono parlare e non possono essere d’accordo su cosa fare, quindi il failover non verrà mai eseguito.
Cose fondamentali da sapere su Sentinel prima di distribuire
- Hai bisogno di almeno tre istanze Sentinel per una distribuzione solida.
- Le tre istanze Sentinel dovrebbero essere inserite in computer o macchine virtuali che si ritiene falliscano in modo indipendente. Quindi, ad esempio, diversi server fisici o macchine virtuali eseguite su diverse zone di disponibilità.
- Sentinel + Redis Distributed System non garantisce che le scritture riconosciute siano mantenute durante i guasti, poiché Redis utilizza la replica asincrona. Tuttavia, ci sono modi per distribuire Sentinel che rendono la finestra per perdere le scritture limitate a determinati momenti, mentre ci sono altri modi meno sicuri per distribuirla.
- Hai bisogno di supporto Sentinel nei tuoi clienti. Le biblioteche dei clienti popolari hanno supporto Sentinel, ma non tutti.
- Non esiste una configurazione HA che sia sicura se non si verifica di tanto in tanto negli ambienti di sviluppo, o anche meglio se puoi, in ambienti di produzione, se funzionano. Potresti avere una configurazione errata che diventerà evidente solo quando sarà troppo tardi (alle 3 del mattino quando il padrone smette di funzionare).
- Sentinel, Docker o altre forme di traduzione degli indirizzi di rete o mappatura delle porte devono essere miscelati con cura: Docker esegue la rimappatura della porta, la rottura della scoperta auto Sentinel di altri processi Sentinel e l’elenco delle repliche per un master. Controlla la sezione su Sentinel e Docker Più tardi in questo documento per ulteriori informazioni.
Configurazione di Sentinel
La distribuzione della sorgente Redis contiene un file chiamato Sentinel.conf che è un file di configurazione di esempio auto-documenti che è possibile utilizzare per configurare Sentinel, tuttavia un tipico file di configurazione minimo sembra il seguente:
Sentinel Monitor Mymaster 127.0.0.1 6379 2 sentinel down-dopo-millisecondi Mymaster 60000 Sentinel Faithover-timeout mymaster 180000 Sentinel Syncs parallelo Mymaster 1 Sentinel Monitor Resque 192.168.1.3 6380 4 Sentinel Down-dopo-millisecondi Resque 10000 Sentinel Fai Falever-timeout Resque 180000 Sentinel Syncs parallele Resque 5
È solo necessario specificare i maestri da monitorare, dando a ciascun master separato (che può avere un numero qualsiasi di repliche) un nome diverso. Non è necessario specificare le repliche, che sono scoperte automaticamente. Sentinel aggiornerà automaticamente la configurazione con ulteriori informazioni sulle repliche (al fine di conservare le informazioni in caso di riavvio). La configurazione viene anche riscritta ogni volta che una replica viene promossa per padroneggiare durante un failover e ogni volta che viene scoperta una nuova sentinella.
La configurazione di esempio sopra monitora sostanzialmente due set di istanze di Redis, ciascuna composta da un maestro e un numero indefinito di repliche. Una serie di istanze si chiama Mymaster e l’altra resque .
Il significato degli argomenti delle dichiarazioni del monitor Sentinel è il seguente:
Monitor Sentinel
Per motivi di chiarezza, controlliamo la riga per riga cosa significano le opzioni di configurazione:
La prima riga viene utilizzata per dire a Redis di monitorare un maestro chiamato il mio maestro, Questo è all’indirizzo 127.0.0.1 e porta 6379, con un quorum di 2. Tutto è abbastanza ovvio ma il quorum discussione:
- IL quorum è il numero di sentinelle che devono essere d’accordo sul fatto che il maestro non è raggiungibile, al fine di contrassegnare davvero il maestro come fallimento, e alla fine avviare una procedura di failover, se possibile.
- Tuttavia Il quorum viene utilizzato solo per rilevare il fallimento. Per eseguire effettivamente un failover, una delle sentinelle deve essere eletta leader per il failover ed essere autorizzata a procedere. Questo accade solo con il voto del la maggior parte dei processi Sentinel.
Quindi, ad esempio, se hai 5 processi Sentinel e il quorum per un determinato maestro impostato sul valore di 2, questo è ciò che accade:
- Se due sentinelle concordano contemporaneamente sul fatto che il maestro sia irraggiungibile, uno dei due proverà ad avviare un failover.
- Se ci sono almeno un totale di tre sentinelle raggiungibili, il failover sarà autorizzato e inizierà effettivamente.
In termini pratici questo significa durante i guasti Sentinel non avvia mai un failover se la maggior parte dei processi Sentinel non è in grado di parlare (aka nessun failover nella partizione di minoranza).
Altre opzioni Sentinel
Le altre opzioni sono quasi sempre nella forma:
sentinella
E sono usati per i seguenti scopi:
- Down-dopo i millisecondi è il tempo in millisecondi, un’istanza non dovrebbe essere raggiungibile (o non risponde ai nostri ping o sta rispondendo con un errore) per una sentinella che inizia a pensare che sia giù.
- Syncs parallele imposta il numero di repliche che possono essere riconfigurate per utilizzare il nuovo master dopo un failover contemporaneamente. Più basso è il numero, più tempo ci vorrà per il completamento del processo di failover, tuttavia se le repliche sono configurate per servire vecchi dati, potresti non volere che tutte le repliche si sincronizzano con il master contemporaneamente. Mentre il processo di replica è per lo più senza blocco per una replica, c’è un momento in cui si ferma per caricare i dati sfusi dal master. Potresti voler assicurarti che solo una replica alla volta non sia raggiungibile impostando questa opzione sul valore di 1.
Altre opzioni sono descritte nel resto di questo documento e documentate nell’esempio Sentinel.FILEF FILE SPEDATO CON La distribuzione Redis.
I parametri di configurazione possono essere modificati in fase di esecuzione:
- I parametri di configurazione specifici del master sono modificati utilizzando Sentinel Set .
- I parametri di configurazione globali vengono modificati utilizzando Sentinel Config Set .
Esempio di distribuzioni Sentinel
Ora che conosci le informazioni di base su Sentinel, potresti chiederti dove dovresti posizionare i tuoi processi Sentinel, quanti processi Sentinel hai bisogno e così via. Questa sezione mostra alcuni distribuzioni di esempio.
Usiamo l’arte ASCII per mostrarti esempi di configurazione in a grafico Formato, questo è ciò che i diversi simboli significano:
+--------------------+ | Questo è un computer | | o VM che fallisce | | indipendentemente. Noi | | Chiamalo "Box" | +--------------------+
Scriviamo all’interno delle scatole quello che stanno correndo:
+-------------------+ | Redis Master M1 | | Redis Sentinel S1 | +-------------------+
Scatole diverse sono collegate da righe, per dimostrare che sono in grado di parlare:
+-------------+ +-------------+ | Sentinel S1 | --------------- | Sentinel S2 | +-------------+ +-------------+
Le partizioni di rete sono mostrate come linee interrotte usando le barre:
+-------------+ +-------------+ | Sentinel S1 | ------ // ------ | Sentinel S2 | +-------------+ +-------------+
- I maestri sono chiamati M1, M2, M3, . Mn.
- Le repliche sono chiamate R1, R2, R3, . RN (R sta per replica).
- I sentinelle sono chiamati S1, S2, S3, . Sn.
- I clienti sono chiamati C1, C2, C3, . Cn.
- Quando un’istanza cambia ruolo a causa delle azioni di Sentinel, lo mettiamo tra parentesi quadrate, quindi [M1] significa un’istanza che ora è un maestro a causa dell’intervento Sentinel.
Nota che non mostreremo mai configurazioni in cui vengono utilizzate solo due sentinelle, Poiché le sentinelle hanno sempre bisogno Per parlare con la maggioranza Per iniziare un failover.
Esempio 1: solo due sentinelle, non farlo
+----+ +----+ | M1 | --------- | R1 | | S1 | | S2 | + ----++ ----+ Configurazione: quorum = 1
- In questa configurazione, se il maestro M1 fallisce, R1 verrà promosso poiché i due sentinelle possono raggiungere un accordo sul fallimento (ovviamente con il quorum impostato su 1) e può anche autorizzare un failover perché la maggioranza è due. Quindi a quanto pare potrebbe funzionare superficialmente, tuttavia controlla i prossimi punti per capire perché questa configurazione è interrotta.
- Se la scatola in cui M1 è in esecuzione smette di funzionare, anche S1 smette di funzionare. La sentinella in esecuzione nell’altra scatola S2 non sarà in grado di autorizzare un failover, quindi il sistema non sarà disponibile.
Si noti che è necessaria una maggioranza per ordinare diversi failover e successivamente propagare l’ultima configurazione a tutte le sentinelle. Si noti inoltre che la capacità di failover in un unico lato della configurazione sopra, senza alcun accordo, sarebbe molto pericolosa:
+----+ +------+ | M1 | ---- // ----- | [M1] | | S1 | | S2 | +----+ +------+
Nella configurazione di cui sopra abbiamo creato due maestri (supponendo che S2 potrebbe failover senza autorizzazione) in un modo perfettamente simmetrico. I clienti possono scrivere indefinitamente su entrambi i lati e non c’è modo di capire quando la partizione guarisce quale configurazione è quella giusta, al fine di prevenire un condizione cerebrale divisa permanente.
Quindi per favore distribuire almeno tre sentinelle in tre diverse caselle Sempre.
Esempio 2: configurazione di base con tre caselle
Questa è una configurazione molto semplice, che ha il vantaggio di essere semplice da sintonizzare per ulteriore sicurezza. Si basa su tre scatole, ogni scatola che esegue sia un processo Redis che un processo Sentinel.
+----+ | M1 | | S1 | + ----+ | + ----+ | + ----+ | R2 | ----+---- | R3 | | S2 | | S3 | + ----++ ----+ Configurazione: quorum = 2
Se il Master M1 fallisce, S2 e S3 saranno d’accordo sul fallimento e saranno in grado di autorizzare un failover, rendendo i clienti in grado di continuare.
In ogni configurazione di Sentinel, poiché Redis utilizza la replica asincrona, c’è sempre il rischio di perdere alcune scritture perché una determinata scrittura riconosciuta potrebbe non essere in grado di raggiungere la replica che viene promossa a padroneggiare. Tuttavia, nella configurazione di cui sopra, c’è un rischio più elevato a causa che i clienti sono partiti via con un vecchio maestro, come nella seguente immagine:
+----+ | M1 | | S1 |
In questo caso una partizione di rete ha isolato il vecchio Master M1, quindi la replica R2 è promossa per Master. Tuttavia i clienti, come C1, che sono nella stessa partizione del vecchio maestro, possono continuare a scrivere dati sul vecchio maestro. Questi dati andranno persi per sempre da quando la partizione guarirà, il master verrà riconfigurato come una replica del nuovo maestro, scartando il suo set di dati.
Questo problema può essere mitigato utilizzando la seguente funzionalità di replica di Redis, che consente di interrompere le scritture se un master rileva che non è più in grado di trasferire le sue scritture al numero specificato di repliche.
min-replicas-to-write 1 min-replicas-max-lag 10
Con la configurazione sopra (consultare Redis autocommentato.Conf Esempio nella distribuzione di Redis per ulteriori informazioni) Un'istanza Redis, quando agisce come maestro, smetterà di accettare le scritture se non può scrivere su almeno 1 replica. Poiché la replica è asincrona non essere in grado di scrivere in realtà significa che la replica è disconnessa o non ci sta inviando riconoscimenti asincroni per più del numero massimo di secondi specificato di secondi.
Usando questa configurazione, il vecchio Redis Master M1 nell'esempio sopra, diventerà non disponibile dopo 10 secondi. Quando la partizione guarisce, la configurazione Sentinel converge in quella nuova, il client C1 sarà in grado di recuperare una configurazione valida e continuerà con il nuovo master.
Tuttavia non c'è pranzo gratuito. Con questo raffinamento, se le due repliche sono in calo, il maestro smetterà di accettare le scritture. È un compromesso.
Esempio 3: Sentinel nelle caselle client
A volte abbiamo solo due scatole Redis disponibili, una per il Master e una per la replica. La configurazione nell'esempio 2 non è praticabile in quel caso, quindi possiamo ricorrere a quanto segue, in cui i sentinelle sono posizionati dove sono i clienti:
+----+ +----+ | M1 | ----+---- | R1 | | | | | | + ----+ | + ----+ | +------------+------------+| | | | | | + ----++ ----++ ----+ | C1 | | C2 | | C3 | | S1 | | S2 | | S3 | + ----++ ----++ ----+ Configurazione: quorum = 2
In questa configurazione, il punto di vista Sentinels è lo stesso dei clienti: se un maestro è raggiungibile dalla maggior parte dei clienti, va bene. C1, C2, C3 Ecco client generici, non significa che C1 identifichi un singolo client collegato a Redis. È più probabile che qualcosa di simile a un server delle applicazioni, un'app di binari o qualcosa del genere.
Se la casella in cui M1 e S1 eseguono falliscono, il failover avverrà senza problemi, tuttavia è facile vedere che diverse partizioni di rete si tradurranno in comportamenti diversi. Ad esempio, Sentinel non sarà in grado di configurare se la rete tra i client e i server Redis è disconnessa, poiché Redis Master e Replica non saranno entrambi disponibili.
Si noti che se C3 viene partizionato con M1 (difficilmente possibile con la rete sopra descritta, ma molto probabilmente possibile con layout diversi, o a causa di fallimenti nel livello del software), abbiamo un problema simile a quello descritto nell'esempio 2, con la differenza che qui non abbiamo modo di rompere la simmetria, non è mai disponibile durante la replica, non è mai disponibile durante la replica durante la replica, non è mai disponibile durante la replica durante la replica.
Quindi questa è una configurazione valida ma l'installazione nell'esempio 2 presenta vantaggi come il sistema HA di Redis che corre nelle stesse caselle dello stesso Redis che può essere più semplice da gestire e la capacità di mettere un limite al tempo che un maestro nella partizione di minoranza può ricevere.
Esempio 4: lato client Sentinel con meno di tre client
L'impostazione descritta nell'esempio 3 non può essere utilizzata se ci sono meno di tre caselle nel lato client (ad esempio tre server Web). In questo caso dobbiamo ricorrere a una configurazione mista come la seguente:
+----+ +----+ | M1 | ----+---- | R1 | | S1 | | | S2 | + ----+ | + ----+ | +------+-----+| | | | + ----++ ----+ | C1 | | C2 | | S3 | | S4 | + ----++ ----+ Configurazione: quorum = 3
Questo è simile alla configurazione nell'esempio 3, ma qui eseguiamo quattro sentinelle nelle quattro caselle che abbiamo a disposizione. Se il maestro M1 diventa non disponibile, gli altri tre sentinelle eseguiranno il failover.
In teoria questa configurazione funziona rimuovendo la casella in cui sono in esecuzione C2 e S4 e impostando il quorum su 2. Tuttavia è improbabile che vogliamo HA nel lato Redis senza avere un'alta disponibilità nel nostro livello di applicazione.
Sentinel, Docker, Nat e possibili problemi
Docker utilizza una tecnica chiamata mappatura delle porte: i programmi in esecuzione all'interno dei contenitori Docker possono essere esposti con una porta diversa rispetto a quella che il programma ritiene utilizzo. Ciò è utile per eseguire più contenitori utilizzando le stesse porte, allo stesso tempo, nello stesso server.
Docker non è l'unico sistema software in cui ciò accade, ci sono altre configurazioni di traduzione degli indirizzi di rete in cui le porte possono essere remappate e talvolta non le porte ma anche gli indirizzi IP.
Rimapping Porte e indirizzi crea problemi con Sentinel in due modi:
- Sentinel Auto-Discovery di altre sentinelle non funziona più, poiché si basa su Ciao Messaggi in cui ogni sentinella annuncia in quale porta e indirizzo IP stanno ascoltando la connessione. Tuttavia, i sentinelle non hanno modo di capire che un indirizzo o una porta viene remappato, quindi sta annunciando un'informazione che non è corretta per gli altri sentinelle da connettersi.
- Le repliche sono elencate nell'output delle informazioni di un master Redis in modo simile: l'indirizzo viene rilevato dal master che controlla il peer remoto della connessione TCP, mentre la porta è pubblicizzata dalla replica stessa durante la mano di mano.
Dal momento che Sentinels Auto rileva le repliche utilizzando le informazioni sull'output di Masters Information, le repliche rilevate non saranno raggiungibili e Sentinel non sarà mai in grado di failover del master, poiché non esistono buone repliche dal punto di vista del sistema, quindi non c'è modo di monitorare con Sentinel una serie di istanze master e replica distribuite con docker Docker, A meno che non istruisci Docker di mappare la porta 1: 1.
Per il primo problema, nel caso in cui si desideri eseguire un set di istanze Sentinel utilizzando Docker con porte inoltrate (o qualsiasi altra configurazione NAT in cui le porte sono rimappate), è possibile utilizzare le seguenti due direttive di configurazione Sentinel per costringere Sentinel ad annunciare un set specifico di IP e porta:
Sentinel Annuncia-IP Sentinel Annunce-Port
Si noti che Docker ha la capacità di eseguire Modalità di rete host (Controlla l'opzione --net = host per ulteriori informazioni). Questo non dovrebbe creare problemi poiché le porte non sono rimborsate in questa configurazione.
Indirizzi IP e nomi DNS
Le versioni precedenti di Sentinel non hanno supportato i nomi host e gli indirizzi IP richiesti da specificare ovunque. A partire dalla versione 6.2, Sentinel ha opzionale Supporto per i nomi host.
Questa capacità è disabilitata per impostazione predefinita. Se hai intenzione di abilitare il supporto DNS/Hostnames, nota:
- La configurazione della risoluzione del nome sui nodi Redis e Sentinel deve essere affidabile ed essere in grado di risolvere rapidamente gli indirizzi. Ritardi imprevisti nella risoluzione dell'indirizzo possono avere un impatto negativo su Sentinel.
- Dovresti utilizzare nomi host ovunque ed evitare di miscelare nomi host e indirizzi IP. Per fare ciò, usa Replica-Annucce-IP e Sentinel Annuncia-IP per tutte le istanze Redis e Sentinel, rispettivamente.
Abilitare la configurazione globale di resolve-hostnames consente a Sentinel di accettare i nomi host:
- Come parte di un comando Sentinel Monitor
- Come indirizzo di replica, se la replica utilizza un valore del nome host per replica-Annucce-IP
Sentinel accetterà i nomi host come input validi e li risolverà, ma si riferirà comunque agli indirizzi IP quando si annuncia un'istanza, aggiornando i file di configurazione, ecc.
Abilitare la configurazione globale di Annunce-Hostnames fa invece utilizzare i nomi host Sentinel. Ciò influisce sulle risposte ai client, i valori scritti in file di configurazione, il comando replicaf emesso a replicas, ecc.
Questo comportamento potrebbe non essere compatibile con tutti i clienti Sentinel, che potrebbe aspettarsi esplicitamente un indirizzo IP.
L'uso dei nomi host può essere utile quando i client utilizzano TLS per connettersi alle istanze e richiedere un nome anziché un indirizzo IP per eseguire il certificato di corrispondenza ASN.
Un rapido tutorial
Nelle sezioni successive di questo documento, tutti i dettagli su API Sentinel, La configurazione e la semantica saranno coperte in modo incrementale. Tuttavia, per le persone che vogliono giocare con il sistema al più presto, questa sezione è un tutorial che mostra come configurare e interagire con 3 istanze Sentinel.
Qui supponiamo che le istanze siano eseguite alla porta 5000, 5001, 5002. Presumiamo anche che tu abbia un Master Redis in esecuzione alla porta 6379 con una replica in esecuzione alla porta 6380. Useremo l'indirizzo di loopback IPv4 127.0.0.1 ovunque durante il tutorial, supponendo che tu stia eseguendo la simulazione sul tuo personal computer.
I tre file di configurazione Sentinel dovrebbero apparire come i seguenti:
Porta 5000 Sentinel Monitor Mymaster 127.0.0.1 6379 2 sentinel down-dopo-millisecondi Mymaster 5000 Sentinel Faithover-timeout mymaster 60000 Sentinel Syncs parallele Mymaster 1
Gli altri due file di configurazione saranno identici ma utilizzando 5001 e 5002 come numeri di porta.
Alcune cose da notare sulla configurazione sopra:
- Il set master si chiama mymaster . Identifica il maestro e le sue repliche. Dal momento che ciascuno set master Ha un nome diverso, Sentinel può monitorare contemporaneamente diversi set di maestri e repliche.
- Il Quorum è stato impostato sul valore di 2 (ultimo argomento della direttiva di configurazione del monitor Sentinel).
- Il valore di down-dopo i prefiniti è di 5000 millisecondi, ovvero 5 secondi, quindi i maestri verranno rilevati come falliti non appena non riceveremo alcuna risposta dai nostri ping entro questo periodo.
Una volta avviati le tre sentinelle, vedrai alcuni messaggi che registrano, come:
+Monitora Master Mymaster 127.0.0.1 6379 Quorum 2
Questo è un evento Sentinel e puoi ricevere questo tipo di eventi tramite pub/sub se ti iscrivi al nome dell'evento come specificato in seguito in Messaggi pub/sub sezione.
Sentinel genera e registra eventi diversi durante il rilevamento e il failover di fallimento.
Chiedere a Sentinel lo stato di un maestro
La cosa più ovvia da fare con Sentinel per iniziare, è verificare se il master sta monitorando bene:
$ Redis -cli -p 5000 127.0.0.1: 5000> Sentinel Master Mymaster 1) "Nome" 2) "Mymaster" 3) "IP" 4) "127.0.0.1" 5) "port" 6) "6379" 7) "runid" 8) "953ae6a589449c13ddefaee3538d356d287f509b" 9) "flags" 10) "master" 11) "link-pending-commands" 12) "0" 13) "link-refcount" 14) "1" 15) "last-ping-sent" 16) "0" 17) "last-ok-ping-reply" 18) "735" 19) "last-ping-reply" 20) "735" 21) "down-after-milliseconds" 22) "5000" 23) "info-refresh" 24) "126" 25) "role-reported" 26) "master" 27) "role-reported-time" 28) "532439" 29) "config-epoch" 30) "1" 31) "num-slaves" 32) "1" 33) "num-other-sentinels" 34) "2" 35) "quorum" 36) "2" 37) "failover-timeout" 38) "60000" 39) "parallel-syncs" 40) "1"
Come puoi vedere, stampa una serie di informazioni sul maestro. Ci sono alcuni che sono di particolare interesse per noi:
- Num-Other-Sentinels è 2, quindi sappiamo che la sentinella ha già rilevato altre due sentinelle per questo maestro. Se controlli i registri vedrai gli eventi +Sentinel generati.
- Le bandiere sono solo padroni . Se il maestro fosse giù, potremmo aspettarci di vedere anche S_Down o O_down Flag.
- Gli schiavi num sono stati impostati correttamente su 1, quindi Sentinel ha anche rilevato che esiste una replica allegata al nostro maestro.
Per esplorare di più su questa istanza, potresti voler provare i seguenti due comandi:
Sentinel Replicas Mymaster Sentinel Sentinels Mymaster
Il primo fornirà informazioni simili sulle repliche connesse al master e la seconda sulle altre sentinelle.
Ottenere l'indirizzo dell'attuale master
Come abbiamo già specificato, Sentinel funge anche da fornitore di configurazione per i client che desiderano connettersi a un set di master e repliche. A causa di possibili failover o riconfigurazioni, i clienti non hanno idea di chi sia il maestro attualmente attivo per un determinato set di istanze, quindi Sentinel esporta un'API per porre questa domanda:
127.0.0.1: 5000> Sentinel Get-Master-addr-by-name Mymaster 1) "127.0.0.1 "2)" 6379 "
Testare il failover
A questo punto la nostra distribuzione Sentinel Toy è pronta per essere testata. Possiamo solo uccidere il nostro master e verificare se la configurazione cambia. Per farlo possiamo solo fare:
Redis -cli -p 6379 Debug Sleep 30
Questo comando renderà il nostro maestro non più raggiungibile, dormendo per 30 secondi. Fondamentalmente simula un maestro sospeso per qualche motivo.
Se controlli i registri Sentinel, dovresti essere in grado di vedere molte azioni:
- Ogni sentinella rileva che il master è giù con un evento di sdown.
- Questo evento viene successivamente intensificato a +odown, il che significa che più sentinelle concordano sul fatto che il maestro non è raggiungibile.
- Sentinel vota una sentinella che inizierà il primo tentativo di failover.
- Il failover avviene.
Se chiedi di nuovo qual è l'attuale indirizzo principale per Mymaster, alla fine dovremmo ottenere una risposta diversa questa volta:
127.0.0.1: 5000> Sentinel Get-Master-addr-by-name Mymaster 1) "127.0.0.1 "2)" 6380 "
Fin qui tutto bene. A questo punto è possibile saltare per creare la distribuzione Sentinel o poter leggere di più per comprendere tutti i comandi e gli interni Sentinel.
API Sentinel
Sentinel fornisce un'API al fine di ispezionare il proprio stato, controllare la salute dei maestri e delle repliche monitorate, iscriviti per ricevere notifiche specifiche e modificare la configurazione Sentinel in fase di esecuzione.
Per impostazione predefinita Sentinel esegue utilizzando la porta TCP 26379 (si noti che 6379 è la porta Redis normale). Sentinels accetta comandi utilizzando il protocollo Redis, quindi è possibile utilizzare Redis-Cli o qualsiasi altro client Redis non modificato per parlare con Sentinel.
È possibile interrogare direttamente una sentinella per verificare qual è lo stato delle istanze di Redis monitorate dal suo punto di vista, per vedere cosa sa cosa sa e così via. In alternativa, usando pub/sub, è possibile ricevere Push Style Notifiche da sentinelle, ogni volta che si verificano un evento, come un failover o un'istanza che entra in una condizione di errore e così via.
Comandi sentinella
Il comando Sentinel è l'API principale per Sentinel. Di seguito è riportato l'elenco dei suoi sottocomando (è nota la versione minima per dove applicabile):
- Sentinel Config Get (> = 6.2) Ottieni il valore corrente di un parametro di configurazione Sentinel globale. Il nome specificato può essere un jolly, simile al comando Redis Config Get.
- Sentinel Config Set (> = 6.2) Imposta il valore di un parametro di configurazione Sentinel globale.
- Sentinel Ckquorum Controlla se l'attuale configurazione di Sentinel è in grado di raggiungere il quorum necessario per il failover un master e la maggioranza necessaria per autorizzare il failover. Questo comando deve essere utilizzato nei sistemi di monitoraggio per verificare se una distribuzione Sentinel è OK.
- Sentinel FlushConfig Force Sentinel a riscrivere la sua configurazione sul disco, incluso l'attuale stato di Sentinel. Normalmente Sentinel riscrive la configurazione ogni volta che qualcosa cambia nel suo stato (nel contesto del sottoinsieme dello stato che è persistito sul disco attraverso il riavvio). Tuttavia, a volte è possibile che il file di configurazione sia perso a causa di errori operativi, guasti del disco, script di aggiornamento del pacchetto o gestori di configurazione. In questi casi è utile un modo per costringere Sentinel a riscrivere il file di configurazione. Questo comando funziona anche se il file di configurazione precedente è completamente mancante.
- Il failover Sentinel forza un failover come se il master non fosse raggiungibile, e senza chiedere un accordo ad altri sentinelle (tuttavia una nuova versione della configurazione verrà pubblicata in modo che gli altri sentinelle aggiornino le loro configurazioni).
- Sentinel Get-Master-addr-by-name restituisce il numero IP e la porta del master con quel nome. Se un failover è in corso o terminato correttamente per questo maestro restituisce l'indirizzo e il porto della replica promossa.
- Sentinel Info-Cache (> = 3.2) Restituisci l'output di informazioni memorizzate nella memorizzazione nella cache da Masters e Replicas.
- Sentinel IS-Master-down per Addr Controlla se il master specificato da IP: la porta è in calo dal punto di vista di Sentinel corrente. Questo comando è principalmente per uso interno.
- Sentinel Master mostra lo stato e le informazioni del master specificato.
- Sentinel Masters Mostra un elenco di maestri monitorati e il loro stato.
- Monitor Sentinel Inizia il monitoraggio di Sentinel. Fare riferimento a Riconfigurare Sentinel in fase di esecuzione sezione per ulteriori informazioni.
- Sentinel Myid (> = 6.2) Restituisci l'ID dell'istanza Sentinel.
- Sentinel in pendenza-script Questo comando restituisce informazioni sugli script in sospeso.
- Sentinel Rimuovi Ferma il monitoraggio di Sentinel. Fare riferimento a Riconfigurare Sentinel in fase di esecuzione sezione per ulteriori informazioni.
- Repliche Sentinel (> = 5.0) Mostra un elenco di repliche per questo maestro e il loro stato.
- Sentinel Sentinels mostra un elenco di istanze di Sentinel per questo maestro e il loro stato.
- Sentinel set Imposta la configurazione di monitoraggio di Sentinel. Fare riferimento a Riconfigurare Sentinel in fase di esecuzione sezione per ulteriori informazioni.
- Sentinel Simulate-Failure (Crash-After-election | Crash-After-Promotion | Guida) (> = 3.2) Questo comando simula diversi scenari di crash di Sentinel.
- Reset Sentinel Questo comando ripristinerà tutti i maestri con il nome corrispondente. L'argomento pattern è uno schema in stile glob. Il processo di ripristino cancella qualsiasi stato precedente in un master (incluso un failover in corso) e rimuove ogni replica e sentinella già scoperta e associata al master.
Ai fini della gestione della connessione e dell'amministrazione, Sentinel supporta il seguente sottoinsieme dei comandi di Redis:
- ACL (> = 6.2) Questo comando gestisce l'elenco di controllo degli accessi Sentinel. Per ulteriori informazioni, consultare la pagina della documentazione ACL e Autenticazione dell'elenco di controllo degli accessi Sentinel.
- AUTH (> = 5.0.1) Autentica una connessione client. Per ulteriori informazioni, consultare il comando AUTH e il Configurazione di istanze Sentinel con autenticazione sezione.
- CLIENTE Questo comando gestisce le connessioni client. Per ulteriori informazioni, consultare le pagine dei suoi sottocombi.
- COMANDO (> = 6.2) Questo comando restituisce informazioni sui comandi. Per ulteriori informazioni, consultare il comando di comando e i suoi vari sottocombi.
- CIAO (> = 6.0) Passa il protocollo della connessione. Per ulteriori informazioni, consultare il comando Hello.
- INFORMAZIONI Restituisci informazioni e statistiche sul server Sentinel. Per ulteriori informazioni, consultare il comando Info.
- Ping Questo comando restituisce semplicemente pong.
- RUOLO Questo comando restituisce la stringa "Sentinel" e un elenco di maestri monitorati. Per ulteriori informazioni, consultare il comando del ruolo.
- FERMARE Chiudi l'istanza Sentinel.
Infine, Sentinel supporta anche i comandi di abbonamento, annulla. Fare riferimento a Messaggi pub/sub sezione per maggiori dettagli.
Riconfigurare Sentinel in fase di esecuzione
A partire da Redis versione 2.8.4, Sentinel fornisce un'API per aggiungere, rimuovere o modificare la configurazione di un determinato master. Nota che se hai più sentinelle è necessario applicare le modifiche a tutti alle tue istanze affinché Redis Sentinel funzioni correttamente. Ciò significa che la modifica della configurazione di una singola sentinella non propaga automaticamente le modifiche agli altri sentinelle nella rete.
Di seguito è riportato un elenco di sottocombi Sentinel utilizzati per aggiornare la configurazione di un'istanza Sentinel.
- Sentinel Monitor Questo comando dice a Sentinel di iniziare a monitorare un nuovo master con il nome, IP, la porta e il quorum specificati. È identico alla direttiva di configurazione del monitor Sentinel in Sentinel.File di configurazione di configurazione, con la differenza che non è possibile utilizzare un nome host in AS IP, ma è necessario fornire un indirizzo IPv4 o IPv6.
- Il sentinella rimuove viene utilizzato per rimuovere il master specificato: il master non verrà più monitorato e verrà totalmente rimosso dallo stato interno del sentinella, quindi non sarà più elencato da Sentinel Masters e così via.
- Sentinel set [ . " Il comando set è molto simile al comando di configurazione di Redis e viene utilizzato per modificare i parametri di configurazione di un master specifico. È possibile specificare più coppie di opzioni / valori (o nessuna). Tutti i parametri di configurazione che possono essere configurati tramite Sentinel.I conf sono anche configurabili utilizzando il comando set.
Di seguito è riportato un esempio di comando Sentinel SET per modificare la configurazione di down-after-millisecondi di un master chiamato oggetti-cache:
Sentinel Set Objects-Cache-Master Down-After-milliseconds 1000
Come già detto, Sentinel Set può essere utilizzato per impostare tutti i parametri di configurazione che sono impostabili nel file di configurazione di avvio. Inoltre è possibile modificare solo la configurazione del Quorum principale senza rimuovere e riagganciare il master con Sentinel Rimuovi seguito da Sentinel Monitor, ma semplicemente utilizzando:
Sentinel Set Objects-Cache-Master Quorum 5
Si noti che non esiste un comando GET equivalente poiché Sentinel Master fornisce tutti i parametri di configurazione in un formato semplice da analizzare (come array di coppie di campo/valore).
A partire da Redis versione 6.2, Sentinel consente inoltre di ottenere e impostare i parametri di configurazione globali che sono stati supportati solo nel file di configurazione prima di.
- Sentinel Config Ottieni il valore corrente di un parametro di configurazione Sentinel globale. Il nome specificato può essere un jolly, simile al comando Redis Config Get.
- Sentinel Config Set Imposta il valore di un parametro di configurazione Sentinel globale.
I parametri globali che possono essere manipolati includono:
- Risolvi-ospiti, annunciano-hostnames . Vedere Indirizzi IP e nomi DNS.
- ANNUCCHI-IP, ANNUCK-PORT . Vedere Sentinel, Docker, Nat e possibili problemi.
- Sentinel-User, Sentinel-Pass . Vedere Configurazione di istanze Sentinel con autenticazione.
Aggiunta o rimozione di sentinelle
L'aggiunta di una nuova Sentinel alla distribuzione è un semplice processo a causa del meccanismo di scoperto automatico implementato da Sentinel. Tutto quello che devi fare è avviare la nuova sentinella configurata per monitorare il master attualmente attivo. Entro 10 secondi la sentinella acquisirà l'elenco di altre sentinelle e l'insieme di repliche allegate al master.
Se è necessario aggiungere più sentinelle contemporaneamente, si suggerisce di aggiungerlo uno dopo l'altro, in attesa che tutte le altre sentinelle possano già conoscere il primo prima di aggiungere il prossimo. Ciò è utile per garantire ancora che la maggioranza possa essere raggiunta solo da una parte di una partizione, nel caso in cui dovrebbero verificarsi guasti nel processo di aggiunta di nuove sentinelle.
Ciò può essere facilmente ottenuto aggiungendo ogni nuovo sentinella con un ritardo di 30 secondi e durante l'assenza di partizioni di rete.
Alla fine del processo è possibile utilizzare il comando Sentinel Mastername Master per verificare se tutte le sentinelle concordano sul numero totale di sentinelle che monitorano il master.
Rimozione di una sentinella è un po 'più complesso: I sentinelle non dimenticano mai le sentinelle già viste, Anche se non sono raggiungibili per molto tempo, dal momento che non vogliamo cambiare dinamicamente la maggioranza necessaria per autorizzare un failover e la creazione di un nuovo numero di configurazione. Quindi, al fine di rimuovere una sentinella, i seguenti passaggi dovrebbero essere eseguiti in assenza di partizioni di rete:
- Fermare il processo sentinella della sentinella che si desidera rimuovere.
- Invia un comando Sentinel Reset * a tutte le altre istanze Sentinel (anziché * È possibile utilizzare il nome master esatto se si desidera ripristinare un solo master). Uno dopo l'altro, in attesa di almeno 30 secondi tra i casi.
- Verificare che tutte le sentinelle siano d'accordo sul numero di sentinelle attualmente attivi, ispezionando l'output di Sentinel Master Mastername di ogni Sentinel.
Rimozione del vecchio maestro o repliche irraggiungibili
I sentinelle non dimenticano mai le repliche di un determinato maestro, anche quando sono irraggiungibili per molto tempo. Ciò è utile, perché i sentinelle dovrebbero essere in grado di riconfigurare correttamente una replica di ritorno dopo una partizione di rete o un evento di errore.
Inoltre, dopo un failover, il maestro non riuscito viene praticamente aggiunto come replica del nuovo maestro, in questo modo verrà riconfigurato per replicare con il nuovo maestro non appena sarà disponibile di nuovo.
Tuttavia a volte si desidera rimuovere una replica (che potrebbe essere il vecchio maestro) per sempre dall'elenco delle repliche monitorate da Sentinel.
Per fare ciò, è necessario inviare un comando MasterName reset Sentinel a tutti i sentinelle: aggiorneranno l'elenco delle repliche entro i successivi 10 secondi, aggiungendo solo quelli elencati come replicando correttamente dall'output di informazioni master corrente.
Messaggi pub/sub
Un client può utilizzare un Sentinel come pub/sub-server compatibile con Redis (ma non è possibile utilizzare Publish) per iscriverti o PSUBScrizza ai canali e ricevere una notifica su eventi specifici.
Il nome del canale è lo stesso del nome dell'evento. Ad esempio, il canale denominato +sdown riceverà tutte le notifiche relative alle istanze che entrano in un sdown (sdown significa che l'istanza non è più raggiungibile dal punto di vista della sentinella che si sta interrogando).
Per ottenere tutti i messaggi semplicemente iscriviti utilizzando PSUBscrip * .
Di seguito è riportato un elenco di canali e formati di messaggi che puoi ricevere utilizzando questa API. La prima parola è il nome del canale / evento, il resto è il formato dei dati.
Nota: dove Dettagli di istanza è specificato, ciò significa che vengono forniti i seguenti argomenti per identificare l'istanza target:
La parte che identifica il master (dall'argomento @ alla fine) è facoltativa ed è specificata solo se l'istanza non è un maestro stesso.
- +reset-master-- Il master è stato ripristinato.
- +schiavo-- È stata rilevata e collegata una nuova replica.
- +slaves-reconf di failover-reconf-- Lo stato di failover è cambiato in Reconf-Slaves State.
- +rilevato da failover-- È stato rilevato un failover avviato da un'altra sentinella o qualsiasi altra entità esterna (una replica allegata trasformata in un maestro).
- +Slave-Reconf-Sent-- Il leader Sentinel ha inviato il comando replicaf in questa istanza per riconfigurarlo per la nuova replica.
- +slave-reconf-inprog-- La replica che viene riconfigurata ha mostrato una replica della nuova coppia di porte Master IP: ma il processo di sincronizzazione non è ancora completo.
- +slave-reconf-done-- La replica è ora sincronizzata con il nuovo maestro.
- -dup-sentinel-- Una o più sentinelle per il master specificato sono state rimosse come duplicate (questo accade ad esempio quando viene riavviata un'istanza Sentinel).
- +sentinella-- È stata rilevata e allegata una nuova sentinella per questo maestro.
- +sdown-- L'istanza specificata è ora nello stato soggettivamente in basso.
- -sdown-- L'istanza specificata non è più nello stato soggettivamente in basso.
- +Odown-- L'istanza specificata è ora nello stato oggettivamente in basso.
- -Odown-- L'istanza specificata non è più nello stato oggettivamente verso il basso.
- +new-epoch-- L'epoca attuale è stata aggiornata.
- +Try-Failover-- Nuovo failover in corso, in attesa di essere eletto dalla maggioranza.
- +leader eletto-- Ha vinto le elezioni per l'epoca specificata, può fare il failover.
- +Slave-Stect-Select-Stect-- Il nuovo stato di failover è selezionato-slave: stiamo cercando di trovare una replica adatta per la promozione.
- non slave-- Non esiste una buona replica da promuovere. Attualmente ci proveremo dopo un po 'di tempo, ma probabilmente questo cambierà e la macchina statale aborterà il failover in questo caso.
- Slave selezionato-- Abbiamo trovato la buona replica specificata da promuovere.
- I failover-State-Send-Slaveof-Noone-- Stiamo cercando di riconfigurare la replica promossa come maestro, in attesa che cambi.
- Failover-end-for-timeout-- Il failover terminato per il timeout, le repliche verranno infine configurate per replicare comunque con il nuovo master.
- fallimento-- Il failover si è concluso con successo. Tutte le repliche sembrano essere riconfigurate per replicare con il nuovo master.
- Switch-Master-- Il nuovo IP e l'indirizzo Master è quello specificato dopo una modifica della configurazione. Questo è Il messaggio è interessato alla maggior parte degli utenti esterni.
- +inclinare -- Modalità inclinazione immessa.
- -inclinare -- La modalità di inclinazione è uscita.
Gestione dello stato busy
L'errore -busy viene restituito da un'istanza Redis quando uno script LUA è in esecuzione per più tempo rispetto al limite di tempo di script LUA configurato. Quando ciò accade prima di attivare un fallimento su Redis Sentinel proverà a inviare un comando di uccisione di script, ciò avrà successo solo se lo script è stato di sola lettura.
Se l'istanza è ancora in una condizione di errore dopo questo tentativo, alla fine non sarà riuscito.
Priorità di repliche
Le istanze Redis hanno un parametro di configurazione chiamato replica-priorità . Queste informazioni sono esposte dalle istanze di replica di Redis nella loro produzione di informazioni e Sentinel la utilizza per scegliere una replica tra quelle che possono essere utilizzate per il failover un master:
- Se la priorità della replica è impostata su 0, la replica non viene mai promossa per padroneggiare.
- Repliche con a inferiore Il numero di priorità è preferito da Sentinel.
Ad esempio, se esiste una replica S1 nello stesso data center dell'attuale maestro e un'altra replica S2 in un altro data center, è possibile impostare S1 con una priorità di 10 e S2 con una priorità di 100, in modo che se il master guasta e sia S1 e S2.
Per ulteriori informazioni sul modo in cui vengono selezionate le repliche, consultare il Selezione e priorità replica sezione di questa documentazione.
Autenticazione Sentinel e Redis
Quando il master è configurato per richiedere l'autenticazione dai client, come misura di sicurezza, le repliche devono anche essere a conoscenza delle credenziali al fine di autenticarsi con il master e creare la connessione Master-Replica utilizzata per il protocollo di replica asincrona.
Autenticazione dell'elenco di controllo degli accessi Redis
A partire da Redis 6, l'autenticazione dell'utente e l'autorizzazione sono gestite con l'elenco di controllo degli accessi (ACL).
Affinché Sentinels possa connettersi alle istanze del server Redis quando sono configurate con ACL, la configurazione Sentinel deve includere le seguenti direttive:
Sentinel Auth utente Sentinel Auth-Pass
Dove e sono il nome utente e la password per accedere alle istanze del gruppo. Queste credenziali dovrebbero essere fornite su tutte le istanze Redis del gruppo con le autorizzazioni di controllo minime. Per esempio:
127.0.0.1: 6379> ACL SETUSER SENTINEL USER ON> SomePassword AllCannels +Multi +Slaveof +Ping +Exec +Iscriviti +Configura
Autenticazione solo per la password Redis
Fino a Redis 6, l'autenticazione viene raggiunta utilizzando le seguenti direttive di configurazione:
- RequisitePass nel master, al fine di impostare la password di autenticazione e per assicurarsi che l'istanza non elaborirà le richieste per client non autenticati.
- Masteruth nelle repliche affinché le repliche si autengano con il master per replicare correttamente i dati da esso.
Quando viene utilizzato Sentinel, non esiste un singolo maestro, poiché dopo che una replica di failover può svolgere il ruolo dei maestri, e i vecchi maestri possono essere riconfigurati per agire come repliche, quindi ciò che vuoi fare è impostare le direttive di cui sopra in tutte le tue istanze, sia i master che le repliche.
Questo è anche di solito una configurazione sana poiché non si desidera proteggere i dati solo nel master, con gli stessi dati accessibili nelle repliche.
Tuttavia, nel caso insolito in cui hai bisogno di una replica accessibile senza autenticazione, puoi ancora farlo impostando una priorità replica di zero, Per evitare che questa replica venga promossa a padroneggiare e configurare in questa replica solo la direttiva Masteruth, senza utilizzare la direttiva requisito, in modo che i dati siano leggibili da client non autenticati.
Affinché Sentinels possa connettersi alle istanze del server Redis quando sono configurate con RecovePass, la configurazione Sentinel deve includere la direttiva Sentinel Auth-Pass, nel formato:
Sentinel Auth-Pass
Configurazione di istanze Sentinel con autenticazione
Le stesse istanze di Sentinel possono essere protette richiedendo ai clienti di autenticarsi tramite il comando AUTH. A partire da Redis 6.2, è disponibile l'elenco di controllo degli accessi (ACL), mentre le versioni precedenti (a partire da Redis 5.0.1) Supportare l'autenticazione solo password.
Si noti che la configurazione di autenticazione di Sentinel dovrebbe essere applicato a ciascuna delle istanze nella tua distribuzione, e Tutte le istanze dovrebbero utilizzare la stessa configurazione. Inoltre, l'autenticazione ACL e solo password non deve essere utilizzata insieme.
Autenticazione dell'elenco di controllo degli accessi Sentinel
Il primo passo per garantire un'istanza Sentinel con ACL è impedire qualsiasi accesso non autorizzato ad esso. Per fare ciò, dovrai disabilitare il superutente predefinito (o almeno configurarlo con una password forte) e crearne una nuova e consentirgli di accedere ai canali pub/sub:
127.0.0.1: 5000> ACL setuser admin on> admin-password allchannels +@all ok 127.0.0.1: 5000> ACL Setuser Predefinito OK
L'utente predefinito viene utilizzato da Sentinel per connettersi ad altre istanze. È possibile fornire alle credenziali di un altro superutente le seguenti direttive di configurazione:
Sentinel Sentinel User Sentinel Sentinel-Pass
Dove e sono il superutente e la password del sentinella, rispettivamente (E.G. Amministratore e Amministratore-Password nell'esempio sopra).
Infine, per l'autenticazione delle connessioni client in arrivo, è possibile creare un profilo utente limitato Sentinel come quanto segue:
127.0.0.1: 5000> ACL SetuSer Sentinel User on> User-Password-@All +Auth +Client | GetName +Client | Id +Client | SetName +comando +Ciao ping +Role +Sentinel | Get-Master-Addr-By-Name +Sentinel | Master +Sentinel | Myid +Sentinel | Replicas +Sentinel | Sentinel
Fare riferimento alla documentazione del cliente Sentinel preferito per ulteriori informazioni.
Autenticazione Sentinel solo password
Per utilizzare Sentinel con autenticazione solo password, aggiungi la direttiva di configurazione requisito a Tutto Le tue istanze Sentinel come segue:
RequisitePass "Your_Password_here"
Se configurati in questo modo, Sentinels farà due cose:
- Sarà richiesta una password dai client per inviare comandi a Sentinels. Ciò è ovvio poiché è così che tale direttiva di configurazione funziona in Redis in generale.
- Inoltre, la stessa password configurata per accedere al sentinella locale, verrà utilizzata da questa istanza Sentinel per autenticarsi in tutte le altre istanze Sentinel a cui si collega.
Ciò significa che Dovrai configurare la stessa password requisito in tutte le istanze Sentinel. In questo modo ogni sentinella può parlare con ogni altra sentinella senza alcuna necessità di configurare per ogni sentinella la password per accedere a tutte le altre sentinelle, che sarebbe molto poco pratico.
Prima di utilizzare questa configurazione, assicurarsi che la libreria client possa inviare il comando di autore alle istanze Sentinel.
Implementazione dei clienti Sentinel
Sentinel richiede un supporto esplicito del client, a meno che il sistema non sia configurato per eseguire uno script che esegue un reindirizzamento trasparente di tutte le richieste alla nuova istanza principale (IP virtuale o altri sistemi simili). L'argomento dell'implementazione delle biblioteche dei clienti è trattato nelle linee guida per i clienti Sentinel del documento.
Concetti più avanzati
Nelle sezioni seguenti tratteremo alcuni dettagli su come funziona Sentinel, senza ricorrere ai dettagli di implementazione e agli algoritmi che saranno trattati nella parte finale di questo documento.
Stato e di fallimento di Odown State
Redis Sentinel ha due concetti diversi di essere giù, Uno si chiama A Soggettivamente giù condizione (sdown) ed è una condizione down che è locale per una determinata istanza di Sentinel. Un altro si chiama Oggettivamente giù condizione (odown) e viene raggiunto quando abbastanza sentinelle (almeno il numero configurato come parametro Quorum del master monitorato) ha una condizione di sdown e ricevi feedback da altri sentinelle usando il comando sentinel è-maestro per drD.
Dal punto di vista di una sentinella viene raggiunta una condizione di sdown quando non riceve una risposta valida alle richieste di ping per il numero di secondi specificati nella configurazione come parametro IS-Master-down-down-after-millisecondi.
Una risposta accettabile a Ping è una delle seguenti:
- Ping ha risposto con +pong.
- Ping ha risposto con -oading Errore.
- Ping ha risposto con l'errore di -Masterdown.
Qualsiasi altra risposta (o nessuna risposta) è considerata non valida. Tuttavia notlo Un maestro logico che si pubblicizza come una replica nell'output delle informazioni è considerato giù.
Si noti che SDown richiede che non sia stata ricevuta alcuna risposta accettabile per l'intero intervallo configurato, quindi ad esempio se l'intervallo è di 30000 millisecondi (30 secondi) e riceviamo una risposta di ping accettabile ogni 29 secondi, l'istanza è considerata funzionante.
Sdown non è sufficiente per attivare un failover: significa solo che una singola sentinella ritiene che un'istanza di Redis non sia disponibile. Per innescare un failover, lo stato di Odown deve essere raggiunto.
Per passare da sdown a odown non viene utilizzato algoritmo di consenso forte In un determinato intervallo di tempo, il sdown è promosso a Odown. Se questo riconoscimento è successivamente mancante, la bandiera viene cancellata.
Un'autorizzazione più severa che utilizza una maggioranza effettiva è richiesta per avviare davvero il failover, ma nessun failover può essere attivato senza raggiungere lo stato di Odown.
La condizione di Odown si applica solo ai maestri. Per altri tipi di casi Sentinel non richiede di agire, quindi lo stato di Odown non viene mai raggiunto per repliche e altre sentinelle, ma solo Sdown lo è.
Tuttavia Sdown ha anche implicazioni semantiche. Ad esempio, una replica nello stato di sdown non è selezionata per essere promossa da una sentinella che esegue un failover.
Sentinels and Replicas Auto Discovery
I sentinelle rimangono connessi ad altre sentinelle per controllare reciprocamente la disponibilità reciproca e scambiare messaggi. Tuttavia, non è necessario configurare un elenco di altri indirizzi Sentinel in ogni istanza Sentinel che si esegue, poiché Sentinel utilizza le funzionalità di Redis Instances Pub/Sub per scoprire gli altri Sentinel che stanno monitorando gli stessi maestri e repliche.
Questa funzione è implementata inviando Ciao messaggi nel canale chiamato __sentinel __: ciao .
Allo stesso modo non è necessario configurare qual è l'elenco delle repliche allegate a un maestro, poiché Sentinel scoprirà automaticamente questo elenco interrogando Redis.
- Ogni Sentinel pubblica un messaggio a ogni master monitorato e replica pub/sub canale __sentinel __: ciao, ogni due secondi, che annuncia la sua presenza con IP, porta, runid.
- Ogni sentinella è iscritto al pub/sotto -canale __sentinel __: ciao di ogni maestro e replica, alla ricerca di sentinelle sconosciute. Quando vengono rilevate nuove sentinelle, vengono aggiunte come sentinelle di questo maestro.
- I messaggi Hello includono anche la configurazione corrente completa del master. Se la ricevente Sentinel ha una configurazione per un determinato maestro più vecchio di quello ricevuto, si aggiorna immediatamente alla nuova configurazione.
- Prima di aggiungere una nuova sentinella a un maestro, un sentinella controlla sempre se c'è già una sentinella con lo stesso runid o lo stesso indirizzo (coppia IP e porta). In tal caso vengono rimosse tutte le sentinelle corrispondenti e il nuovo aggiunto.
Reconfigurazione di Sentinel di istanze al di fuori della procedura di failover
Anche quando non è in corso alcun failover, Sentinels proverà sempre a impostare la configurazione corrente sulle istanze monitorate. In particolare:
- Le repliche (secondo la configurazione corrente) che affermano di essere master, saranno configurate come repliche per replicare con il master corrente.
- Le repliche connesse a un master sbagliato, verranno riconfigurate per replicare con il maestro giusto.
Affinché i sentinelle di riconfigurare le repliche, la configurazione errata deve essere osservata per qualche tempo, che è maggiore del periodo utilizzato per trasmettere nuove configurazioni.
Ciò impedisce a Sentinels con una configurazione stantita (ad esempio perché si sono appena riuniti da una partizione) proverà a modificare la configurazione delle repliche prima di ricevere un aggiornamento.
Nota anche come la semantica del tentativo sempre di imporre la configurazione corrente rende il failover più resistente alle partizioni:
- I maestri falliti vengono riconfigurati come repliche quando tornano disponibili.
- Le repliche partite via durante una partizione vengono riconfigurate una volta raggiungibili.
L'importante lezione da ricordare su questa sezione è: Sentinel è un sistema in cui ogni processo cercherà sempre di imporre l'ultima configurazione logica al set di istanze monitorate.
Selezione e priorità replica
Quando un'istanza Sentinel è pronta per eseguire un failover, poiché il maestro è nello stato di Odown e la Sentinel ha ricevuto l'autorizzazione al failover dalla maggioranza dei casi di Sentinel noti, è necessario selezionare una replica adeguata.
Il processo di selezione della replica valuta le seguenti informazioni sulle repliche:
- Tempo di disconnessione dal maestro.
- Priorità replica.
- Offset di replica elaborato.
- Esegui ID.
Una replica che risulta essere disconnessa dal master per più di dieci volte il timeout principale configurato (un'opzione down-dopo-millisecondi), oltre al tempo in cui il master non è disponibile anche dal punto di vista del sentinella che esegue il failover.
In termini più rigorosi, una replica di cui suggerisce l'output delle informazioni è stata disconnessa dal maestro per più di:
(down-dopo-milliseconds * 10) + milliseconds_since_master_is_in_sdown_state
È considerato inaffidabile e viene completamente ignorato.
La selezione di repliche considera solo le repliche che hanno superato il test sopra e lo ordina in base ai criteri sopra, nel seguente ordine.
- Le repliche sono ordinate per priorità replica come configurato in Redis.Conf File dell'istanza Redis. Sarà preferita una priorità inferiore.
- Se la priorità è la stessa, viene controllata l'offset di replica elaborato dalla replica e viene selezionata la replica che ha ricevuto più dati dal master.
- Se le repliche multiple hanno la stessa priorità e elaborano gli stessi dati dal master, viene eseguito un ulteriore controllo, selezionando la replica con l'ID di esecuzione lessicograficamente più piccolo. Avere un ID in esecuzione inferiore non è un vero vantaggio per una replica, ma è utile per rendere più deterministico il processo di selezione della replica, invece di ricorrere per selezionare una replica casuale.
Nella maggior parte dei casi, la priorità replica non deve essere impostata esplicitamente, quindi tutte le istanze utilizzeranno lo stesso valore predefinito. Se esiste una particolare preferenza di fallimento, la priorità replica deve essere impostata su tutti i casi, inclusi i maestri, poiché un maestro può diventare una replica in un momento futuro nel tempo-e avrà bisogno delle impostazioni adeguate della priorità replica.
Un'istanza di Redis può essere configurata con una speciale priorità replica di zero per essere mai selezionato di Sentinels come il nuovo maestro. Tuttavia, una replica configurata in questo modo sarà comunque riconfigurata da Sentinels per replicare con il nuovo maestro dopo un failover, l'unica differenza è che non diventerà mai un maestro stesso.
Algoritmi e interni
Nelle sezioni seguenti esploreremo i dettagli del comportamento Sentinel. Non è rigorosamente necessario che gli utenti siano consapevoli di tutti i dettagli, ma una profonda comprensione di Sentinel può aiutare a distribuire e gestire Sentinel in modo più efficace.
Quorum
Le sezioni precedenti hanno mostrato che ogni master monitorato da Sentinel è associato a un configurato quorum. Specifica il numero di processi Sentinel che devono concordare l'irrabilità o la condizione di errore del master per attivare un failover.
Tuttavia, dopo aver attivato il failover, affinché il failover venga effettivamente eseguito, Almeno la maggioranza dei sentinelle deve autorizzare la sentinella al failover. Sentinel non esegue mai un failover nella partizione in cui esiste una minoranza di sentinelle.
Proviamo a rendere le cose un po 'più chiare:
- Quorum: il numero di processi sentinella che devono rilevare una condizione di errore affinché un master sia contrassegnato come Odown.
- Il failover è attivato dal Odown stato.
- Una volta attivato il failover, la sentinella che cerca di failover è tenuta a chiedere l'autorizzazione alla maggioranza di sentinelle (o più della maggioranza se il quorum è impostato su un numero maggiore della maggioranza).
La differenza può sembrare sottile ma in realtà è abbastanza semplice da capire e usare. Ad esempio, se si dispone di 5 istanze di sentinella e il quorum è impostato su 2, un failover verrà attivato non appena 2 sentinelle credono che il maestro non sia raggiungibile, tuttavia una delle due sentinelle sarà in grado di failover solo se ottiene l'autorizzazione almeno da 3 sentinelle.
Se invece il quorum è configurato in 5, tutti i sentinelle devono essere d'accordo sulla condizione di errore principale e l'autorizzazione di tutti i sentinelle è richiesta per il failover.
Ciò significa che il quorum può essere usato per sintonizzare Sentinel in due modi:
- Se un quorum è impostato su un valore inferiore alla maggior parte delle sentinelle che distribuiamo, stiamo fondamentalmente rendendo la sentinella più sensibile ai guasti del padrone, innescando un failover non appena solo una minoranza di sentinelle non è più in grado di parlare con il maestro.
- Se un quorum è impostato su un valore maggiore della maggior parte dei sentinelle, stiamo rendendo Sentinel in grado di failover solo quando esiste un numero molto grande (maggiore della maggioranza) di sentinelle ben collegate che concordano sul fatto che il maestro sia giù.
EPOCH di configurazione
I sentinelle richiedono di ottenere autorizzazioni dalla maggioranza per iniziare un failover per alcuni motivi importanti:
Quando una sentinella è autorizzata, ottiene un unico Epoca della configurazione Per il maestro sta fallendo. Questo è un numero che verrà utilizzato per la versione della nuova configurazione dopo il completamento del failover. Poiché una maggioranza ha concordato che una determinata versione è stata assegnata a una determinata sentinella, nessun'altra sentinella sarà in grado di usarlo. Ciò significa che ogni configurazione di ogni failover è versione con una versione unica. Vedremo perché questo è così importante.
Inoltre, le sentinelle hanno una regola: se una sentinella ha votato un'altra sentinella per il failover di un determinato maestro, aspetterà un po 'di tempo per provare a farsi di nuovo lo stesso maestro. Questo ritardo è il timeout di failover 2 * che puoi configurare in Sentinel.conf . Ciò significa che le sentinelle non proveranno a failover lo stesso maestro contemporaneamente, il primo a chiedere di essere autorizzato proverà, se fallisce un altro proverà dopo un po 'di tempo, e così via.
Redis Sentinel garantisce il vitalità Proprietà che se la maggioranza delle sentinelle è in grado di parlare, alla fine uno sarà autorizzato al failover se il maestro è inattivo.
Redis Sentinel garantisce anche il sicurezza Proprietà che ogni sentinella farà il failover lo stesso master usando un diverso Epoca della configurazione.
Propagazione della configurazione
Una volta che un Sentinel è in grado di failover con successo un maestro, inizierà a trasmettere la nuova configurazione in modo che gli altri Sentinel aggiornino le loro informazioni su un determinato maestro.
Affinché un failover sia considerato efficace, richiede che il sentinella sia stato in grado di inviare la replica di nessuno comando alla replica selezionata e che il passaggio al master sia stato successivamente osservato nell'output delle informazioni del master.
A questo punto, anche se la riconfigurazione delle repliche è in corso, il failover è considerato con successo e tutti i sentinelle sono tenuti a iniziare a segnalare la nuova configurazione.
Il modo in cui viene propagata una nuova configurazione è il motivo per cui abbiamo bisogno che ogni failover Sentinel sia autorizzato con un numero di versione diverso (Epoch di configurazione).
Ogni sentinella trasmette continuamente la sua versione della configurazione di un master usando i messaggi Redis Pub/Sub, sia nel master che in tutte le repliche. Allo stesso tempo, tutte le sentinelle attendono i messaggi per vedere qual è la configurazione pubblicizzata dagli altri sentinelle.
Le configurazioni vengono trasmesse nel __sentinel __: Hello Pub/Sott Channel.
Poiché ogni configurazione ha un numero di versione diverso, la versione maggiore vince sempre su versioni più piccole.
Quindi, ad esempio, la configurazione per il maestro mymaster inizia con tutte le sentinelle che credono che il maestro sia a 192.168.1.50: 6379. Questa configurazione ha la versione 1. Dopo qualche tempo una sentinella è autorizzata al failover con la versione 2. Se il failover ha esito positivo, inizierà a trasmettere una nuova configurazione, diciamo 192.168.1.50: 9000, con la versione 2. Tutte le altre istanze vedranno questa configurazione e aggiorneranno la loro configurazione di conseguenza, poiché la nuova configurazione ha una versione maggiore.
Ciò significa che Sentinel garantisce una seconda proprietà di Lività: una serie di sentinelle che sono in grado di comunicare convergeranno nella stessa configurazione con il numero di versione superiore.
Fondamentalmente se la rete è partizionata, ogni partizione converge alla configurazione locale più elevata. Nel caso speciale di nessuna partizione, esiste una singola partizione e ogni sentinella sarà d'accordo sulla configurazione.
Coerenza in partizioni
Le configurazioni di Redis Sentinel sono infine coerenti, quindi ogni partizione converge alla configurazione più alta disponibile. Tuttavia, in un sistema del mondo reale che utilizza Sentinel ci sono tre giocatori diversi:
- Istanze di Redis.
- Istanze di sentinella.
- Clienti.
Per definire il comportamento del sistema dobbiamo considerare tutti e tre.
Quella che segue è una rete semplice in cui ci sono 3 nodi, ciascuno che esegue un'istanza Redis e un'istanza Sentinel:
+-------------+ | Sentinel 1 | ----- Cliente A | Redis 1 (M) | + -------------+ | | + -------------+ | + ------------+ | Sentinel 2 | -----+-// ---- | Sentinel 3 | ----- Cliente B | Redis 2 (s) | | Redis 3 (M) | +-------------+ +------------+
In questo sistema lo stato originale era che Redis 3 era il maestro, mentre Redis 1 e 2 erano repliche. Si è verificata una partizione isolando il vecchio maestro. Sentinels 1 e 2 hanno avviato un failover che promuove Sentinel 1 come nuovo maestro.
Le proprietà Sentinel garantiscono che Sentinel 1 e 2 ora abbiano la nuova configurazione per il master. Tuttavia Sentinel 3 ha ancora la vecchia configurazione poiché vive in una divisione diversa.
Sappiamo che Sentinel 3 riceverà la sua configurazione quando la partizione di rete guarirà, tuttavia ciò che accade durante la partizione se ci sono clienti partizionati con il vecchio master?
I clienti saranno ancora in grado di scrivere a Redis 3, il vecchio maestro. Quando la partizione si riunirà, Redis 3 verrà trasformato in una replica di Redis 1 e tutti i dati scritti durante la partizione andranno persi.
A seconda della configurazione che potresti desiderare o no che si verifichi questo scenario:
- Se stai usando Redis come cache, potrebbe essere utile che il cliente B sia ancora in grado di scrivere al vecchio maestro, anche se i suoi dati andranno persi.
- Se si utilizza Redis come negozio, questo non è buono e è necessario configurare il sistema per prevenire parzialmente questo problema.
Poiché Redis è replicato in modo asincrono, non c'è modo di prevenire totalmente la perdita di dati in questo scenario, tuttavia è possibile limitare la divergenza tra Redis 3 e Redis 1 utilizzando la seguente opzione di configurazione Redis:
min-replicas-to-write 1 min-replicas-max-lag 10
Con la configurazione sopra (consultare Redis autocommentato.Conf Esempio nella distribuzione di Redis per ulteriori informazioni) Un'istanza Redis, quando agisce come maestro, smetterà di accettare le scritture se non può scrivere su almeno 1 replica. Poiché la replica è asincrona non essere in grado di scrivere in realtà significa che la replica è disconnessa o non ci sta inviando riconoscimenti asincroni per più del numero massimo di secondi specificato di secondi.
Utilizzando questa configurazione il Redis 3 nell'esempio sopra diventerà non disponibile dopo 10 secondi. Quando la partizione guarisce, la configurazione Sentinel 3 converge in quella nuova e il client B sarà in grado di recuperare una configurazione valida e continuare.
In generale Redis + Sentinel nel suo insieme sono un alla fine sistema coerente dove si trova la funzione di unione Le ultime vittorie di failover, e i dati di Old Masters vengono scartati per replicare i dati dell'attuale maestro, quindi c'è sempre una finestra per perdere le scritture riconosciute. Ciò è dovuto alla replicazione asincrona di Redis e alla natura di scarto della funzione di unione "virtuale" del sistema. Si noti che questa non è una limitazione della stessa sentinella e se si orchestra il failover con una macchina a stato replicata fortemente coerente, le stesse proprietà si applicheranno comunque. Ci sono solo due modi per evitare di perdere le scritture riconosciute:
- Usa la replica sincrona (e un algoritmo di consenso adeguato per eseguire una macchina a stato replicata).
- Utilizzare un sistema eventualmente coerente in cui possono essere unite diverse versioni dello stesso oggetto.
Redis attualmente non è in grado di utilizzare nessuno dei sistemi di cui sopra ed è attualmente al di fuori degli obiettivi di sviluppo. Tuttavia, ci sono proxy che implementano una soluzione "2" in cima ai negozi Redis come Soundcloud Roshi o Netflix Dynomite.
Stato persistente di Sentinel
Sentinel State è persistito nel file di configurazione Sentinel. Ad esempio ogni volta che una nuova configurazione viene ricevuta o creata (Leader Sentinels), per un master, la configurazione è persistita sul disco insieme all'epoca della configurazione. Ciò significa che è sicuro fermare e riavviare i processi Sentinel.
Modalità di inclinazione
Redis Sentinel dipende fortemente dal tempo del computer: ad esempio per capire se è disponibile un'istanza, ricorda il tempo dell'ultima risposta riuscita al comando ping e lo confronta con il tempo corrente per capire quanti anni ha.
Tuttavia, se il tempo del computer cambia in modo imprevisto o se il computer è molto occupato o il processo bloccato per qualche motivo, Sentinel può iniziare a comportarsi in modo imprevisto.
La modalità di inclinazione è una modalità di "protezione" speciale in cui un sentinella può entrare quando viene rilevato qualcosa di strano che può ridurre l'affidabilità del sistema. L'interrupt del timer Sentinel è normalmente chiamato 10 volte al secondo, quindi prevediamo che trascorsero più o meno 100 millisecondi tra due chiamate all'interruzione del timer.
Quello che fa una sentinella è registrarsi la prima volta in cui è stato chiamato l'interrupt del timer e confrontarlo con la chiamata corrente: se la differenza di tempo è negativa o inaspettatamente grande (2 secondi o più) la modalità di inclinazione viene inserita (o se è già stata inserita dall'uscita dalla modalità di inclinazione posticipata).
In modalità inclinazione, il sentinella continuerà a monitorare tutto, ma:
- Smette di comportarsi.
- Comincia a rispondere negativamente alle richieste di sentinella IS-Master-By-Addr poiché la possibilità di rilevare un fallimento non è più attendibile.
Se tutto sembra essere normale per 30 secondi, la modalità di inclinazione viene uscita.
Nella modalità di inclinazione Sentinel, se inviamo il comando informazioni, potremmo ottenere la seguente risposta:
$ Redis -cli -p 26379 127.0.0.1: 26379> Informazioni (altre informazioni da Sentinel Server saltate.) # 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, status = ok, indirizzo = 127.0.0.1: 6379, schiavi = 0, sentinelle = 1
Il campo "sentinel_tilt_since_seconds" indica quanti secondi la sentinella è già in modalità di inclinazione. Se non è in modalità inclinazione, il valore sarà -1.
Si noti che in qualche modo la modalità di inclinazione potrebbe essere sostituita utilizzando l'API dell'orologio monotonico che molti kernel offrono. Tuttavia non è ancora chiaro se questa è una buona soluzione poiché l'attuale sistema evita i problemi nel caso in cui il processo sia semplicemente sospeso o non eseguito dallo scheduler per lungo tempo.
Una nota sulla parola slave usata in questa pagina uomo: A partire da Redis 5, se non per la compatibilità all'indietro, il progetto Redis non utilizza più la parola slave. Sfortunatamente in questo comando la parola slave fa parte del protocollo, quindi saremo in grado di rimuovere tali occorrenze solo quando questa API sarà naturalmente deprecata.
Su questa pagina
Questo è un sito web della comunità sponsorizzato da Redis Ltd. © 2023. Redis and the Cube Logo sono marchi registrati di Redis Ltd. Termini di utilizzo e Informativa sulla privacy.