Cloud Computing

Azure Sanal Makinelerin Otomatik Kapatılması ile Maliyet Tasarrufu

Maliyet! Azure sanal makineleri çalıştığı sürece faturalanmaktadır. Yani diğer birçok bulut hizmetinde olduğu gibi “kullandığın kadar öde” mantığı sanal makineler için geçerli değildir. Eğer belirli zaman aralıklarında sanal makinelere veya üzerinde çalışan uygulamalara erişim sağlanmıyorsa, makineleri bu zamanlarda durdurmak faturanızın önemli ölçüde hafiflemesini sağlayabilir. Peki, bu işlem otomatikleştirilebilir mi? Microsoft Azure portal üzerinde bu işlemi otomatikleştirmek için hazır bir yapı sunmamaktadır, ancak bir otomasyon hesabı ve runbook imdadımıza yetişmektedir.

Önkoşullar

  • ( Deneme abonelikleri de dahil olmak üzere ) Microsoft Azure abonelik
  • Otomasyon hesabı ( kılavuz)
  • Galeriden runbook script

1. Adım – Runbook’u import etme

Bir otomasyon hesabı oluşturduğunuzu varsayarak sırasıyla aşağıdaki adımları uygulayın;

  1. Portaldan oluşturduğunuz otomasyon hesabınızı seçin.
  2. Kaynaklar bölümündeki Runbook’lar linkine tıklayın.
  3. Sağda açılan Runbook’lar sayfasından Galeriye gözat’ a tıklayın.
  4. Filtre alanına “Scheduled Virtual Machine Shutdown/Startup” yazın.
  5. Scheduled Virtual Machine Shutdown/Startup” isimli runbook’a tıklayın.
  6. İçeri aktara tıklayın.
  7. Tamam’a tıklayın.
  8. Rubook’lar listesine dönün ve eklenen runbook’u seçip düzenleye tıklayın.
  9. Yayımlaya tıklayın.

clip_image002

clip_image004

 

2. Adım – Kimlik bilgilerinin ayarlanması

Runbook yürütüldüğünde, aboneliğinize erişmek için kimlik bilgilerine ihtiyaç duyar ve varsayılan olarak, “Default Automation Credential”adlı bir kimlik arar. Bu kimlik runbook’un çalışabilmesi için gereklidir ve co-administrator yetkilerine sahip olmalıdır.

Henüz yoksa Runbook kullanımı için Azure Active Directory kullanıcı oluşturun (kılavuz). Bu hesap co-administrator olarak tanımlanacak ve Runbook için “hizmet hesabı” olacak.

  1. Portaldan oluşturduğunuz otomasyon hesabınızı seçin.
  2. Varlıklar linkine tıklayın.
  3. Sağdaki sayfadan Kimlik Bilgileri linkine tıklayın.
  4. Kimlik bilgileri ekle linkine tıklayın.
  5. Yeni eklenecek kimlik bilgilerinin adına “Default Automation Credential” yazın (kullanıcı adına değil!).
  6. Klasik portal üzerinden oluşturduğunuz  co-administrator kullanıcı bilgilerini bu bölüme yazın.
  7. Ve oluştura tıklayın.

clip_image006

 

3. Adım – Abonelik adı için değişken oluşturulması

Runbook çalışırken hangi aboneliğe bağlanması gerektiğini bilmelidir. Bu kolay bir değişkende otomasyon hesabımıza ayarlayarak yapılır.

  1. Portaldan abonelikler bölümüne girin ve kullanmak istediğiniz abonelik adını not edin.
  2. Otomasyon hesabınızı açın.
  3. Varlıklar linkine tıklayın.
  4. Sağdaki sayfadan Değişkenler linkine tıklayın.
  5. Değişken ekleye tıklayın.
  6. Değişken adına “Default Azure Subscription” yazın.
  7. Tür alanından Dize seçin.
  8. Değer alanına az önce not aldığınız abonelik adınızı yazın.
  9. Ve oluştura tıklayın.

