All Products
Search
Document Center

Alibaba Cloud DevOps:Troubleshoot host deployments

Last Updated:Jul 11, 2026

Topik ini menjelaskan isu umum dan solusinya terkait instalasi serta penerapan host menggunakan Alibaba Cloud DevOps.

Isu agen host — Flow Runner

Penyelesaian masalah Flow Runner

Penting

Sebelum menyelesaikan masalah terkait penerapan host atau penyediaan lingkungan untuk mesin build privat, pertama-tama periksa status Flow Runner di mesin tersebut.

Gunakan tool diagnostik

Tool ini hanya mendukung sistem Linux.

  1. Unduh tool:

    wget "https://rdc-public-software.oss-cn-hangzhou.aliyuncs.com/runner/runnerStatusCheck" -O runnerStatusCheck
  2. Berikan izin eksekusi:

    chmod u+x runnerStatusCheck
  3. Jalankan tool:

    ./runnerStatusCheck
  4. Ikuti instruksi dalam output tool, seperti pada contoh berikut.

    [INFO] prepare to check disk
    check disk output
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/root        99G   59G   36G  62% /
    devtmpfs        3.7G     0  3.7G   0% /dev
    tmpfs           3.7G     0  3.7G   0% /dev/shm
    tmpfs           3.7G  600K  3.7G   1% /run
    tmpfs           3.7G     0  3.7G   0% /sys/fs/cgroup
    tmpfs           748M     0  748M   0% /run/user/0
    [INFO] prepare to check runner status
    RunnerService: runner-v0.0.7-be-1fy1ifhg1ylcvqv7rwinqpgh.service  status is active running
    RunnerService: runner-v0.0.7-be-3n5goas4jkp3clmcaopzeebj.service  status is active running
    RunnerService: runner-v0.0.7-be-6fcm3z72s2fsnrkcjl7pbpsa.service  status is not running , please exeute 'systemctl restart runner-v0.0.7-be-6fcm3z72s2fsnrkcjl7pbpsa.service ' to restart runner service
    RunnerService: runner-v0.0.7-be-7srpetjhkcy40btoontpsy8a.service  status is not running , please exeute 'systemctl restart runner-v0.0.7-be-7srpetjhkcy40btoontpsy8a.service ' to restart runner service
    RunnerService: runner-v0.0.7-be-7ypo76lza21lljapgp5xtopi.service  status is active running
    RunnerService: runner-v0.0.7-be-9zouh99ta6ycx2dq3iggekk9.service  status is not running , please exeute 'systemctl restart runner-v0.0.7-be-9zouh99ta6ycx2dq3iggekk9.service ' to restart runner service
    RunnerService: runner-v0.0.7-be-ao81clhgw56bo0jopj5jgwn3.service  status is active running
    RunnerService: runner-v0.0.7-be-bn9wuh8n4kiba0aa0a8dcirb.service  status is active running
    RunnerService: runner-v0.0.7-be-fsr2gvdefe5yxl3nyijp36d3.service  status is active running
    RunnerService: runner-v0.0.7-be-haphfbrhuudbxkzwpcuhn0hk.service  status is not running , please exeute 'systemctl restart runner-v0.0.7-be-haphfbrhuudbxkzwpcuhn0hk.service ' to restart runner service
    RunnerService: runner-v0.0.7-be-mwkcqcv2hbwozrwmmczopzgm.service  status is active running
    RunnerService: runner-v0.0.7-be-qdiyjifmn0bbkafobtfpkrst.service  status is not running , please exeute 'systemctl restart runner-v0.0.7-be-qdiyjifmn0bbkafobtfpkrst.service ' to restart runner service
    RunnerService: runner-v0.0.7-be-qx6gaxojjjpzeblor692hrwk.service  status is active running
    RunnerService: runner-v0.0.7-be-s5f7tixziynazefazqhls9ob.service  status is active running
    RunnerService: runner-v0.0.7-be-uwdlmn516wd8emqebhgqwq6x.service  status is active running
    RunnerService: runner-v0.0.7-be-xjmxrlbzrtksuafv4oyg8qtf.service  status is active running
    Check runner service status finished.

