All Products
Search
Document Center

Container Service for Kubernetes:Memulai dengan GitOps

Last Updated:Jun 18, 2026

Aktifkan GitOps, hubungkan repositori Git, dan terapkan aplikasi pertama Anda ke kluster tujuan.

Setelah mengikuti panduan ini, Anda akan memiliki:

  • Akses publik ke konsol Argo CD yang telah diaktifkan

  • Repositori Git yang terhubung ke Argo CD

  • Aplikasi yang diterapkan ke kluster tujuan

Prasyarat

Sebelum memulai, pastikan Anda telah:

Penagihan

Mengaktifkan GitOps membuat sumber daya berikut yang dapat ditagih:

  • Sebuah instans SLB untuk mengekspos titik akhir API dan UI Argo CD

  • Sebuah instans ECI bayar sesuai penggunaan dengan 2 vCPU dan memori 4 GB untuk layanan Argo CD

Lihat Penagihan sumber daya cloud untuk fleet multi-kluster.

Wilayah yang didukung

GitOps didukung di semua wilayah yang mendukung fleet multi-kluster dan kluster alur kerja.

Langkah 1: Aktifkan akses publik ke konsol GitOps

GitOps diaktifkan secara default pada instans fleet ACK One, tetapi konsol Argo CD hanya dapat diakses dalam Virtual Private Cloud (VPC). Aktifkan akses publik untuk mengelola aplikasi melalui Internet.

Penting

Mengaktifkan akses publik menimbulkan risiko keamanan. Selalu konfigurasikan Access Control List (ACL) untuk membatasi akses hanya ke alamat IP atau blok CIDR tepercaya.

Menggunakan konsol

  1. Login ke Konsol ACK One. Di panel navigasi kiri, pilih Fleet > Multi-cluster Applications.

  2. Pada halaman Multi-cluster GitOps, klik ikon Dingtalk_20231226104633.jpg di sebelah nama fleet dan pilih fleet Anda.

  3. Jika GitOps belum diaktifkan, klik Enable GitOps, lalu klik OK. Jika sudah diaktifkan, tombol GitOps Console akan terlihat.

  4. Klik Enable di sebelah Public Access. Pada kotak dialog Enable Public Access, masukkan alamat IP atau blok CIDR untuk daftar putih, lalu klik OK.

  5. Setelah fleet diperbarui, klik GitOps Console untuk membuka konsol Argo CD.

Menggunakan Cloud Assistant CLI

Aktifkan GitOps dan akses publik secara bersamaan. Ganti <your_clusterid> dengan ID instans fleet Anda dan nilai AccessControlList dengan blok CIDR tepercaya Anda.

Lihat Aktifkan akses publik ke Argo CD untuk detail blok CIDR.

aliyun adcp UpdateHubClusterFeature --ClusterId <your_clusterid> --PublicAccessEnabled true --AccessControlList "[\"10.100.XX.XX/24\"]" --ArgoCDEnabled true
Jika menggunakan AccessKey RAM user, berikan izin AliyunAdcpFullAccess kepada RAM user terlebih dahulu. Lihat Berikan izin kepada RAM user.

Langkah 2: Terapkan aplikasi ke kluster tujuan

Hubungkan repositori Git dan terapkan aplikasi menggunakan contoh gitops-demo. Gunakan antarmuka Argo CD atau CLI.

Terapkan menggunakan antarmuka Argo CD

Login ke Argo CD

Pada halaman Multi-cluster GitOps, klik GitOps Console. Pada halaman login, klik LOG IN VIA ALIYUN untuk login ke akun Alibaba Cloud Anda melalui SSO.

Hubungkan repositori

  1. Di panel navigasi kiri, klik Settings, lalu pilih Repositories > + Connect Repo.

  2. Konfigurasikan parameter berikut dan klik CONNECT. Jika berhasil, CONNECTION STATUS akan menampilkan Successful.

    Area Parameter Nilai
    Pilih metode koneksi Anda VIA HTTP/HTTPS
    CONNECT REPO USING HTTP/HTTPS Type git
    Project default
    Repository URL https://github.com/AliyunContainerService/gitops-demo.git
    Skip server verification Centang kotak ini

    image.png

    image.png

