Quando si crea una nuova istanza di amazon RDS, si sono offerti di scegliere true/false per l'opzione "accessibile al pubblico", C'è un modo per cambiare questo per un'istanza esistente?Come si modifica l'opzione pubblicamente accessibile per Amazon RDS?
risposta
Prima scoprire quali VPC vi trovate.
Se si desidera effettuare l'istanza RDS come accessibili pubblico, è necessario attivare gli attributi VPC in host DNS e risoluzione.
È possibile impostare questo utilizzando il parametro PubliclyAccessible
che verrà risolto all'indirizzo IP pubblico.
Questo è dalla documentazione AWS:
Amazon RDS sostenuto due piattaforme VPC: EC2-VPC e EC2-Classic. La piattaforma EC2-VPC ha un VPC predefinito in cui tutte le nuove istanze DB sono create a meno che non venga specificato diversamente. La piattaforma EC2-Classic non non ha un difetto VPC, ma come con entrambe le piattaforme, è possibile creare il proprio VPC e specificare che un DB di istanza si trova in quel VPC.
A partire da ora la variabile "PubliclyAccessible" non è disponibile nello strumento Cloudformation. Quindi, se stai distribuendo il tuo RDS usando il template CloudFormation, non hai scelta di cambiare questo parametro. Di default è "No". Tuttavia, se si utilizza la console AWS, è possibile scegliere di modificare il valore "accessibile pubblicamente" su Sì dal valore predefinito No. Penso che AWS debba aggiornare la funzione "AWS :: RDS :: DBInstance" di cloud con questo parametro.
Grazie.
Se la domanda riguardasse CloudFormation, questa risposta avrebbe potuto essere utile. Non era. – mdahlman
EDIT: Sì, è ora possibile modificare la proprietà "accessibile al pubblico" da "No" a "Sì". (E viceversa) Evviva!
Vecchio risposta ha lasciato qui a fini storici: No.
Sarebbe bello, però, eh? Per risolvere il problema la soluzione migliore è la seguente:
- creare un'istantanea dell'istanza.
- Avvia una nuova istanza da questa istantanea utilizzando l'opzione accessibile pubblicamente.
Evidence:
-
diplomazia
- John G in this post gli impedisce di scrivere "No" come ho fatto io, ma la sua risposta "È possibile creare uno snapshot del database RDS corrente e lanciarlo con la opzione pubblicamente accessibile. " è abbastanza chiaro che sta offrendo la soluzione alternativa perché la soluzione diretta non è disponibile.
fare clic destro sull'istanza e selezionare 'modifica' per trovare questa opzione – Silas
ci siamo imbattuti in questo cercando la stessa risposta. Purtroppo a 10 mesi di distanza la risposta è ancora "no" - non è possibile modificare un DB esistente per renderlo pubblicamente disponibile.
Tuttavia - si può venire chiuso ... Anche se non è disponibile al pubblico, è a disposizione di istanze EC2 si lancia in quella stessa VPC.Ed è possibile impostare un tunnel SSH dal proprio computer attraverso un'istanza EC2 su quel DB, che consente di accedere effettivamente all'istanza senza doverla riavviare da un'istantanea.
Lei non ha specificato sistema operativo del computer, quindi sono convenientemente intenzione di assumere linux ...
In primo luogo, avviare un'istanza EC2, dare accesso alla propria istanza RDS tramite gruppi di protezione, assicuratevi può accedere a quell'istanza EC2 e assicurarsi di poter accedere al DB RDS da tale istanza EC2. Se uno di questi fallisce, il resto non funzionerà.
Successivamente, configurare un tunnel:
ssh -v -N -L 1234:rds.endpoint:3306 [email protected]
Dove rds.endpoint è l'URL per l'istanza RDS, your.ec2.host è il nome host per l'istanza EC2, e yourec2username è il vostro nome utente sul Host EC2.
È quindi possibile connettersi all'istanza RDS con
mysql -p -u dbuser -h 127.0.0.1 -P 1234 dbname --password=dbpassword
Speranza che aiuta la prossima persona che si imbatte in questo ...
È possibile creare un tunnel SSH nel vostro VPC, o fare un port forwarding con iptables ma, la soluzione migliore e più semplice è creare una replica di lettura con il flag PubliclyAccessible in true e quindi promuovere la replica su master. Raccomando di utilizzare sempre un CNAME dell'endpoint RDS, in modo da poter modificare il CNAME nel DNS senza toccare l'app.
Fare uno snapshot e ripristinarlo aggiungerà un tempo di inattività non necessario nella tua app.
Look!
Sembra che ora AWS possa modificare la proprietà di accessibilità. Tuttavia, il database sembra essere modificato e durante questo periodo potrebbero verificarsi problemi di connettività.
Non ho trovato nessun blog/notiziario a riguardo. Tuttavia nel mio account sono in grado di farlo.
Sono stato in grado di modificare un'istanza utilizzando la console. Ci è voluto un po 'di tempo prima che la modifica si propagasse e la console mostrava le vecchie impostazioni fino al completamento. – daxlerod
Gli articoli citati sono veri, ovviamente. Ma non sono utili per rispondere alla domanda. – mdahlman