Google Cloud'da VM Kurulumu

Google Cloud'da VM Kurulumu

Bu yazıda Google Cloud üzerinde Virtual Machine (VM) kurulumunu ve açılan sanal makineye SSH ile nasıl bağlanılabileceğini anlatacağım.
Oğuz Erdoğan23 Mar 2022

Virtual Machine (VM), bildiğimiz gerçek bilgisayardan çok farklı değil. Belirli bir CPU ve RAM'i bulunan, verilerinizi kaydetmenize olanak sağlayan bir disk alanı olan ve hatta gerektiğinde internete bağlanabileceğimiz bir sanal makine.

Kısaca kullanım alanlarından söz etmek gerekirse:

  • Bulut ortamında uygulama ve otomasyon işlemleri geliştirmek.
  • Yeni işletim sistemlerini test etmek.
  • Yazılımcıların geliştirdikleri uygulamaların test işlemleri için uygun ortam oluşturabilmek.
  • Mevcut işletim sisteminizi yedeklemek.
  • Daha eski bir işletim sistemi kullanarak virüs bulaşmış verilere erişmek.
  • Yazılım veya uygulamaları farklı işletim sistemlerinde çalıştırmak.

Virtual Machine hakkında ufak bir ön bilgiye sahip olduğumuza göre adım adım Google Cloud üzerinden VM kurulumuna geçebiliriz.

 

Adım 1: Google Cloud Kullanıcı hesabı açma

Öncelikle bir Google Cloud hesabı oluşturmalıyız. Bağlantıya tıklayarak yeni bir hesap oluşturabilir veya mevcut bir hesabınız varsa giriş yapabilirsiniz.

Giriş yaptıktan sonra bizi aşağıdaki ekran karşılıyor ve Google bize 300$’lık hediye kredi tanımlıyor.

Bu krediler kullanılan servislere göre faturalandırılıyor ve kredi limitinizden eksiliyor. Kredinizin bitmesi durumunda ise endişelenmenize gerek yok, Google otomatik olarak bir ücret kesilmeyeceğinin sözünü veriyor.

Sayfada Activate butonuna basarak gerekli bilgileri girmeniz gerekiyor. Burada sizden kullanım amacınız, adres ve kredi kartı bilgileriniz isteniyor. Yukarıda da bahsettiğim gibi deneme sonrası sizden bir istek gelmediği sürece herhangi bir ücretlendirme yapılmıyor. Robot olup olmadığınızı anlayabilmek adına istenen bir bilgi. Yine de bu adımda bakiyesi bulunmayan bir sanal kartınızın bilgilerini girmenizi tavsiye ederim.

 

Adım 2: Yeni proje açma

Google’daki çoğu servisten faydalanabilmek için öncelikle bir proje açmanız gerekiyor. Aşağıdaki şekilde yeni bir proje başlatabilirsiniz.

Projemizi açtıktan sonra aşağıdaki şekilde bir bildirim çıkıyor. ENABLE diyerek devam ediyoruz.

 

Adım 3: SSH key oluşturma

SSH (Secure Shell), ağ üzerinde bulunan bir sunucuya bağlanmaya ve bağlanılan sunucu üzerinde komut çalıştırma, dosya transferi gibi işlemleri gerçekleştirmeye olanak sağlayan bir uzak sunucu bağlantı protokolüdür ve private key ile public key olmak üzere iki anahtar üzerinden çalışmaktadır.

Bu anahtarlardan public key, verileri şifreleyecek ve güvenli erişim talebinizi doğrulayacak şekilde, uzaktan erişim sağlamak istediğimiz sunucuya yerleştirilir. Private key ise şifrelenmiş verileri çözmek için istemci tarafında bulundurulan ve gizliliğine son derece dikkat edilmesi gereken anahtardır.

Özetle yapacağımız işlem sanal bilgisayarımıza bağlanırken beraberinde bir asma kilit göndermek ve karşıdakinin bu kilidi açmasını beklemek.

Linux & macOS sistemlerde SSH key oluşturmak için öncelikle terminale gidiyoruz. Terminali açıyor ve bulunduğumuz dizinde aşağıdaki kodları kendimizce düzenleyip yazıyoruz.

>> ssh-keygen -t rsa -f ~/.ssh/key_FILENAME -C USER -b 2048

Windows sistemde ise Linux komutları çalıştırabilmek için Gitbash kurmalısınız. Powershell veya Gitbash'i açarak aşağıdaki kodu yazabilirsiniz.

Dikkat: Burada WINDOWS_USER, key_FILENAME ve VM_USER alanlarını siz doldurmalısınız.