Buat aplikasi

  1. Di panel navigasi kiri, pilih Applications, lalu klik + NEW APP.

  2. Konfigurasikan parameter berikut dan klik CREATE.

    Area Parameter Nilai
    GENERAL Application Name echo-server-demo
    Project Name default
    SYNC POLICY Pilih Automatic. Argo CD memeriksa repositori setiap 3 menit dan menerapkan perubahan secara otomatis. Dengan Manual, klik SYNC untuk memicu penerapan.
    SYNC OPTIONS Pilih AUTO-CREATE NAMESPACE
    SOURCE Repository URL Pilih https://github.com/AliyunContainerService/gitops-demo.git
    Revision HEAD
    Path manifests/helm/echo-server
    DESTINATION Cluster URL Pilih kluster tujuan Anda
    Namespace echo-server-demo
    HELM VALUES FILES values.yaml
  3. Pada halaman Applications, pastikan aplikasi echo-server-demo menampilkan Status: Healthy dan Synced. Jika Anda mengatur SYNC POLICY ke Manual, klik SYNC untuk memicu penerapan.

    image.png

  4. Klik nama aplikasi untuk melihat topologi dan status resource Kubernetes-nya.

    image.png

Terapkan menggunakan CLI Argo CD

Login ke Argo CD

  1. Unduh dan instal Argo CD CLI v2.8.7.

  2. Dapatkan kata sandi admin awal dari instans fleet:

    kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
  3. Login menggunakan port forwarding. Username default adalah admin.

    export ARGOCD_OPTS='--port-forward-namespace argocd --port-forward'
    
    argocd login
    Username: admin
    Password:

    Output yang diharapkan:

    'admin:login' logged in successfully
    Context 'port-forward' updated
  4. Perbarui kata sandi admin default:

    argocd account update-password
    *** Enter password of currently logged in user (admin):
    *** Enter new password for user admin:
    *** Confirm new password for user admin:

    Output yang diharapkan:

    Password updated
    Context 'port-forward' updated

Hubungkan repositori

  1. Tambahkan repositori Git:

    argocd repo add https://github.com/AliyunContainerService/gitops-demo.git --name echo-server

    Output yang diharapkan:

    Repository 'https://github.com/AliyunContainerService/gitops-demo.git' added
  2. Verifikasi repositori telah ditambahkan:

    argocd repo list

    Output yang diharapkan:

    TYPE  NAME  REPO                                                       INSECURE  OCI    LFS    CREDS  STATUS      MESSAGE  PROJECT
    git         https://github.com/AliyunContainerService/gitops-demo.git  false     false  false  false  Successful           default
  3. Daftar kluster yang tersedia. Output menampilkan semua kluster yang diasosiasikan dengan instans fleet.

    argocd cluster list

    Output yang diharapkan:

    SERVER                          NAME                                        VERSION  STATUS      MESSAGE                                                  PROJECT
    https://47.97.XX.XX:6443      c83f3cbc90a****-temp02   1.22+    Successful
    https://kubernetes.default.svc  in-cluster                                           Unknown     Cluster has no applications and is not being monitored.

    Catat URL server kluster tujuan Anda untuk langkah berikutnya.

