Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo illustra come risolvere i problemi comuni relativi alla connessione dell'applicazione client a Cache Redis di Azure. I problemi di connettività potrebbero essere causati da condizioni intermittenti o da una configurazione della cache non corretta. Questo articolo è suddiviso in problemi intermittenti e problemi di configurazione della cache.
Problemi di connettività intermittente
- Applicazioni ospitate in Kubernetes
- Applicazione client basata su Linux
- Numero di client connessi
- Manutenzione del server
Problemi di connettività della configurazione della cache
- Regole del firewall
- Configurazione endpoint privato
- Modifica dell'indirizzo IP pubblico
- Configurazione della rete virtuale
Testare la connettività
È possibile testare la connettività usando lo strumento da riga di comando Redis redis-cli. Per altre informazioni sull'interfaccia della riga di comando di Redis, vedere Usare lo strumento da riga di comando Redis con Cache Redis di Azure.
Se redis-cli non è in grado di connettersi, è possibile testare la connettività usando PSPING
in Azure PowerShell.
psping -q <cachename>:<port>
Se il numero di pacchetti inviati è uguale al numero di pacchetti ricevuti, non c'è alcun calo della connettività.
Problemi di connettività intermittente
L'applicazione client potrebbe avere problemi di connettività intermittenti causati da picchi nel numero di connessioni o da eventi come patch.
Applicazioni ospitate in Kubernetes
Se l'applicazione client è ospitata in Kubernetes, verificare se i nodi del cluster o il pod che esegue l'applicazione client sono sotto pressione di memoria, CPU o rete. Un pod che esegue l'applicazione client può essere interessato da altri pod in esecuzione nello stesso nodo e potrebbe limitare le connessioni Redis o le operazioni di I/O.
Se si usa Istio o qualsiasi altra mesh di servizi, assicurarsi che il proxy mesh del servizio riserva le porte 13000-13019
o 15000-15019
. I client usano queste porte per comunicare con i nodi in una cache Redis di Azure in cluster e potrebbero causare problemi di connettività su tali porte.
Applicazione client basata su Linux
L'uso delle impostazioni TCP ottimistiche in Linux potrebbe causare problemi di connettività per le applicazioni client. Per altre informazioni, vedere Impostazioni TCP per le applicazioni client ospitate in Linux e Blocchi di connessione che durano 15 minuti.
Numero di client connessi
Controllare se la metrica Max aggregate for the Connected Clients è vicina o superiore al numero massimo di connessioni consentite per le dimensioni della cache. Per ulteriori informazioni sul dimensionamento delle connessioni client, vedere prestazioni della cache di Azure per Redis.
Manutenzione del server
La cache potrebbe essere sottoposta a manutenzione pianificata o non pianificata che influisce negativamente sull'applicazione durante la finestra di manutenzione. È possibile verificare questo problema controllando la metrica Errori (tipo: failover) nella cache nel portale di Azure. Per ridurre al minimo gli effetti dei failover, vedere Resilienza della connessione.
Problemi di configurazione della connettività
Se l'applicazione non riesce a connettersi alla cache Redis di Azure, è possibile che alcune configurazioni della cache non siano configurate correttamente. Le sezioni seguenti offrono suggerimenti su come assicurarsi che la cache sia configurata correttamente.
Regole del firewall
Se è stato configurato un firewall per la cache Redis di Azure, assicurarsi che l'indirizzo IP del client venga aggiunto alle regole del firewall. Per controllare le regole del firewall, selezionare Firewall in Impostazioni nel menu di spostamento a sinistra per la pagina della cache.
Firewall di terze parti o proxy esterno
Se si usa un firewall o un proxy di terze parti nella rete, assicurarsi che consenta l'endpoint Azure Cache per Redis *.redis.cache.windows.net
e le porte 6379
e 6380
. Potrebbe essere necessario consentire più porte quando si usa una cache in cluster o una replica geografica.
Configurazione endpoint privato
Nel portale di Azure, controlla la configurazione del Private Endpoint selezionando Private Endpoint sotto Impostazioni nel menu di navigazione a sinistra relativo alla tua cache.
Nella pagina Endpoint privato assicurarsi che l'opzione Abilita l'accesso alla rete pubblica sia impostata correttamente.
- L'accesso alla rete pubblica è disabilitato per impostazione predefinita quando si crea un endpoint privato.
- Per connettersi all'endpoint privato della cache dall'esterno della rete virtuale della cache, è necessario abilitare l'accesso alla rete pubblica.
- Se si elimina l'endpoint privato, assicurarsi di abilitare l'accesso alla rete pubblica.
Selezionare il collegamento in Endpoint privato e assicurarsi che l'endpoint privato sia configurato correttamente. Per altre informazioni, vedere Creare un endpoint privato con una nuova istanza di cache di Azure per Redis.
Assicurarsi che l'applicazione si connetta a
<cachename>.redis.cache.windows.net
sulla porta6380
. Evitare di usare<cachename>.privatelink.redis.cache.windows.net
nella configurazione o nella stringa di connessione.Per verificare che un comando si risolva nell'indirizzo IP privato per la cache, eseguire un comando simile
nslookup <hostname>
all'interno della rete virtuale collegata all'endpoint privato.
Modifica dell'indirizzo IP pubblico
Se si configura una risorsa di rete o di sicurezza per l'uso dell'indirizzo IP pubblico della cache, verificare se l'indirizzo IP pubblico della cache è cambiato. Per ulteriori informazioni, vedere Affidarsi al nome host e non all'indirizzo IP pubblico.
Configurazione della rete virtuale
Controllare la configurazione della rete virtuale come indicato di seguito:
- Assicurarsi che alla cache sia assegnata una rete virtuale. Nel portale di Azure selezionare Rete virtuale in Impostazioni nel menu di spostamento a sinistra per la cache.
- Assicurarsi che il computer host client si trova nella stessa rete virtuale della cache.
- Se l'applicazione client si trova in una rete virtuale diversa dalla cache, abilitare il peering per entrambe le reti virtuali all'interno della stessa area di Azure.
- Verificare che le regole in ingresso e in uscita soddisfino i requisiti delle porte.
Per altre informazioni, vedere Configurare il supporto della rete virtuale per un'istanza di Cache Redis di Azure Premium.
Replicazione geografica utilizzando VNet injection con cache Premium
La replica geografica tra cache nella stessa rete virtuale è supportata. La replica geografica tra cache in reti virtuali diverse è supportata con le avvertenze seguenti:
Se le reti virtuali si trovano nella stessa area, è possibile connetterle usando il peering di rete virtuale o una connessione VNet-to-VNet tramite gateway VPN.
Se le reti virtuali si trovano in aree diverse, la replica geografica con peering di rete virtuale non è supportata. Una macchina virtuale client in
VNet 1
(area 1) non può accedere a una cache inVNet 2
(area 2) usando il nome, a causa di un vincolo con servizi di bilanciamento del carico interno Basic. Usare invece una connessione da rete virtuale a rete virtuale del gateway VPN. Per altre informazioni sui vincoli di peering di rete virtuale, vedere Requisiti e vincoli del peering di rete virtuale.
Per configurare la rete virtuale in modo efficace ed evitare problemi di replica geografica, è necessario configurare correttamente le porte in ingresso e in uscita. Per altre informazioni su come evitare i problemi di configurazione errata della rete virtuale più comuni, vedere Requisiti delle porte peer di replica geografica.
Anche se è possibile usare l'inserimento di reti virtuali con cache Premium, è preferibile usare collegamento privato di Azure. Per altre informazioni, vedi:
- Eseguire la migrazione da
VNet
cache di iniezione a cache Private Link - Che cos'è la cache di Azure per Redis con il collegamento privato di Azure?