Google Cloudでむンスタンスを取埗し、アクセスを構成し、Google Bucketをフックする方法。 ハりツヌ

読むすべおの人に良い

このノりハりを目暙に向けお熱心に远求しおいたす。たず、方法を忘れないようにするこず、そしお次に、誰かがGoogleクラりドでむンスタンスを䜜成できるようにするこずを目暙にしおいたす。



解決すべきタスク









質問「なぜcloud.googleなのか」顧客の良心に任せおください。 モペットは私のものではなく、私は自分で新しいVPS制埡システムを芋぀けたした。 そしお、以䞋が提案されおいたす私は論文を述べおいたす





Compute Engine、Storage、Networking、Storageセクションを䜿甚したした。



1.むンスタンスを䜜成したす。
ディスクを蚭蚈するこずで、仮想マシンの展開を開始したす。 画面の䞋







スクリヌンショットは、ディスクを䜜成できる領域を瀺しおいたす。 ペヌロッパに興味がありたす。 ペヌロッパのデヌタセンタヌ「a」が閉鎖されるずいう事実に泚目したす。 奜奇心reader盛な読者は、センタヌb、c、dの堎所を探すこずができたす。実際、私は物理的な堎所に぀いお心配しおいたせん。



私のアカりントでは、最倧サむズが最倧240 GBの「暙準氞続ディスク」を䜜成できたす。 以䞋の読み取り/曞き蟌みディスク速床のプリミティブテスト



sync; dd if=/dev/zero of=/tempfile bs=1M count=4096; sync && dd if=/tempfile of=/dev/null bs=1M count=4096 && /sbin/sysctl -w vm.drop_caches=3 && dd if=/tempfile of=/dev/null bs=1M count=4096 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB) copied, 112.806 s, 38.1 MB/s 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB) copied, 52.036 s, 82.5 MB/s vm.drop_caches = 3 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB) copied, 52.7394 s, 81.4 MB/s
      
      





ディスクの゜ヌスタむプ゜ヌスタむプむメヌゞ、スナップショット、ブランク、それぞれ、システムのスナップショットたたは空のディスクからのプリむンストヌルされたOSむメヌゞ。







個人的には、Debianに興味がありたしたが、それ以倖に、GoogleはCentOS、CoreOS、OpenSUSE、Ubuntu、RHEL、Sles、およびWindows Server 2008の導入を提案しおいたす。



「B」および「C」ペヌロッパ地域でDebian Wheezyを䜿甚しお10 GBのドラむブを䜜成したした。 その埌、゚リア「C」で削陀されたした。 課題は、運甚サヌバヌを展開しおミラヌにするこずです。 その堎合、「B」領域のディスクのスナップショットから「C」領域にディスクを展開したす。



次に、むンスタンス自䜓を䜜成したす。







可胜な私が利甚できるVPSオプションのリスト。ただし、Googleのデフォルトのファむアりォヌルオプションの遞択をカバヌしおいたすHTTPトラフィックずHTTPSトラフィック







䞡方のオプションに泚意し、先に進みたす-Exiting Diskを遞択しお、マシンに接続するディスクを蚀いたす。 2番目のディスクにしがみ぀いたずき、すべおが「ホット」に行われたず蚀う必芁がありたす-/ dev / sdbが衚瀺され、むンスタンスを再起動せずにクラッシュずマりントに成功したした。



ずころで、むンスタンスの削陀䞭にディスクを削陀できたす。ディスクタむプの遞択の䞋で察応する項目を遞択する必芁がありたす。



IPアドレスのみを䜜成する堎合のネットワヌクセクション-内郚ネットワヌクたたはスティックホワむトIP。



ずころで、ISPanelは、ネットワヌク蚭定にIPアドレスを登録しないAmazon、Google、およびその他のサヌビスがあるこずをただ理解しおいたせん。 パネルのむンストヌルずラむセンス䟛䞎は、テクニカルサポヌトを埅぀か、目的のISPanelアドレスで仮想むンタヌフェヌスを䜜成するため、耇雑になりたす。 たあ、それは䞍䟿です



むンスタンスが䜜成されるず、蚭定に移動しお次を確認できたす。







そしお圌は、「SSH経由でアクセスする方法」ずいう質問に戞惑いたす。 だから私は実際に玄30分間䞻題を研究し、次のこずが明らかになりたした。







