Dieser Artikel ist der Artikel zum 9. Tag des Web Crew Adventskalenders 2017. Gestern war @ kadotas "Implementieren der WEB-Push-Benachrichtigung".
Ich musste eine Verknüpfung mit Google Cloud Storage (GCS) in einer Java-Anwendung (Java 6) herstellen, die unter CentOS 5 als Anwendungsserver ausgeführt wird. Ich habe es auf leicht akrobatische Weise erkannt und diesen Artikel geschrieben.
Eine gängige Methode zum Arbeiten mit Java-Anwendungen ist die Verwendung der Google Cloud Client Library für Java für die Arbeit mit GCS. Als wir tatsächlich eine Funktion implementiert haben, die eine GCS-Integration in eine andere Anwendung erfordert, haben wir die Google Cloud Client Library für Java zur Integration in GCS verwendet.
Für die Google Cloud Client Library für Java ist jedoch eine Ausführungsumgebung mit Java 7 oder höher erforderlich. Dieses Mal war die Java-Version der verknüpften Anwendung Java 6, daher war eine andere Methode erforderlich.
** Installieren Sie CLOUD SDK unter CentOS5 und führen Sie den Befehl CLOUD SDK durch externen Aufruf von Java aus **
Das Verfahren zum Installieren des CLOUD SDK für Cent OS 5 ist grob wie folgt unterteilt.
Ich werde jeden von ihnen anhand der zu beachtenden Punkte erklären.
Für das CLOUD SDK muss Python 2.7 installiert sein. Die Standardversion von Python für Cent OS 5 ist 2.4. Also beginne ich mit einem Upgrade von Python.
** Sie sollten denken, dass Sie Python unter Cent OS 5 nicht mit yum aktualisieren können ** ** Sie sollten denken, dass Sie Python unter Cent OS 5 nicht mit yum aktualisieren können ** ** Sie sollten denken, dass Sie Python unter Cent OS 5 nicht mit yum aktualisieren können **
Ich habe es dreimal gesagt, weil es wichtig ist.
Wenn Sie in Google Teacher nach "Centos Python Update" suchen, wird die Methode mit yum möglicherweise getroffen. Es ist jedoch besser zu glauben, dass Python Update mit yum Repository in Cent OS 5 nicht möglich ist.
Das offizielle Yum-Repository für Cent OS 5 ist EOL und Selbst wenn Sie das Repository durch eine Spiegel-Site ersetzen, können Sie eine yum-Installation wie "centos-release-scl-rh (Software-Sammlungen für CentOS)" verwenden.
Lassen Sie uns das Update anstreben, indem wir es kontinuierlich aus der komprimierten Datei dekomprimieren.
Laden Sie die komprimierte Datei herunter und entpacken Sie sie
wget --no-check-certificate https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar xvzf Python-2.7.9.tgz
Installieren Sie Python
cd Python-2.7.9
./configure --prefix=/usr/local
make
make altinstall
Python-Ersatz
mv /usr/bin/python /usr/bin/python_bk
Laden Sie die komprimierte Datei herunter und entpacken Sie sie
cd /usr/local
Der Speicherort des CLOUD SDK ist wie oben.
wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-158.0.0-linux-x86_64.tar.gz?hl=ja tar xfvz google-cloud-sdk-158.0.0-linux-x86_64.tar.gz?hl=ja
Installieren Sie das CLOUD SDK
./google-cloud-sdk/install.sh
Bestätigen Sie die Installation des CLOUD SDK
/usr/local/google-cloud-sdk/bin/gcloud --help
Führen Sie nach der Installation des CLOUD SDK auf dem Anwendungsserver den Befehl SDK durch externen Aufruf in der Java-Anwendung aus.
In diesem Abschnitt wird das Verfahren zum Hochladen von Dateien vom Anwendungsserver auf GCS beschrieben.
Die Genehmigung wird über ein Dienstkonto erteilt Weitere Informationen finden Sie unter Autorisierung des Cloud SDK-Tools.
```java
ProcessBuilder pb = new ProcessBuilder({"/usr/local/google-cloud-sdk/bin/gcloud", "auth", "activate-service-account", "--key-file", "[Dienstkonto-Schlüsseldatei]"});
process =pb.start();
processRes = process.waitFor();
//Führen Sie die Fehlerbehandlung abhängig vom Ergebnis von processRes durch
```
Laden Sie mit gsutil vom Anwendungsserver auf GCS hoch
ProcessBuilder pb = new ProcessBuilder({"/usr/local/google-cloud-sdk/bin/gsutil","mv","[Dateipfad hochladen]","[Laden Sie die GCS-Bucket-URL des Ziels hoch]"});
process =pb.start();
processRes = process.waitFor();
//Führen Sie die Fehlerbehandlung abhängig vom Ergebnis von processRes durch
Es begann mit einer leichten Panik über "GCS-Zusammenarbeit ohne Verwendung der Google Cloud Client Library für Java !? Was soll ich tun !!", "CentOS 5, Standard-Python ist 2.4 !? Was soll ich tun !!", "Ich kann yum nicht verwenden!" Es gab viele Fälle wie "Was soll ich tun !!" und "Ich kenne das Erfolgsurteil des externen Aufrufs des SDK-Befehls nicht !? Was soll ich tun !!", aber als Ergebnis besuchte ich verschiedene Websites und erhielt Ratschläge von meinem Chef. Ich konnte es fest umsetzen. Natürlich ist es wichtig, nicht aufzuhören zu denken, weil man es nicht kann, sondern einen solchen Ansatz zu versuchen. Dieser Fall ist vielleicht nicht sehr häufig, aber ich hoffe, Sie gewöhnen sich daran, jemandem zu helfen, der Probleme mit einem ähnlichen Phänomen hat.
Morgen ist @ t-itou. Vielen Dank.
Das Web-Team ist immer auf der Suche nach Mitarbeitern. Bitte zögern Sie nicht einzutreten.
Rekrutierung von Entwicklungsingenieuren Rekrutierung von Front-End-Ingenieuren Rekrutierung von Datenbankingenieuren
Recommended Posts