Modifica della Formazione del Cloud
DataSunrise fornisce un script dedicato per il deployment dell’infrastruttura HA all’interno di Amazon Web Services basato sul Servizio di Formazione del Cloud di Amazon. Il seguente modello crea tutte le risorse necessarie per supportare l’ambiente HA di DataSunrise (i server EC2 nel gruppo di AutoScaling, i database RDS di Audit Configurazionale e Dizionario, il Load Balancer, ecc.) e può essere personalizzato secondo le esigenze del cliente.
In questo articolo, mostreremo come il modello di Formazione del Cloud può essere modificato per supportare la configurazione personalizzata. Verranno presentati 2 scenari.
Scenario 1.
Rilasciamo settimanalmente aggiornamenti minori di DataSunrise e AMIs per mantenere la nostra soluzione sempre aggiornata e ottimizzata. Ad esempio, aggiornare i driver ODBC, risolvere alcune vulnerabilità del database, aggiornare le librerie necessarie, ecc. Pertanto, i nostri clienti potrebbero dover aggiornare le AMIs che stanno attualmente utilizzando con quella più recente.
Questo può essere fatto mediante modifica manuale del modello. Di seguito vengono fornite istruzioni dettagliate:
- Aprire il file del modello e procedere alla sezione RegionMap:
- Scegliere la regione in cui è distribuito il proprio ambiente.
- Procedere al nostro repository GitHub ufficiale
Aggiorniamo i file degli script lì ogni settimana non appena viene rilasciata la nuova versione di DataSunrise.
- Procedere anche alla sezione RegionMap e alla regione in cui sono distribuite le proprie risorse:
- È possibile aggiornare l’ID AMI solo per la regione che si sta utilizzando. Pertanto, copiare l’ID AMI per la regione richiesta.
- Procedere al file del modello corrente e sostituire l’ID AMI corrente per la regione richiesta con il valore copiato dal nostro repository GitHub.
- Andare alla pagina AWS CF e scegliere l’opzione per aggiornare il proprio stack CF.
- Selezionare Sostituire modello corrente e caricare la versione modificata del modello (passo 6). Fare clic su Avanti.
Ora è possibile verificare se il processo di aggiornamento è terminato con successo. Ad esempio, se era necessario aggiornare i driver ODBC, è possibile eseguire un test di connessione al proprio database di destinazione per verificare se sono stati utilizzati i driver aggiornati:
Configurazione -> Database -> Your_target_database -> Test connessione.
Se viene utilizzata la nuova versione del driver ODBC, l’aggiornamento dell’AMI è terminato con successo.
Altrimenti, è possibile ricontrollare i propri passaggi o contattarci per ulteriori indagini.
Scenario 2.
A volte i nostri clienti devono installare alcuni strumenti aggiuntivi, ad esempio, driver ODBC, modificare la configurazione del server o applicare le ultime correzioni infrastrutturali. Questo può essere fatto modificando la parte UserData del file del modello CF.
Vediamo come si può fare. Configureremo un driver ODBC DB2 che non è incluso di default nelle nostre immagini AWS.
Nel modello CF nella sezione UserData, vengono importati diversi script che contengono tutte le impostazioni configurazionali necessarie:
Ognuno di essi configura il proprio set di componenti ambientali:
- vm-creads.sh – questo script è necessario per recuperare e allegare un ruolo IAM alla macchina EC2 corrente.
- cf-params.sh – questo script viene utilizzato per trasferire i valori dei parametri delle risorse dello stack CF nello script in modo che possano essere facilmente utilizzati durante il workflow dello script.
- ds-manip.sh – questo script è necessario per alcune operazioni amministrative come concedere permessi all’utente DataSunrise su qualsiasi file, accedere/uscire dalla console web di DataSunrise, ecc.
- ds-setup.sh – questo script contiene tutte le funzioni necessarie per configurare con successo DataSunrise. Ad esempio, configurare la password amministratore, configurare il database dizionario, configurare il proxy, e così via.
- aws-ds-setup.sh – questo script configura risorse basate su AWS come metriche CloudWatch e caricamento log.
- pre-setup.sh – questo script è necessario per preparare l’ambiente per l’installazione di DataSunrise: scaricare i pacchetti necessari, build, configurare una licenza per l’applicazione DataSunrise, ecc.
Nel caso odierno, installeremo il driver ODBC DB2 che verrà utilizzato durante l’inizializzazione dell’istanza del database di destinazione. Pertanto, applicheremo le modifiche al file pre-setup.sh.
Nel nostro scenario, i comandi necessari vengono presi dalla documentazione ufficiale di DataSunrise User Guide
- Inseriamo i comandi necessari nel file pre-setup.sh.
- Ma prima, dobbiamo caricare il driver ODBC DB2 nel bucket S3. Quindi, scaricare i driver dal sito ufficiale. Sarà necessario accedere al proprio account IBM o crearne uno nuovo. Una volta scaricato il driver, caricarlo nel bucket S3, quello che è stato specificato come BackupS3BucketName durante il deployment del script Cloud Formation.
- Ora, inseriamo i comandi necessari come mostrato di seguito:
Ecco i comandi:
logBeginAct "Installa driver ODBC DB2..." aws s3 cp "s3://$BackupS3BucketName/ibm_data_server_driver_for_odbc_cli_linuxx64_v11.1.tar.gz" ibm_data_server_driver_for_odbc_cli_linuxx64_v11.1.tar.gz --only-show-errors tar -xfv ibm_data_server_driver_for_odbc_cli_linuxx64_v11.1.tar.gz echo "[DB2]" | sudo tee -a /etc/odbcinst.ini echo "Driver = /home/user/clidriver/lib/libdb2o.so" | sudo tee -a /etc/odbcinst.ini echo "Description = Driver DB2" | sudo tee -a /etc/odbcinst.ini echo "FileUsage = 1" | sudo tee -a /etc/odbcinst.ini echo "DontDLClose = 1" | sudo tee -a /etc/odbcinst.ini RETVAL=$? logEndAct "Risultato installazione driver ODBC DB2 - $RETVAL"
- Per monitorare i progressi dell’installazione del driver ODBC, è possibile utilizzare il nostro meccanismo di logging:
- utilizzare la funzione logBeginAct per avviare il logging e separare una parte del processo di installazione dall’altra:
la riga nel modello: logBeginAct “Installa driver ODBC DB2…”
l’output nel file cloud-init-output.txt: [DS
]: Installa driver ODBC DB2… * il file cloud-init-output.txt è un file che memorizza tutti i messaggi di log dal deployment dello script Cloud Formation di DataSunrise. Può essere trovato in /var/log/messages/. È possibile controllarlo ogni volta che è necessario risolvere i problemi del deployment dello stack di formazione del cloud.
- una volta aperta la parte logBeginAct, all’interno di quella parte è possibile utilizzare la funzione log per loggare qualsiasi informazione o stato nel file cloud-init-output.txt.
Non lo utilizzeremo nella nostra parte incollata, ma è possibile vedere un altro esempio:
- Per terminare la parte di logging è possibile inserire:
logEndAct “Risultato installazione driver ODBC DB2 – $RETVAL”
* La variabile RETVAL viene utilizzata per controllare il codice di uscita dell’esecuzione del comando precedente.
RETVAL=$?
- utilizzare la funzione logBeginAct per avviare il logging e separare una parte del processo di installazione dall’altra:
- Salvare il file. Andare alla pagina AWS CF e scegliere l’opzione per aggiornare il proprio stack CF.
- Selezionare Sostituire modello corrente e caricare la versione modificata del modello (passo 2). Fare clic su Avanti.
- Riavviare l’applicazione ed eseguire il test di connessione per assicurarsi che ora venga utilizzato il driver DB2:
La personalizzazione del modello è stata completata con successo. Il modello di formazione del cloud può essere personalizzato anche per ulteriori casi d’uso. La maggior parte delle modifiche viene solitamente effettuata nella sezione degli script UserData. Non esitate a contattarci per assistenza se avete bisogno di aiuto con la personalizzazione della Formazione del Cloud.