Penyelesaian masalah manual

  1. Periksa apakah versi Linux Anda didukung.

    Jalankan perintah lsb_release -a untuk memeriksa distribusi Linux Anda. Flow Runner terpadu mendukung distribusi Linux berikut:

    • CentOS 6+

    • Ubuntu 16.04+

    • Alibaba Cloud Linux 2/3

  2. Periksa status dan log layanan Flow Runner.

    Jalankan perintah ls -al /etc/systemd/system | grep runner untuk menemukan nama layanan. Nama layanan biasanya dalam format runner-{version}-{tenant-name}.service.

    [root@ecs-for-batch-deploy-1 ~]# lsb_release -a
    LSB Version:    :core-4.1-amd64:core-4.1-noarch
    Distributor ID: CentOS
    Description:    CentOS Linux release 8.2.2004 (Core)
    Release:        8.2.2004
    Codename:       Core
    [root@ecs-for-batch-deploy-1 ~]# ls -al /etc/systemd/system | grep runner
    -rw-r--r--    1 root root  550 Oct 11 10:50 runner-v0.xxx.service
    [root@ecs-for-batch-deploy-1 ~]#

    Jalankan perintah systemctl status runner-{version}-{tenant-name}.service untuk memeriksa status layanan. Jika statusnya active (running), layanan beroperasi dengan benar.

    Release:        8.2.2004
    Codename:       Core
    [root@ecs-for-batch-deploy-1 ~]# ls -al /etc/systemd/system | gr
    -rw-r--r--   1 root root  550 Oct 11 10:50 runner-v0.0.5-be-bnyxxx...yt.service
    [root@ecs-for-batch-deploy-1 ~]# systemctl status runner-v0.0.5-be-bnyxxx...yt.service
    ● runner-v0.0.5-be-bnxxx...yt.service - Aliyun yunxiao runner polling jo
         Loaded: loaded (/etc/systemd/system/runner-v0.xxx...yt.service)
         Active: active (running) since Tue 2022-10-11 10:50:56 CST; 2h ago
       Main PID: 1405243 (runner)
          Tasks: 10 (limit: 48875)
         Memory: 13.6M
         CGroup: /system.slice/runner-v0.0.5-be-brxxx...yt.service
                 └─1405243 /usr/local/share/yunxiao-runner/v0.0.5/runner run --configPath=/r...
    Oct 11 11:01:03 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:01:03+08:00]
    Oct 11 11:01:03 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:01:03+08:00]
    Oct 11 11:01:18 ecs-for-batch-deploy-1 runner[1405243]: WARN[2022-10-11T11:01:18+08:00]

    Untuk melihat log eksekusi real-time, jalankan perintah journalctl -u runner-{version}-{tenant-name}.service -a --no-pager --since '5 minutes ago' -f.

Kegagalan penerapan cross-region

Saat melakukan penerapan lintas wilayah geografis (misalnya, dari Hong Kong (Tiongkok) ke Malaysia) melalui Internet, kegagalan penerapan dapat terjadi karena latensi jaringan atau ketidakstabilan.

Selain memeriksa status Flow Runner dan disk space, verifikasi hal berikut:

  1. Uji latensi jaringan dan kehilangan paket dari host target ke titik akhir layanan Alibaba Cloud DevOps menggunakan ping atau traceroute.

  2. Jika jaringan tidak stabil, pertimbangkan untuk mengoptimalkan tautan jaringan atau menggunakan koneksi cross-region khusus untuk meningkatkan keandalan.