Buat dan sinkronkan aplikasi

  1. Buat aplikasi. Ganti https://47.97.XX.XX:6443 dengan URL server kluster tujuan Anda.

    argocd app create echo-server --repo https://github.com/AliyunContainerService/gitops-demo.git --path manifests/helm --dest-namespace echo-server-cli --dest-server https://47.97.XX.XX:6443

    Output yang diharapkan:

    application 'echo-server' created
  2. Sinkronkan aplikasi ke kluster tujuan:

    argocd app sync echo-server

    Output yang diharapkan:

    TIMESTAMP                  GROUP        KIND   NAMESPACE                       NAME    STATUS    HEALTH        HOOK  MESSAGE
    2022-09-22T14:32:45+08:00            Service  echo-server-cli           echo-server  OutOfSync  Missing
    2022-09-22T14:32:45+08:00   apps  Deployment  echo-server-cli           echo-server  OutOfSync  Missing
    2022-09-22T14:32:45+08:00            Service  echo-server-cli           echo-server    Synced  Progressing
    2022-09-22T14:32:45+08:00            Service  echo-server-cli           echo-server    Synced   Progressing              service/echo-server created
    2022-09-22T14:32:45+08:00   apps  Deployment  echo-server-cli           echo-server  OutOfSync  Missing                  deployment.apps/echo-server created
    2022-09-22T14:32:45+08:00   apps  Deployment  echo-server-cli           echo-server    Synced  Progressing              deployment.apps/echo-server created
    
    Name:               echo-server
    Project:            default
    Server:             https://47.97.XX.XX:6443
    Namespace:          echo-server-cli
    URL:                https://127.0.0.1:52742/applications/echo-server
    Repo:               https://github.com/AliyunContainerService/gitops-demo.git
    Target:
    Path:               manifests/helm
    SyncWindow:         Sync Allowed
    Sync Policy:        <none>
    Sync Status:        Synced to  (e5c2618)
    Health Status:      Progressing
    
    Operation:          Sync
    Sync Revision:      e5c261880a4072cdbfa5173add2be426f7f3****
    Phase:              Succeeded
    Start:              2022-09-22 14:32:44 +0800 CST
    Finished:           2022-09-22 14:32:45 +0800 CST
    Duration:           1s
    Message:            successfully synced (all tasks run)
    
    GROUP  KIND        NAMESPACE        NAME         STATUS  HEALTH       HOOK  MESSAGE
           Service     echo-server-cli  echo-server  Synced  Progressing        service/echo-server created
    apps   Deployment  echo-server-cli  echo-server  Synced  Progressing        deployment.apps/echo-server created
  3. Pastikan aplikasi sedang berjalan:

    argocd app list

    Output yang diharapkan:

    NAME             CLUSTER                     NAMESPACE        PROJECT  STATUS  HEALTH   SYNCPOLICY  CONDITIONS  REPO                                                     PATH              TARGET
    echo-server      https://47.97.XX.XX:6443  echo-server-cli  default  Synced  Healthy  <none>      <none>      https://github.com/AliyunContainerService/gitops-demo.git  manifests/helm

    Aplikasi telah diterapkan ketika STATUS bernilai Synced dan HEALTH bernilai Healthy.

Operasi tambahan

Gunakan operasi berikut untuk memelihara konfigurasi GitOps Anda.

Konfigurasi ConfigMap Argo CD

  1. Pada halaman Multi-cluster GitOps, temukan Argo CD ConfigMap di bagian terlipat GitOps.

  2. Klik Configure di sebelah Argo CD ConfigMap.

  3. Pada halaman Argo CD ConfigMap Settings, pilih item konfigurasi dari daftar drop-down Select Configuration Item dan edit di editor kode Modify Configurations. Lihat Item konfigurasi umum untuk kebijakan restart.

Restart komponen Argo CD

  1. Pada halaman Multi-cluster GitOps, temukan Argo CD Component di bagian terlipat GitOps.

  2. Klik Restart di sebelah Argo CD Components.

  3. Pilih komponen dari daftar drop-down Select Application to Restart (misalnya, argocd-server), lalu klik OK.

Nonaktifkan GitOps

Hapus semua aplikasi sebelum menonaktifkan GitOps. Nonaktifkan GitOps sebelum menghapus instans fleet ACK One.

Menggunakan konsol:

  1. Login ke Konsol ACK One. Di panel navigasi kiri, pilih Fleet > Multi-cluster Applications.

  2. Pada halaman Multi-cluster GitOps, klik ikon Dingtalk_20231226104633.jpg dan pilih fleet Anda.

  3. Klik Disable GitOps, lalu klik OK.

Menggunakan Cloud Assistant CLI:

aliyun adcp UpdateHubClusterFeature --ClusterId <your_clusterid> --ArgoCDEnabled false

Langkah selanjutnya