>> ssh-keygen -t rsa -f C:\Users\WINDOWS_USER\.ssh\key_FILENAME -C VM_USER -b 2048
  • key_FILENAME: SSH key dosyasının adı.
    Örneğin aşağıda miuul-data isminde bir private key oluşturacağız ve public key de miuul-data.pub olacak.
  • WINDOWS_USER: Windows kullanıcı adı.
  • USER ya da VM_USER: Kullanmak istediğiniz username.

Dikkat: USER, VM içerisinden yetkilerini ayarlamadığınız sürece root yetkisine sahip olmaz.

Örnek:

>> ssh-keygen -t rsa -f C:\Users\miuul\.ssh\miuul-data -C oguz -b 2048

oguz adına açılan bir bir public key aşağıdakine benzer olacaktır:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF... oguz

Bu işlemden sonra bir şifre girmeniz ve ardından doğrulamanız istenecek. Dilerseniz entera basıp boş da bırakabilirsiniz.

Dikkat: Terminalde yazı yazdığınız zaman cursor tepki vermeyecektir, bu aşamada terminalden şifre giremiyorum diye düşünmeyin.

Sonrasında oluşturduğumuz SSH key içeriğini kopyalayıp bunu Google Cloud Platform (GCP) üzerinde tanımlamanız gerekmekte. Bu aşamada verdiğiniz public key filenameini girmeniz de gerekiyor. Ben miuul-data olarak oluşturduğum için bu şekilde yazacağım. Bu işlem için sırasıyla terminal üzerinde:

  • macOS & Linux kullanıcıları
>> cd ~/.ssh
>> cat miuul-data.pub
  • Windows kullanıcıları
>> cd C:\Users\WINDOWS_USER\.ssh\
>> cat miuul-data.pub

komutlarını yazmalı. Bu aşamadan sonra aşağıdakine benzer bir çıktı oluştuğunu gözlemleyebilirsiniz.


Windows üzerinde ilgili dizine gidip not defteri ile de bu dosyayı açabilirsiniz.


Şimdi de oluşturduğumuz bu SSH keyi GCP üzerinde tanımlayalım. Sırasıyla Compute Engine → Settings → Metadata → SSH key → Add adımlarını izleyip ssh-keyden kopyaladıklarımızı yapıştırıp ardından save diyoruz ve VM kurulumu adımlarımıza devam ediyoruz.

 

Adım 4: Instance Kurulumu

Projemizi ayarladıktan sonra: Instances ve Create instance diyoruz.

CREATE ENGINE diyerek devam ediyoruz.

Name ile instance adını giriyorum.

Region ise makinenin olduğu lokasyon bilgisi. Türkiye'ye yakın bir lokasyon olduğu için Frankurt'u seçtim.

Google bize burada kullanım amaçlarına göre çeşitli kategoriler sunuyor. İş ihtiyacına göre çeşitli makineler seçilebilir.

Örnek olarak Frankurt lokasyonlu 4 vCPU 16 GB Ram özelliklerinde bir VM seçiyorum. Sıra geldi işletim sistemimizi ve depolama alanımızı seçmeye. Boot disk type için SSD seçmekte fayda var, işletim sistemi için benim tercihim Ubuntu 20.04 LTS. Başlangıç için 30 gb alan yeterli olacaktır.

CREATE diyerek Instance kurulumunu tamamlıyoruz. External IP ile oluşturduğumuz VM’in IP bilgisini öğrenebiliriz.

 

Adım 5: Oluşturulan VM’e SSH ile bağlanma

Terminali açıp aşağıdaki şekilde bağlantımızı gerçekleştirebiliriz.

>> ssh -i ~/.ssh/miuul-data oguz@35.198.167.88

 

VSCode üzerinden SSH config ile VM bağlanma

Hiçbir kod yazmadan pratik bir şekilde VSCode üzerinden VM’e SSH bağlantısı yapmak da mümkün. Nasıl olacağına birlikte bakalım.

Öncelikle ssh keylerimi oluşturduğum dosyada config isimli bir dosya oluşturuyorum, herhangi bir uzantı girmiyorum.

Daha sonra VSCode içerisinde Remote-SSH isimli eklentiyi yüklüyoruz.


İlgili eklentiyi yükledikten sonra CTRL + Shift + P yaparak Remote-SSH: Connect to Host seçeneğine tıklıyorum.

İsimlendirdiğimiz SSH bağlantısı çıkacaktır.

Açılan yeni pencereden terminal aracılığıyla artık VM üzerinde komut yazabiliriz.

 

Kaynaklar

Miuul topluluğunun bir parçası ol!

Abone ol butonuna tıklayarak Miuul'dan pazarlama ve haber içerikleri almayı onaylıyorum.