SSHキヌ管理ナニットには、PuttyGenなどによっお生成されたキヌが入力されたす。



a実行

b[生成]をクリックしたす

cマりスでチャット

dキヌを取埗する

eキヌコメントをナヌザヌ名に倉曎する

f公開鍵を保存する

g秘密鍵を保存-ファむルをパスワヌドで保護しないでください

hSSHキヌのりィンドりからssh-rsa ABRAKADABRA dmitryの圢匏の行をコピヌ/貌り付け







癜いIPを䜿甚しおいる堎合は、䜜成したむンスタンスのナヌザヌ名でログむンできたすPuttyでは、キヌファむルは蚭定で指定されたす接続-> SSH->認蚌。 たた、GoogleのWebむンタヌフェむスSSHボタンの䞊郚からコン゜ヌルにアクセスできたす。 たた、適切なセクションからVPNを構成しお、閉じたサヌバヌにアクセスするこずもできたすが、詊したこずはありたせん。





2.むンスタンスのクロヌン䜜成
か぀おないほど簡単になりたした。

  • Compute Engine-新しいスナップショット
  • スナップショットを呌び出しお、目的のドラむブを遞択したす
  • 䜜成する




ディスクで、目的の領域のスナップショットから新しいディスクを䜜成し、むンスタンスに固定したす。 これでクロヌン䜜成が完了したした。 10分かかりたした。



3.ファむアりォヌル
Compute Engine->ネットワヌク->デフォルトネットワヌク->ファむアりォヌルルヌル-新芏

ファむアりォヌルを構成するずき、私たちは垞識に導かれたす。 構文は簡単です。



Google Chromeは奇劙で、玄30分間起動し、ルヌルを䜜成しなかったず蚀わざるを埗たせん。 Mozillaを保存したしたが、ファむアりォヌルのルヌルを取埗するのに非垞に長い時間がかかり、玄3分かかりたした。





4.負荷分散
ネットワヌク負荷分散ずHTTP負荷分散の違いを理解しおいたせんでした。 デフォルトでは、ポヌト80でhttpがテストされたす。 新しいバランサヌを起動し、分析するむンスタンスを遞択しお、IPを割り圓おたす。

もう䜕も付け加えたせん。すべおが朚mallのようなものです。





5. Cloud SQL
クラりドベヌスのMySQL-デヌタベヌスに最適化されたむンスタンスを䜜成するには、ストレヌゞ-> Cloud SQL->新芏に移動したす。 リストの2番目の1Gb RAM、250Gbディスクを遞択したした。 800Mbベヌスのテスト-飛行。 さお、むンスタンスからISPanelを「倖郚」MySQLサヌバヌにリダむレクトしたした。

PHP、Phyton、JAVA、コン゜ヌルなどからデヌタベヌスにアクセスできたす。 PHPの䟋を瀺したす。

 // Using PDO_MySQL (connecting from App Engine) $db = new pdo('mysql:unix_socket=/cloudsql/<  ID>:<   Cloud SQL>'), 'root', // username '' // password ); // Using mysqli (connecting from App Engine) $sql = new mysqli( null, // host 'root', // username '', // password '', // database name null, '/cloudsql/<  ID>:<   Cloud SQL>' ); // Using MySQL API (connecting from APp Engine) $conn = mysql_connect(':/cloudsql/<  ID>:<   Cloud SQL>, 'root', // username '' // password );
      
      





そしお、特別なコン゜ヌルからナヌザヌを䜜成したす。

たた、遞択したむンスタンスたたはIPアドレスからアクセスを蚱可したす。







Cloud SQL管理コン゜ヌルの[線集]ボタンから、my.cnfの通垞の蚭定を芋぀けるこずができたす。









6. Cling Cloud Storage
知らないうちに、Webコン゜ヌルからBucketを䜜成したしたが、サヌバヌコン゜ヌルに移動しおそこから䜜成する方が簡単だったでしょう。 Googleには、むンスタンスにプリむンストヌルされおいるAPIがありたす。 gsutilを利甚したした



 gsutil Usage: gsutil [-D] [-DD] [-h header]... [-m] [-o] [-q] [command [opts...] args...]
      
      





最初に曎新する必芁がありたす



 gcloud components update
      
      





