$ cat /etc/redhat-release
CentOS Linux release 7.1.1503 (Core)
$ python -V
Python 2.7.5
$ pip -V
pip 7.1.0 from /usr/lib/python2.7/site-packages (python 2.7)
$ sudo pip install --upgrade google-api-python-client
$ sudo curl https://sdk.cloud.google.com | bash
→ Alle Fragen in der Mitte können mit Y oder dem Standardwert belassen werden.
$ exec -l $SHELL
Ich werde zwei Methoden erklären.
So erstellen Sie ein Anwendungskonto anstelle Ihres eigenen Google-Kontos. Natürlich ist es ein Mechanismus für die Anwendung, die Sie (sie) verwenden. Achten Sie also darauf, sie nicht an andere Personen zu verteilen.
Wählen Sie in der Google Developer Console Ihres Projekts unter "APIs und Authentifizierungsdaten" die Option "Anmeldeinformationen-Dienstkonto hinzufügen" aus.
Geben Sie "JSON" als Schlüsseltyp an und wählen Sie "Erstellen".
Eine Anmeldeinformationsdatei wird mit dem Namen "Projektname-xxx.json" heruntergeladen. Speichern Sie sie daher in einem beliebigen Pfad des Hosts, der die API-Clientbibliothek verwendet (* Vorsichtsmaßnahmen bei der Handhabung *).
Setzen Sie die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS auf den Pfad der Anmeldeinformationsdatei. Falls erforderlich, wird empfohlen, es in .bash_profile und anderen zu beschreiben.
$ export GOOGLE_APPLICATION_CREDENTIALS='/xxx/xxx/Projektname-xxx.json'
So authentifizieren Sie sich bei Ihrem Google-Konto und speichern Ihre Anmeldeinformationen auf dem Host.
$ gcloud auth login
Go to the following link in your browser:
https://accounts.google.com/o/oauth2/auth?redirect_uri=xxx...
→ Stellen Sie mit einem Webbrowser, der mit einem Google-Konto angemeldet ist, das Zugriffsrechte auf Ihr Projekt hat, eine Verbindung zur angezeigten URL her.
Enter verification code:* Geben Sie den Bestätigungscode ein, der unter der obigen URL angezeigt wird
Saved Application Default Credentials.
sample.py
1 #!/usr/bin/python
2
3 from oauth2client.client import GoogleCredentials
4 from googleapiclient.discovery import build
5
6 credentials = GoogleCredentials.get_application_default()
7
8 compute = build('compute', 'v1', credentials=credentials)
9 project = 'Projekt-ID'
10 zone = 'Zonenname'
11
12 print compute.instances().list(project=project, zone=zone).execute()
Führen Sie den Vorgang aus und überprüfen Sie ihn, wenn die GCE-Instanzinformationen gestaffelt angezeigt werden.
Ich habe vor nichts Angst, wenn ich hier bin. Schreiben Sie einfach einen schönen Code, während Sie auf die Referenz verweisen.
Der Befehl gcloud reicht für kleine Operationen aus, aber manchmal möchten Sie vielleicht etwas Feines tun.
Das dafür erforderliche OAuth-Authentifizierungsverfahren war jedoch insofern problematisch, als es eine bestimmte Anzahl von Personen gab, die es aufgaben (individueller Eindruck), aber diese Geschichte (http://googlecloudplatform-japan.blogspot.jp) /2015/07/application-default-credentials-google.html) Ich bin dankbar, dass es seitdem viel einfacher geworden ist.
Dieser Inhalt ist ab September 2015. Da Änderungen im Zusammenhang mit Google schnell sind, sollten Sie sich nicht beeilen, um die neuesten primären Informationen zu erhalten, auch wenn sich etwas ändert.
Recommended Posts