Gestione remota
Il Cloud Control Panel non è l'unico modo per gestire i Cloud Server. Se stai eseguendo uno script o un programma, puoi utilizzare l'API dei server cloud, ma ciò comporta un certo sforzo di codifica.
Se vuoi gestire i tuoi server dalla riga di comando senza occuparti direttamente dell'API, puoi utilizzare un'applicazione client open source chiamata python-openstackclient
.
Nota :Rackspace non mantiene il openstackclient
e non è garantito il funzionamento con Rackspace Cloud.
Prerequisiti
Per eseguire python-openstackclient
, è necessario installare Python® 2.7 o versioni successive sul proprio sistema. Puoi eseguire il client da una macchina desktop o da un sistema remoto, come un Cloud Server. Hai anche bisogno di pip
, che è un gestore di pacchetti Python.
Installa il pacchetto
Per installare il client, eseguire il comando seguente:
pip install python-openstackclient
Imposta le variabili di ambiente
Ora che hai installato openstackclient
, imposta le variabili di ambiente che gli consentano di connettersi al tuo account Rackspace Cloud.
Per impostare alcune variabili di ambiente, esegui il comando seguente per aprire il tuo .bash_profile file da modificare:
nano ~/.bash_profile
Quindi aggiungi le seguenti righe nella sezione del data center, modificando i valori in base alle tue esigenze. Prestare particolare attenzione a nome utente, password e nome dell'inquilino o numero di conto. Puoi trovare il tuo numero di account nell'angolo in alto a destra del pannello di controllo del cloud dopo aver effettuato l'accesso.
Usa il seguente formato:
OS_USERNAME=username
OS_TENANT_NAME=accountnumber
OS_AUTH_SYSTEM=rackspace
OS_PASSWORD=password
OS_AUTH_URL=https://identity.api.rackspacecloud.com/v2.0/
OS_REGION_NAME=DFW
OS_NO_CACHE=1
export OS_USERNAME OS_TENANT_NAME OS_AUTH_SYSTEM OS_PASSWORD OS_AUTH_URL OS_REGION_NAME OS_NO_CACHE
Autorizzazioni
Dopo aver impostato le variabili di ambiente, salva il file. Poiché include una password, esegui il comando seguente per impostare le autorizzazioni sul file in modo che altre persone non possano leggerlo:
chmod 600 ~/.bash_profile
Spiegazioni delle variabili d'ambiente
La tabella seguente elenca le spiegazioni per ciascuna variabile di ambiente e offre valori suggeriti:
Nome della variabile | Tipo di valore | Descrizione |
---|---|---|
OS_USERNAME | nome utente | Imposta questo valore sul nome utente del tuo account Rackspace Cloud. |
OS_TENANT_NAME | numero di conto | Imposta questo valore sul tuo numero di account Rackspace Cloud, visibile nell'angolo in alto a destra del pannello di controllo del cloud una volta effettuato l'accesso. |
OS_AUTH_SYSTEM | spazio rack | Imposta questo valore su rackspace per connettersi al Rackspace Cloud. |
OS_PASSWORD | password | Imposta questo valore sulla password del tuo account Rackspace Cloud. |
OS_AUTH_URL | endpoint di identità | Imposta questo valore sull'endpoint per il servizio di identità utilizzato dal client per autenticarsi per le operazioni API, https://identity.api.rackspacecloud.com/v2.0 . |
OS_REGION_NAME | regione del data center | Il codice per la regione del data center contenente i server che desideri manipolare. Puoi controllare il data center del tuo server controllandone i dettagli schermata nel pannello di controllo del cloud. Il codice del centro dati è costituito solo dalle prime tre lettere dell'identificatore del centro dati, ad esempio DFW, IAD, ORD, HKG, SYD, or LON. Puoi sovrascrivere l'impostazione della regione con --os-region-name opzione della riga di comando. |
OS_NO_CACHE | 0 o 1 | Sulle versioni più recenti del sistema operativo Ubuntu® il openstackclient tenta di utilizzare un portachiavi di sistema che non è impostato sui server. Impostando questo valore su 1 affronta il problema. Non dovrebbe essere necessario su altri sistemi e non dovrebbe nemmeno interferire con le operazioni del cliente. Puoi sovrascrivere os_no_cache impostazione con --no-cache opzione della riga di comando. |
Carica le variabili di ambiente
Per applicare queste variabili di ambiente alla tua shell corrente, esegui il seguente comando:
source ~/.bash_profile
Testa il client
Quindi, esegui una rapida query per assicurarti che openstackclient
è pronto per l'uso. Per vedere se riesci a parlare con il server API, esegui il seguente comando:
openstack image list
Se il comando ha esito positivo, il sistema visualizza un elenco delle immagini disponibili durante la creazione di un server.
Messaggio password portachiavi
Se esegui il client sul sistema operativo Ubuntu® e ti viene richiesta una password per il portachiavi, esegui il client con --no-cache
opzione, come mostrato nell'esempio seguente:
openstack --no-cache image-list
Oppure puoi impostare la variabile di ambiente OS_NO_CACHE=1
come mostrato nell'esempio di configurazione precedente.
Visualizza l'elenco dei comandi
Puoi ottenere un elenco completo di comandi utilizzando il comando seguente:
openstack help
Nota :Non puoi usare tutti i comandi elencati. Il openstackclient
utilizza versioni di sviluppo recenti di OpenStack®, quindi include il supporto per alcune funzionalità che Rackspace non ha implementato in Rackspace Cloud.
Puoi ottenere ulteriore assistenza per un sottocomando eseguendo il comando seguente:
openstack help network
Risoluzione dei problemi
Usa il --debug
flag per emettere sia la richiesta completa da openstackclient
ed eventuali risposte dalle API di Rackspace Cloud. Queste informazioni possono essere utili quando presenti una segnalazione di bug o apri un ticket di supporto.
Un problema comune è l'inserimento errato di nome utente, nome tenant o password, quindi assicurati di ricontrollare queste impostazioni.
Ricorda che se modifichi una variabile di ambiente, devi disconnetterti e riconnetterti o dire alla tua shell di riapplicare il .bash_profile ancora utilizzando il seguente comando:
source ~/.bash_profile
Puoi anche utilizzare le opzioni elencate nella openstack help
output per sovrascrivere alcune impostazioni delle variabili di ambiente. Se non sei sicuro della regione, ad esempio, puoi sostituirla con --os-region-name
opzione come mostrato nell'esempio seguente:
openstack --os-region-name ORD image list
Vantaggi rispetto al pannello di controllo cloud
Il openstackclient
supporta funzionalità nell'API Cloud Servers ma che il Pannello di controllo Cloud non espone. Ad esempio, il comando seguente crea un server con OpenStack Config Drive e dati utente per cloud-init:
openstack server create --image "Ubuntu 16.04 LTS (Xenial Xerus) (PVHVM)" --flavor general1-1 --config-drive=True --user-data=rack-ubuntu.yml openstack-server
Utilizza la scheda Feedback per inserire commenti o porre domande. Puoi anche avviare una conversazione con noi.