Tidak ada log yang dihasilkan atau host offline selama build atau penerapan

  • Jalankan df -hl untuk memeriksa apakah disk host penuh. Jika ya, bebaskan ruang dan coba lagi.

  • Periksa status layanan Flow Runner. Jika statusnya bukan active(running), restart layanan dengan mengikuti langkah-langkah berikut:

    1. Dapatkan nama layanan. Formatnya adalah runner-{version}-{tenant-name}.service.

      systemctl | grep "runner-v" | awk '{print $1}'
    2. Ganti $SERVICE_NAME dalam perintah berikut dengan nama layanan dan jalankan untuk me-restart layanan Flow Runner.

      systemctl restart $SERVICE_NAME
  • Periksa adanya masalah konektivitas jaringan.

    • Jalankan systemctl status runner-{version}-{tenant-name}.service untuk menanyakan status layanan Flow Runner dan temukan parameter --configPath, seperti yang ditunjukkan di bawah ini:

      [root@ecs-for-batch-deploy-1 ~]# systemctl status runner-v0.0.5-be-bnyxxx1llzpci0q606yt.service
      ● runner-v0.0.5-be-xxx...yt.service - Aliyun yunxiao runner polling jobs to execute
         Loaded: loaded (/etc/systemd/system/runner-v0.0.5-be-bxxx...yt.service; enabled; vendor preset: disabled)
         Active: active (running) since Tue 2022-10-11 10:50:56 CST; 41min ago
       Main PID: 1405243 (runner)
          Tasks: 10 (limit: 48875)
         Memory: 13.7M
         CGroup: /system.slice/runner-v0.0.5-be-bnyxxx...yt.service
                 └─1405243 /usr/local/share/yunxiao-runner/v0.0.5/runner run --configPath=/root/yunxiao/be-bnykv60t831llzpci0q606yt/runner/config
      Oct 11 11:31:46 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:31:46+08:00] [runner] no new job, skip.                    runner=9e7073c92b2fa8b35bc0efd3eec051f8
      Oct 11 11:31:46 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:31:46+08:00] counter current: 0, limit: 50
      Oct 11 11:32:01 ecs-for-batch-deploy-1 runner[1405243]: WARN[2022-10-11T11:32:01+08:00] Response status code: 204 body data:
      Oct 11 11:32:01 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:32:01+08:00] POST /api/v2/builds/request, time spent 15.07 s
      Oct 11 11:32:01 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:32:01+08:00] [runner] no new job, skip.                    runner=9e7073c92b2fa8b35bc0efd3eec051f8
      Oct 11 11:32:01 ecs-for-batch-deploy-1 runner[1405243]: INFO[2022-10-11T11:32:01+08:00] counter current: 0, limit: 50
      Oct 11 11:32:16 ecs-for-batch-deploy-1 runner[1405243]: WARN[2022-10-11T11:32:16+08:00] ...
    • Lihat URL di configPath dengan menjalankan cat {PATH_TO_CONFIG}/config.yml | grep url.

      [root@ecs-for-batch-deploy-1 config]# cat /root/yunxiao/be-bnykv60t83lllzpci0q606yt/runner/config/config.yml | grep url
      url: https://xxx.com
      [root@ecs-for-batch-deploy-1 config]#
    • Jalankan perintah berikut untuk memeriksa aksesibilitas URL.

      # Catatan: Ganti {url} dalam perintah di bawah ini dengan URL aktual Anda.
      curl '{url}/api/v2/runner/storage/latest?os=linux&arch=amd64'

Penerapan host gagal dengan error MachineGroupNotHaveMachine

Error ini menunjukkan bahwa grup penerapan tidak memiliki mesin yang tersedia, sehingga tugas penerapan tidak dapat dikirim ke host target.

Untuk menyelesaikan masalah ini:

  1. Di konsol Alibaba Cloud DevOps, buka konfigurasi tugas penerapan untuk pipeline dan periksa apakah grup penerapan terkait berisi mesin. Jika grup penerapan kosong, tambahkan host target terlebih dahulu.

  2. Jika grup penerapan sudah berisi mesin, verifikasi bahwa mesin tersebut online. Jika mesin offline, login ke server, periksa status layanan Runner, dan restart layanan tersebut.

  3. Setelah memastikan grup penerapan memiliki mesin online yang tersedia, picu ulang tugas penerapan.

Bagaimana cara mencegah error akibat permintaan yang mencapai layanan selama startup dalam penerapan multi-node?

Alibaba Cloud DevOps tidak menyediakan kontrol trafik bawaan selama penerapan. Untuk mengelola trafik dan mencegah permintaan mencapai layanan yang masih dalam proses startup, gunakan pendekatan berikut:

  1. Pisahkan host Anda menjadi dua grup host dan konfigurasikan penerapan berurutan di pipeline. Hal ini mengontrol urutan penerapan dan memastikan satu grup sepenuhnya tersedia sebelum grup lain diperbarui.

  2. Gunakan intersepsi permintaan di tingkat gerbang atau konfigurasikan aturan pengalihan dengan Application Load Balancer (ALB) untuk mengarahkan trafik menjauh dari node yang masih dalam proses startup.