clip_image008

 

4. Adım -Zamanlama

Oluşturduğumuz runbook’un düzenli aralıklarla çalışabilmesi için zamanlanması gerekir. Bir zamanlama oluşturmak için aşağıdaki adımları uygulayın;

  1. Otomasyon hesabınızı açın.
  2. Varlıklar linkine tıklayın.
  3. Sağdaki sayfadan Zamanlamalar’a tıklayın.
  4. Zamanlama ekle linkine tıklayın.
  5. Yinelenme alanından Yineleneni seçin.
  6. Yinelenme sıklığını 1 – Saat olarak ayarlayın.
  7. Ve oluştura tıklayın.

clip_image010

 

5. Adım – Kaynak grubu için etiket ayarlama

Son olarak kaynak grubunu etiketlememiz gerekiyor. Eğer birden fazla kaynak grubunda sanal makine çalıştırıyorsanız diğerleri içinde aynı işlemi tekrarlayın.

  1. Kaynak gruplarından etiketlemek istediğiniz kaynak grubunu seçin.
  2. Etiketler linkine tıklayın.
  3. Sağdaki sayfada bulunan Anahtar alanına”AutoShutdownSchedule” yazın.
  4. Değer alanına sanal makinenin hangi saatler arasında kapalı olacağını yazın. Saat formatı; Kapanma -> Açılma şeklindedir. Örneğin makine gece 20:00 da kapanıp 05:00 da açılmasını istiyorsanız 20:00 -> 05:00 yazabilirsiniz.
  5. Runbook Eş Güdümlü Evrensel Zaman (UTC) kullanmaktadır. Yerel zamanı UTC ye çevirmeyi unutmayın.
  6. Örnek zaman periyotları;

Açıklama

Etiket değeri

Her gün 10PM – 6 AM UTC arasında kapalı

10pm -> 6am

Her gün 10PM – 6 AM UTC arasında kapalı (farklı format, aynı sonuç)

22:00 -> 06:00

Cumartesi ve Pazar günleri kapalı (gece yarısından -gece yarısına)

Saturday, Sunday

Her gün ve hafta sonları tüm gün 2 – 7 arasında kapalı

2:00 -> 7:00, Saturday, Sunday

Noel ve yılbaşı kapalı

December 25, January 1

Sürekli kapalı

0:00 -> 23:59:59

 

clip_image012

 

6. Adım – Test

Eğer her şey yolunda gittiyse runbook belirlediğiniz zaman aralıklarında sanal makinelerinızı kapatacak ve açacaktır. Yinede bir sorun olup olmadığını test etmek için aşağıdaki adımları uygulayın;

  • Otomasyon hesabınızdan Runbook’lar linkine tıklayın.
  • Oluşturduğunuz “Assert-AutoShutdownSchedule” isimli runbook’u seçin.
  • Sağdaki sayfada bulunan Başlat linkine tıklayın.
  • Parametreleri boş bırakın ve Tamam butonuna tıklayın.

clip_image014

  • Çıkış linkine tıklayın.
  • Sağ bölümde runbook çalışırken gerçekleşen olaylar görüntülenecektir.
  • Eğer sanal makinelerin kapanacağı zaman aralığında test ederseniz makineler kapanacaktır.

 

clip_image016

 

Sonuç

Eğer sanal makineleriniz günün belirli saatlerinde veya belirli günlerde kullanılmıyorsa, bu yazıda anlatılan yöntemi kullanarak faturalarınızda zamanlamaya bağlı olarak %40-%50 oranında tasarruf sağlayabilirsiniz. Böylelikle kaynaklarınızı daha verimli kullanabilirsiniz.

Bir sonraki yazımızda Azure sanal makinelerinde performans iyileştirme konusuna değineceğiz.

Hoşça kalın.

 

 

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu