2016-06-13 12 views
7

Mi piacerebbe avere un nuovo IP pubblico ogni volta che faccio una richiesta. È possibile attivare in modo mirato il mio contenitore per essere riciclato, o altrimenti far riprovare il mio IP?Posso modificare l'IP pubblico di AWS Lambda su ogni richiesta?

+0

Non penso che sia possibile .. dal momento che stanno esaurendo gli indirizzi IPv4. Potresti chiedere il supporto di ciò che è possibile. L'unica cosa che so è che devi riavviare il tuo server per ottenere un nuovo IP – Jer

+0

Un AWS Lambda ha un IP pubblico in primo luogo? – Leon

risposta

10

Per impostazione predefinita, una funzione Lambda viene richiamata da un IP privato all'interno di una o più sottoreti del VPC, in base alla configurazione. Non è configurato con un IP pubblico; sono assegnati IP privati.

Se l'esigenza è quella di avere la funzione Lambda assegnato un numero di IP pubblico, si avrebbe bisogno di configure a NAT Gateway or NAT instance per fornire l'accesso a Internet, e quindi un IP pubblico. Il traffico Lambda sarebbe quindi attribuito all'indirizzo IP pubblico del gateway/istanza NAT.

Un indirizzo IP elastico viene assegnato con un dato NAT Gateway ma non può essere riassegnato - è statico. Quindi un gateway NAT non funzionerebbe per il tuo scopo.

È necessario utilizzare uno NAT instance. La funzione Lambda dovrebbe quindi terminare/avviare l'istanza NAT alla fine di ogni richiesta. Ciò farebbe sì che EC2 assegni un nuovo IP pubblico per la tua istanza NAT - supponendo che la subnet da cui viene avviato sia configurata per l'assegnazione automatica di IP # all'avvio.

Dato ciò, è necessario riavviare l'istanza NAT dopo ogni richiesta, in modo che venga assegnato un nuovo numero IP. Questa procedura consentirebbe ad ogni richiesta di essere attribuita a un nuovo numero IP pubblico ogni volta.

Si noti che durante la fase di avvio/chiusura dell'istanza NAT, la funzione Lambda non avrebbe accesso a Internet. È possibile prendere in considerazione l'accodamento della funzione Lambda utilizzando il servizio di accodamento semplice per evitare conflitti con l'istanza NAT.

Anche il ridimensionamento sarebbe un problema, poiché tutte le funzioni richiederebbero l'istanza NAT disponibile per ciascuna chiamata. Se il tempo di attività e la disponibilità erano una preoccupazione, si would need to implement a HA solution a livello di servizio NAT.