Öğretici: Azure'da çalışan VM ile Jenkins dağıtımlarını ölçeklendirme

Önemli

Birçok Azure hizmeti Jenkins eklentilerine sahip olsa da, bu eklentilerin çoğu 29 Şubat 2024 itibarıyla destek sona erdi. Azure CLI, Jenkins'i Azure hizmetleriyle tümleştirmenin şu anda önerilen yoludur. Daha fazla bilgi için Azureiçin Jenkins eklentileri makalesine bakın.

Bu öğreticide, Azure'da Linux sanal makineleri oluşturma ve VM'yi Jenkins'e iş düğümü olarak ekleme adımları gösterilmektedir.

Bu kılavuzda aşağıdakileri yapacaksınız:

  • Ajan makinesi oluşturma
  • Jenkins'e aracı ekleme
  • Yeni bir Jenkins serbest stil işi oluşturun
  • İşi Bir Azure VM aracısı üzerinde çalıştırma

Önkoşullar

Aracı sanal makinesini yapılandırma

  1. Azure kaynak grubu oluşturmak için az group create komutunu kullanın.

    az group create --name <resource_group> --location <location>
    
  2. Bir sanal makine oluşturmak için az vm create komutunu kullanın.

    az vm create --resource-group <resource-group> --name <vm_name> --image UbuntuLTS --admin-username azureuser --admin-password "<password>"
    

    Önemli noktalar:

    • SSH anahtarınızı aşağıdaki komutu kullanarak da karşıya yükleyebilirsiniz --ssh-key-value <ssh_path>.
  3. JDK'yi yükleyin.

    1. SSH aracını kullanarak sanal makinede oturum açın.

      ssh username@123.123.123.123
      
    2. Apt ile JDK'yi yükleyin. Ayrıca yum veya pacman gibi diğer paket yöneticisi araçlarıyla da yükleyebilirsiniz.

      sudo apt-get install -y default-jdk
      
    3. Yükleme tamamlandıktan sonra Java ortamını doğrulamak için komutunu çalıştırın java -version . Çıkış, JDK'nin çeşitli bölümleriyle ilişkili sürüm numaralarını içerir.

Jenkins URL'sini yapılandırma

JNLP kullanıyorsanız Jenkins URL'sini yapılandırmanız gerekir.

  1. Menüden Jenkins Yönetseçin.

  2. Sistem Yapılandırması'nın altında Sistemi Yapılandır'ı seçin.

  3. Jenkins URL'sinin Jenkins yüklemenizin HTTP adresine ayarlandığını doğrulayın- http://<your_host>.<your_domain>:8080/.

  4. Kaydetseçeneğini seçin.

