私はクラウドコンピューティングに非常に慣れておらず、ソフトウェアエンジニアリングのバックグラウンドを持っていないので、私が言うことが間違っている場合はすみません。
私はSpyderのようなIDEで作業することに慣れていて、それを維持したいと思っています。最近、私の組織ではGoogle Cloudを試しています。私がやろうとしているのは、Google CloudのAPIを使用して、コンピューターではなくクラウドで簡単なスクリプトを実行することです。
これをSpyderを介してクラウドで実行したいとします。
x=3
y=2
print(f'your result is {x+y}')
私は次のようなことができると思います:
from googleapiclient import discovery
compute = discovery.build('compute', 'v1')
request = compute.instances().start(project=project, zone=zone, instance=instance)
request.execute()
#Do something to connect to instance
x=3
y=2
print(f'your result is {x+y}')
これを行う方法はありますか?またはPythonに実行するように指示しますscript.py
か?ありがとう、そして私がはっきりしていないかどうか教えてください。
謝罪する必要はありません。ある時点で、誰もがクラウドコンピューティングに不慣れです。
クラウドコンピューティングについて読んで、それが何であるか、そしてそれが現在の経験とどのように比較されるかをより深く理解することをお勧めします。
含めたコードはそのままでは機能しません。
Google CloudPlatformのいくつかのコンピューティングサービスの1つであるComputeEngineとの対話には2つのモードがあります。
基本的に、Compute Engineインスタンスとのやり取りは、ラップトップとのやり取りと似ています。Pythonプログラムを実行するには、PythonのREPLを起動するか、スクリプトを作成してから、Pythonインタープリターを介してスクリプトを実行します。これは、ComputeEngineインスタンスでこれがどのように機能するかでもあります。
Linuxでは次の1行でこれを行うことができます。
python -c "x=2; y=3; print(x+y)"
ただし、最初に、インスタンスを作成するようにComputeEngineに指示する必要があります。これは、Google Cloud Console(http://console.cloud.google.com)、Google Cloud SDK、別名「gcloud」を使用するか、Compute Engine用のGoogleのPythonライブラリを使用して行うことができます(これがコードの機能です)。これらのアプローチのどれを使用するかに関係なく、それらはすべて、最終的にGoogle Cloudに対してREST呼び出しを行い、たとえばインスタンスをプロビジョニングします。
from googleapiclient import discovery
compute = discovery.build('compute', 'v1')
request = compute.instances().start(project=PROJECT, zone=ZONE, instance=INSTANCE)
request.execute()
#Do something to connect to instance
あなたの例は終わりconnect to instance
、これはインスタンスのプロビジョニングとそれとの相互作用の間の移行を示します。上記のコードの代わりに、「gcloud」と呼ばれることが多いGoogleのコマンドラインを使用することもできます。例:
gcloud compute instances create ${INSTANCE} \
--project=${PROJECT} \
--zone=${ZONE}
gcloud
使用できる便利なコマンドを提供しますssh
が、認証は次のように処理されます。
gcloud compute ssh ${INSTANCE} \
--project=${PROJECT} \
--zone=${ZONE} \
--command='python -c "x=2; y=3; print(x+y)"'
注意:このコマンドはCompute EngineインスタンスにSSHで接続し、Pythonプログラムを実行します。
これはこれを達成するための最良の方法ではありませんが、それを達成できる1つの方法を示してくれることを願っています。
Google Cloud Platformについて学ぶと、他にもコンピューティングサービスがあることがわかります。これらの他のコンピューティングサービスは、より高いレベルの抽象化を提供します。仮想マシンをプロビジョニングする代わりに、Pythonランタイムなどにコードを直接デプロイできます。Google AppEngineとGoogleCloud Functionsはどちらも、インスタンスをプロビジョニングせずにプログラムをコンピューティングサービスに直接デプロイする方法を提供します。これらのサービスはより高いレベルで動作するため、IDE内からコードを記述、テスト、さらにはデプロイすることもできます。
Google Cloud Platformは、要件に応じて無数のコンピューティングサービスを提供します。これらには、ストレージサービス、機械学習、分析、モノのインターネット、開発者ツールなどが付属しています。圧倒される可能性がありますが、基本から始めて(いくつかの「ハローワールド」チュートリアルに従ってください)、そこから受講する必要があります。 。
HTH!
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加