All Products
Search
Document Center

SchedulerX:Pekerjaan skrip

Last Updated:Jun 22, 2026

Topik ini menjelaskan cara membuat pekerjaan skrip dengan menulis skrip Shell, Python, atau PHP.

Cara kerja

Diagram berikut menunjukkan cara kerja pekerjaan skrip.

yuque_diagram (1)

  1. Untuk menggunakan pekerjaan skrip, Anda harus memasang schedulerx-agent pada mesin target. Agen tersebut berkomunikasi dengan server, menerima perintah eksekusi skrip, dan mengembalikan hasil eksekusi.

  2. Pasang semua dependensi skrip yang diperlukan, seperti pustaka Python atau file lainnya, pada mesin target.

  3. Saat skrip dieksekusi, schedulerx-agent membuat child process untuk menjalankannya. Proses anak ini mengonsumsi memori pada mesin host, bukan dari schedulerx-agent itu sendiri. Jumlah memori yang dikonsumsi tergantung pada operasi skrip tersebut. Menjalankan banyak pekerjaan skrip secara bersamaan dapat menghabiskan memori mesin. Untuk skrip yang intensif sumber daya, kami merekomendasikan menggunakan Kubernetes job untuk menjalankannya dalam sebuah Pod.

Prasyarat

Buat pekerjaan skrip

Masuk ke konsol SchedulerX. Di panel navigasi sebelah kiri, buka halaman Task Management dan buat pekerjaan. Atur Job Type menjadi script job.

Masukkan Task Name dan Description, pilih Application ID, atur priority (Medium secara default), dan masukkan parameter yang diperlukan di bidang Task Parameters.

Langkah 1: Pilih bahasa skrip

Pilih Script Language. SchedulerX mendukung Shell, Python, dan PHP.

Langkah 2: Perintah eksekusi

Tentukan perintah untuk menjalankan skrip sesuai bahasa yang berbeda:

  • Skrip Shell: Default-nya adalah /bin/sh.

  • Skrip Python: Default-nya adalah python. Anda dapat mengubahnya menjadi python2 atau python3.

  • Skrip PHP: Default-nya adalah php.

Langkah 3: Format file

Format file unix dan windows menggunakan akhiran baris yang berbeda.

  • Jika skrip akan dijalankan pada sistem Windows, pilih windows.

  • Jika skrip akan dijalankan pada sistem Linux/Unix/Mac, pilih unix.

Penting

Jika Anda membuat skrip pada sistem Windows tetapi menjalankannya pada sistem Linux, atur File format menjadi unix.

Langkah 4: Mode eksekusi

Prasyarat: schedulerx-agent harus dipasang. Untuk informasi selengkapnya, lihat Connect an agent (for Script or HTTP jobs).

Execution Mode:

  • Operasi tunggal: SchedulerX secara acak memilih salah satu agen yang telah Anda pasang untuk menjalankan skrip.

  • Eksekusi broadcast: SchedulerX menjalankan skrip pada semua agen yang telah dipasang secara bersamaan. Mode ini digunakan untuk operasi batch dan maintenance.

  • Eksekusi sharding: Mendistribusikan eksekusi pekerjaan ke beberapa agen. Untuk informasi selengkapnya, lihat Create a Python sharding job.

Tulis dan edit skrip

Setelah Anda membuat pekerjaan skrip, SchedulerX menghasilkan templat skrip default berdasarkan bahasa yang Anda pilih. Di halaman Edit Script, klik Edit Script untuk memodifikasi skrip.

Daftar pekerjaan menampilkan Execution mode setiap pekerjaan (misalnya Stand-alone operation) dan menyediakan tombol EditScript untuk modifikasi.

Kelola versi skrip

Halaman Edit Script mencakup fitur riwayat versi skrip. Di halaman EditScript, aktifkan sakelar Historical versions untuk membuka tampilan perbandingan versi.

  • Panel kiri menampilkan versi saat ini, dan panel kanan menampilkan versi historis.

  • Pilih versi dari daftar drop-down untuk melihat detailnya, termasuk catatan versi dan waktu pembuatan.

  • Setelah memodifikasi skrip, klik Confirm dan masukkan version name baru saat diminta.

Demo

Eksekusi broadcast

  1. Hubungkan dua instans schedulerx-agent.

    Di panel Connected Instances, pastikan kedua instans (misalnya 172.16.13.125 dan 172.16.13.120) terhubung sebagai Pod versi 1.12.5 dan memiliki health status Healthy.

  2. Buat pekerjaan skrip dengan Shell sebagai Script Language dan Execution Mode sebagai Execution mode. Gunakan konten skrip berikut:

    #!/bin/bash
    # #{schedulerx.shardingId} is the shard ID
    echo "shard ID: #{schedulerx.shardingId}"
    # #{schedulerx.shardingNum} is the total number of shards
    echo "total shards: #{schedulerx.shardingNum}"
    echo "hello world"
    exit 0
  3. Di kolom Actions untuk pekerjaan target, klik Run once.

  4. Buka halaman Execution List. Temukan instans pekerjaan dan klik Log di kolom Operation untuk melihat output dari setiap mesin.

    • Log untuk 172.16.13.125 menunjukkan bahwa shard ID-nya adalah 1 dan total shard-nya adalah 2.

      time : 2025-04-22 17:05:26
      ---
      ip : 172.16.13.125:34487
      executionId : 10496431_74039165530_1
      level : INFO
      log : total shards: 2
      time : 2025-04-22 17:05:26
      ---
      ip : 172.16.13.125:34487
      executionId : 10496431_74039165530_1
      level : INFO
      log : hello world
      time : 2025-04-22 17:05:26
      ---
      ip : 172.16.13.125:34487
      executionId : 10496431_74039165530_1
      level : INFO
      log : shard ID: 1
      time : 2025-04-22 17:05:26
    • Log untuk 172.16.13.120 menunjukkan bahwa shard ID-nya adalah 0 dan total shard-nya adalah 2.

Eksekusi shard

  1. Buat pekerjaan skrip dengan Shell sebagai Script Language dan Execution Mode sebagai Execution mode. Konfigurasikan pengaturan pekerjaan lainnya sebagai berikut:

    Atur Execution command menjadi /bin/sh, File format menjadi unix, Executor menjadi Agent, Priority menjadi Medium, dan Sharding parameter menjadi 0=hangzhou,1=shanghai,2=beijing,3=shenzhen.

  2. Setelah pekerjaan dibuat, klik tombol Edit Script dan masukkan konten skrip berikut:

    #!/bin/bash
    # #{schedulerx.shardingId} is the shard ID
    echo "shard ID: #{schedulerx.shardingId}"
    # #{schedulerx.shardingParameters} is the sharding parameter
    echo "sharding parameter: #{schedulerx.shardingParameters}"
    echo "hello world"
    exit 0
  3. Di kolom Actions untuk pekerjaan target, klik Run once.

  4. Buka halaman Execution List. Temukan instans pekerjaan dan klik Log di kolom Operation untuk melihat parameter sharding yang ditetapkan untuk setiap mesin.

    • Log menunjukkan bahwa 172.16.13.120 dijalankan dua kali, memproses shard hangzhou dan beijing.

    • Log menunjukkan bahwa 172.16.13.125 juga dijalankan dua kali, memproses shard shenzhen dan shanghai.

Dokumentasi terkait

Untuk daftar variabel sistem bawaan, lihat System variables for script jobs.