Jenkins'e aracı ekleme

  1. Menüden Jenkins Yönetseçin.

  2. Sistem Yapılandırması'nın altında Düğümleri ve Bulutları Yönet'i seçin.

  3. Menünden Yeni Düğüm'ü seçin.

  4. Düğüm Adı için bir değer girin.

  5. Kalıcı Aracı'yı seçin.

  6. Tamam'ı seçin.

  7. Aşağıdaki alanların değerleri belirtin:

    • Ad: Yeni Jenkins yüklemesinde bir aracıyı tanımlayan benzersiz bir ad belirtin. Bu değer aracı ana bilgisayar adından farklı olabilir. Ancak, bu iki değeri eşit yapmak uygundur. Ad değerine aşağıdaki listeden herhangi bir özel karaktere izin verilir: ?*/\%!@#$^&|<>[]:;.

    • Uzak kök dizin: Bir aracının Jenkins'e ayrılmış bir dizini olması gerekir. Aracıda bu dizinin yolunu belirtin. Mutlak bir yol kullanmak en iyisidir, örneğin /home/azureuser/work veya c:\jenkins. Ajan makinesine yerel bir yol olmalıdır. Bu yolun ana şablondan görünmesine gerek yoktur. ./jenkins-agent gibi göreli bir yol kullanırsanız, yol Launch yöntemi tarafından sağlanan çalışma dizinine göre ayarlanacaktır.

    • Etiketler: Etiketler, ilgili aracıları tek bir mantıksal grupta gruplandırmak için kullanılır. Örneğin, Linux'un Ubuntu dağıtımını çalıştıran aracılarınızın tümü için bir etiket tanımlayabilirsiniz.

    • Başlatma yöntemi: Uzak Jenkins düğümünü başlatmak için iki seçenek vardır: Aracıları SSH aracılığıyla başlatma ve Ana sunucuda komutunu yürütme yoluyla aracıyı başlatma:

      • SSH aracılığıyla aracıları başlatma: Aşağıdaki alanların değerlerini belirtin:

        • Sunucu: VM genel IP adresi veya etki alanı adı. Örneğin 123.123.123.123 veya example.com

        • Kimlik bilgileri: Uzak konakta oturum açmak için kullanılacak kimlik bilgilerini seçin. Yeni bir kimlik bilgisi tanımlamak için Ekle düğmesini seçebilir, ardından oluşturulduktan sonra bu yeni kimlik bilgisini seçebilirsiniz.

        • Konak Anahtarı Doğrulama Stratejisi: Jenkins'in bağlanırken uzak ana bilgisayar tarafından sunulan SSH anahtarını nasıl doğrulayacağını denetler.

        SSH aracılığıyla başlatma aracılarının başlatma yöntemini belirten düğüm yapılandırma örneği.

      • Ana bilgisayarda komutunun yürütülmesi yoluyla aracıyı başlatın:

        • agent.jar dosyasını https://<your_jenkins_host_name>/jnlpJars/agent.jar adresinden indirin. Örneğin, https://localhost:8443/jnlpJars/agent.jar.

        • Sanal makinenize agent.jar yükleyin

        • Jenkins'i komutuyla ssh <node_host> java -jar <remote_agentjar_path>başlatın. Örneğin, ssh azureuser@99.99.999.9 java -jar /home/azureuser/agent.jar.

        Ana bilgisayarda komutunun yürütülmesi yoluyla Launch aracısının başlatma yöntemini belirten düğüm yapılandırma örneği.

  8. Kaydetseçeneğini seçin.

Yapılandırmaları tanımladıktan sonra Jenkins sanal makineyi yeni bir iş düğümü olarak ekler.

Yeni iş düğümü olarak sanal makine örneği

Jenkins'te iş oluşturma

  1. Menüden Yeni Öğe'yi seçin.

  2. "İsim olarak demoproject1 girin."

  3. Serbest stil proje'yi seçin.

  4. Tamam'ı seçin.

  5. Genel sekmesinde Projenin çalıştırılacağı yeri kısıtla'yı seçin ve ubuntu yazın. Etiketin önceki adımda oluşturulan bulut yapılandırması tarafından sunulduğunu onaylayan bir ileti görürsünüz.

    Yeni bir Jenkins işi ayarlama

  6. Kaynak Kodu Yönetimi sekmesinde Git'i seçin ve depo URL'si alanına aşağıdaki URL'yi ekleyin:https://github.com/spring-projects/spring-petclinic.git

  7. Derleme sekmesinde Derleme adımı ekle'yi ve ardından En üst düzey Maven hedeflerini çağır'ı seçin. package alanına girin.

  8. Kaydetseçeneğini seçin.

Azure VM aracısı üzerinde yeni iş oluşturma

  1. Önceki adımda oluşturduğunuz işi seçin.

  2. Şimdi derle'yi seçin. Yeni bir derleme kuyruğa alınır, ancak Azure aboneliğinizde bir aracı VM oluşturulana kadar başlatılmaz.

  3. Derleme tamamlandıktan sonra Konsol çıkışı'na gidin. Derlemenin bir Azure aracısı üzerinde uzaktan gerçekleştirildiğini görürsünüz.

    Konsol çıkışı

Sonraki Adımlar