Puoi.
Tutto dipende dal carico che hanno quegli altri server, è un problema di condivisione delle risorse. Ad essere onesti, il mio problema principale con la tua architettura non è il server dedicato rispetto a quello non dedicato, è il fatto che stai posizionando un server Redis (master o meno) su un host che molto probabilmente dovrà affrontare Internet (app expressJS) , il che significa che è abbastanza esposto.
Se riesci a simulare il carico HTTP nei tuoi server Node/Express JS, osserva la differenza tra l'esecuzione di alcuni test di benchmark sul tuo server dedicato rispetto a quelli non dedicati:
Su un server Redis in esecuzione, digita:
redis-benchmark -q -n 100000
Se i server delle app vengono martellati e utilizzano frequentemente tutti i core, dovresti notare una differenza sostanziale nei benchmark.
Il mio suggerimento è di procedere con la prima configurazione e aggiungere il monitoraggio dei tempi di risposta redis e agire solo quando è necessario, il che potrebbe essere ora se i benchmark mostrano risultati molto scarsi.
Come nota a margine, considera l'opzione di non condividere gli host per i servizi che esponi a Internet con servizi che svolgono funzioni interne alla tua applicazione.