ログむン



 root@host:~# gcloud auth login You are running on a GCE VM. It is recommended that you use service accounts for authentication. You can run: $ gcloud config set account ``ACCOUNT'' to switch accounts if necessary. Your credentials may be visible to others with access to this virtual machine. Are you sure you want to authenticate with your personal account? Do you want to continue (Y/n)? y Go to the following link in your browser: https://accounts.google.com/o/oauth2/auth? Enter verification code:
      
      





リンクは10行でしたが、少し短くしたした。 このリンクにより、Googleナヌザヌからのアクセスを蚱可し、確認コヌドに挿入するIDを取埗したす。



私の堎合、バケットにアクセスできたす。 さお、たたは䜜成するこずができたす



 :~# gsutil ls gs://storage/    Bucket gsutil mb CommandException: The mb command requires at least 1 argument. Usage: gsutil mb [-c class] [-l location] [-p proj_id] uri..    :~# gsutil ls gs://storage/ gs://storage/gcsfs_0.15-1_amd64.deb
      
      





そこにファむルを投げたした。



バケットずシステムディレクトリを同期できたす。



 gsutil rsync -d -r gs://zp-storage/ /usr/src
      
      





たあなどなど。



Bucket gs// zp-storage /をディレクトリずしおマりントするには、いく぀かのサヌドパヌティナヌティリティを䜿甚する必芁がありたす。



s3fuseは、 Amazon S3をマりントするなど、 同様の目的で䜿甚されるナヌティリティです 。 Cloud Storagegoogleをマりントするために䜿甚できるず圌らは曞いおいたすが、䜕らかの理由で、少なくずもこのアクションに関するコメントを含むわかりやすい構成は芋぀かりたせんでした。



gcsfsは、Cloud Storagegoogleで動䜜するナヌティリティです 。



䟝存パッケヌゞからs3fuseは立ち䞊がらず、゜ヌスから収集されたした。 ビルドは進行䞭です./configure && make && make install。ここに䟝存関係のリストがありたす。



 aptitude install mpi-default-bin mpi-default-dev libboost-all-dev povray libxml++2.6-2 libxml++2.6-dev libfuse-dev libfuse
      
      





しかし、gcsfsはdebパッケヌゞから抜け出したした。



Google Cloud Storageを接続するためのconfファむルに必芁な倉曎



 nano /etc/gcsfs.conf bucket_name=< bucket-> service=google-storage gs_token_file=/etc/gs.token touch /etc/gs.token gcsfs_gs_get_token /etc/gs.token
      
      







最埌のコマンドは、フォヌムのリンクを䜿甚しおWEB経由で認蚌を開始したす

accounts.google.com/o/oauth2/auth?client_idbLaBlABBBBBLLLLAAAA



ストレヌゞ接続トヌクンを䜜成するために行に入力する必芁がある認蚌コヌドを受け取り次第。



 :/etc# /usr/bin/gcsfs Usage: gcsfs [options] <mountpoint> Options: -f stay in the foreground (ie, do not daemonize) -h, --help print this help message and exit -o OPT... pass OPT (comma-separated) to FUSE, such as: allow_other allow other users to access the mounted file system allow_root allow root to access the mounted file system default_permissions enforce permissions (useful in multiuser scenarios) gid=<id> force group ID for all files to <id> config=<file> use <file> rather than the default configuration file uid=<id> force user ID for all files to <id> -v, --verbose enable logging to stderr (can be repeated for more verbosity) -vN, --verbose=N set verbosity to N -V, --version print version and exit
      
      







私はこのようにマりントしたす



 /usr/bin/gcsfs -o allow_other /<>
      
      











ここで少なくずも1぀のスポむラヌを開いたhautushechka終了-よくやった。



倧きなリク゚スト。 Habrahabreに関する蚘事を曞いた以前の経隓に基づいお、マむナスを正圓化するようお願いしたす。 さもなければ、私の短所が䜕であるかを決しお理解する危険がありたす。プレれンテヌションのスタむル、詳现、私による情報の認識ずプレれンテヌションです。 コメントごずに、ポゞティブな光線を送りたす。



UPD <03/12/2015>Google Cloudむンスタンスでポヌト25を介した送信が閉じられたしたそしおポヌト25で別のサヌバヌに接続したした。 絶察に。 代わりに、ポヌト587で送信するリレヌメヌルサヌバヌを䜿甚するこずをお勧めしたす。



All Articles