[PYTHON] Verwendung von PyCharm mit Glue-Entwicklungsendpunkten, die in VPC ausgeführt werden
Die Grundlagen folgen dem folgenden Artikel.
Tutorial: Einrichten von PyCharm Professional auf dem Entwicklungsendpunkt
Da in diesem Artikel jedoch ein Entwicklungsendpunkt angenommen wird, der außerhalb der VPC ausgeführt wird, unterscheidet sich die Vorgehensweise für Endpunkte, die innerhalb der VPC ausgeführt werden, erheblich.
Seien Sie vorsichtig beim Umgang mit Endpunkten in VPC
――Wenn Sie sich in einer privaten VPC befinden, berühren Sie diese nicht direkt
- Sie müssen einen Plattformserver erstellen, um eine Verbindung mit SFTP herzustellen
- Außerdem müssen Sie lokal einen SSH-Tunnel erstellen, um eine Verbindung mit PyCharm herzustellen.
Gründe, überhaupt einen Endpunkt in VPC zu erstellen
Wenn Glue nur S3 als Datenquelle verwendet, kann es sich außerhalb der VPC befinden. Wenn das JDBC-System jedoch als Datenquelle behandelt wird, muss es innerhalb der VPC platziert werden.
Diagramm
Umwelt / Prämisse
- Mac OS
- PyCharm Professional
- Tutorial-Voraussetzungen ist für den Entwicklungsendpunkt auf VPC für JDBC verfügbar Was machst du
- Legen Sie den öffentlichen Schlüssel für den Endpunkt fest, der in der Prämisse des Lernprogramms erstellt wurde
Implementierung
1. Erstellen Sie einen Plattformserver
--Erstellen eines Plattformservers auf übliche Weise
- Vergessen Sie nicht nur den SSH-Schlüssel
- Erstellt auf derselben VPC wie der Entwicklungsendpunkt
- Die VPC, zu der der Entwicklungsendpunkt gehört, kann bestätigt werden, indem Sie auf den Entwicklungsendpunkt klicken und die Details des angezeigten Endpunkts überprüfen.
2. Einrichten der SSH-Sicherheitsgruppe für das private Subnetz
- Erlaube ssh nur aus dem öffentlichen Subnetz, in dem sich die Plattform in der Sicherheitsgruppe des privaten Subnetzes befindet
3. Erstellen Sie einen SSH-Tunnel
--Erstellen Sie einen SSH-Tunnel wie unten gezeigt
ssh -i <Schritt Server pem> ec2-user@<Schritt Server öffentliche DNS> -L <Lokaler Port, den Sie einstellen möchten>:<Private Adresse des Entwicklungsendpunkts>:22 -N
--Wenn es nicht funktioniert und Sie debuggen möchten, fügen Sie die Option v hinzu.
- Die private Adresse des Entwicklungsendpunkts kann detailliert bestätigt werden
4. PyCharm-Einstellungen
- Richten Sie den Code und die Bibliothek wie im Tutorial beschrieben ein
- Der Bereitstellungsteil unterscheidet sich erheblich vom Lernprogramm
--
Host
gibt einen lokalen Host an
--Port
gibt den im Tunnel festgelegten lokalen Port an
- "Benutzername" ist Kleber
- "Authentifizierung" ist das Schlüsselpaar OpenSSH
- "Privatschlüsselpfad" ist der private Schlüsselpfad des öffentlichen Schlüssels, der im Entwicklungsendpunkt festgelegt ist (nicht der private EC2-Schlüssel).
--OK, wenn Sie mit
Test Connection
erfolgreich sind
Der Rest ist in Ordnung, wenn Sie dasselbe wie im Tutorial tun.
Andere
- Für den Entwicklungsendpunkt können mehrere öffentliche Schlüssel festgelegt werden, sodass keine Schlüssel gemeinsam genutzt werden müssen.
- Der SSH-Tunnel muss bei der Entwicklung mit PyCharm aktiv sein
Referenz
Tutorial: Einrichten von PyCharm Professional auf dem Entwicklungsendpunkt
Securely Connect to Linux Instances Running in a Private Amazon VPC | AWS Security Blog
Spark-Entwicklung mit dem Lagerhaus von AWS Glue-Ota
Debuggen mit Remote PyCharm-Help | PyCharm