All Products
Search
Document Center

Container Compute Service:Buat Deployment workload tanpa status

Last Updated:Jun 21, 2026

Container Compute Service (ACS) mendukung pembuatan aplikasi tanpa status menggunakan gambar kontainer, templat orkestrasi YAML, atau alat baris perintah kubectl. Topik ini menggunakan aplikasi Nginx sebagai contoh untuk menunjukkan cara membuat aplikasi tanpa status di kluster ACS.

Konsol

Buat dari gambar

Langkah 1: Konfigurasikan informasi dasar aplikasi

  1. Masuk ke Konsol ACS. Di panel navigasi kiri, klik Clusters.

  2. Di halaman Clusters, klik nama kluster target. Di panel navigasi kiri, pilih Workloads > Deployments.

  3. Di halaman Deployments, klik Create with Image.

  4. Di wizard Basic Information, konfigurasikan pengaturan dasar untuk aplikasi Anda.

    configuration item

    Description

    Name:

    Masukkan nama untuk aplikasi.

    Replicas:

    Jumlah Pod dalam aplikasi. Nilai default adalah 2.

    Workloads

    Pilih Deployment.

    Label

    Tambahkan label untuk mengidentifikasi aplikasi ini.

    Annotations

    Tambahkan anotasi ke aplikasi.

    Instance Type

    Pilih jenis komputasi. Untuk detail tentang jenis komputasi, lihat Overview of ACS pod instances.

    QoS Type

    Pilih kelas Quality of Service (QoS).

    Korespondensi Antara Jenis Komputasi dan Kualitas Daya Komputasi

    Compute class

    Supported QoS class

    general-purpose (general-purpose)

    default (default), best-effort (best-effort)

    performance (performance)

    default (default), best-effort (best-effort)

    GPU-accelerated (gpu)

    default (default), best-effort (best-effort)

    GPU-HPN (gpu-hpn)

    default (default)

    Untuk informasi lebih lanjut, lihat QoS class definitions.

  5. Klik Next untuk menuju wizard Container.

Langkah 2: Konfigurasikan kontainer

Di halaman wizard Container, konfigurasikan gambar kontainer, sumber daya, port, variabel lingkungan, pemeriksaan kesehatan, siklus hidup, volume, dan pencatatan log.

Catatan

Untuk menambahkan beberapa kontainer ke Pod, klik Add Container di sebelah tab Container 1.

  1. Di bagian General, lengkapi konfigurasi dasar kontainer.

    configuration item

    Description

    Image Name

    • Pilih gambar

      Klik Select Image untuk memilih gambar yang diperlukan.

      • Container Registry Enterprise Edition: Pilih gambar Edisi Perusahaan yang dihosting di Alibaba Cloud Container Registry (ACR). Anda harus memilih wilayah dan instans ACR tempat gambar tersebut berada. Untuk informasi lebih lanjut tentang ACR, lihat What is Container Registry?.

      • Container Registry Personal Edition (harus diaktifkan terlebih dahulu): Pilih gambar Edisi Pribadi yang dihosting di ACR. Anda harus memilih wilayah dan instans ACR tempat gambar tersebut berada.

      • Artifact center: Menyediakan gambar OS dasar untuk aplikasi berbasis kontainer, gambar runtime bahasa pemrograman, serta gambar terkait AI dan data besar. Contoh ini menggunakan gambar Nginx dari Artifact Center. Untuk informasi lebih lanjut, lihat Artifact Center.

    • (Opsional) Atur kebijakan pull gambar

      Dari daftar drop-down Image Pull Policy, pilih kebijakan pull. Secara default, tidak ada kebijakan yang ditetapkan, dan Kubernetes menggunakan IfNotPresent.

      • IfNotPresent: Jika gambar sudah tersedia secara lokal (sebelumnya ditarik ke host), gambar tersebut tidak akan ditarik lagi. Jika tidak, gambar akan ditarik.

      • Always: Selalu tarik gambar selama deployment atau skala keluar, mengabaikan salinan lokal apa pun.

      • Never: Gunakan hanya gambar lokal.

    • (Opsional) Atur rahasia pull gambar

      Klik Set Image Pull Secret untuk mengakses gambar privat secara aman.

      • Untuk instans ACR Edisi Pribadi, Anda dapat menarik gambar kontainer dengan mengatur rahasia pull gambar. Untuk informasi lebih lanjut, lihat Manage secrets.

      • Untuk instans ACR Edisi Perusahaan, Anda dapat menarik gambar tanpa kata sandi menggunakan komponen tanpa kata sandi. Untuk detailnya, lihat Pull ACR images without passwords.

    Required Resources

    Atur kuota sumber daya untuk kontainer.

    • CPU: Tentukan nilai permintaan dan batas CPU. Secara default, permintaan sama dengan batas, dan penagihan menggunakan metode bayar sesuai penggunaan. Jika Anda menetapkan batas berbeda melalui YAML, permintaan akan ditimpa agar sesuai dengan batas. Untuk detailnya, lihat Resource specifications.

    • Memory: Tentukan nilai permintaan dan batas memori. Secara default, permintaan sama dengan batas, dan penagihan menggunakan metode bayar sesuai penggunaan. Jika Anda menetapkan batas berbeda melalui YAML, permintaan akan ditimpa agar sesuai dengan batas. Untuk detailnya, lihat Resource specifications.

    Interactive Session

    (Opsional) Konfigurasikan opsi startup kontainer.

    • stdin: Kirim input konsol ke kontainer.

    • tty: Sambungkan konsol input standar sebagai input konsol kontainer.

    Catatan

    Umumnya, stdin dan tty dipilih bersama untuk mengikat terminal (tty) ke input standar kontainer (stdin). Misalnya, program interaktif membaca input pengguna dari stdin dan menampilkan output di terminal.

    Init Containers

    (Opsional) Aktifkan opsi ini untuk membuat init container.

    Init container menyediakan mekanisme untuk memblokir atau menunda startup kontainer aplikasi hingga berhasil. Setelah eksekusi berhasil, kontainer aplikasi dalam Pod dimulai secara paralel. Misalnya, Anda dapat menggunakan init container untuk memeriksa ketersediaan layanan dependen. Init container juga dapat mencakup utilitas atau skrip instalasi yang tidak tersedia dalam gambar aplikasi guna menginisialisasi lingkungan runtime—misalnya, mengatur parameter kernel atau menghasilkan file konfigurasi. Untuk informasi lebih lanjut, lihat Init Containers.

  2. (Opsional) Di bagian Ports, klik Add untuk mengonfigurasi port kontainer.

    Configuration Item

    Description

    Name

    Tentukan nama untuk port kontainer.

    Container Port

    Tentukan port kontainer yang diekspos. Nomor port harus berada dalam rentang 1 hingga 65535.

    Protocol

    Protokol yang didukung adalah TCP dan UDP.

  3. (Opsional) Di bagian Environments, klik Add untuk mengonfigurasi variabel lingkungan.

    Anda dapat mengonfigurasi variabel lingkungan untuk Pod menggunakan pasangan kunci-nilai untuk menambahkan flag lingkungan atau meneruskan konfigurasi. Untuk informasi lebih lanjut, lihat Pod Environment Variables.

    Parameter

    Description

    Type

    Tentukan tipe variabel lingkungan:

    • Custom

    • ConfigMaps

    • Secrets

    • Value/ValueFrom

    • ResourceFieldRef

    ConfigMap dan Secret mendukung referensi seluruh file.

    Contoh ini menggunakan Secret. Saat Anda memilih tipe Secrets dan memilih Secret target, semua file dalam Secret tersebut direferensikan secara default. Setelah memilih Secret, masukkan Variable Name dan pilih nama Secret serta kunci yang sesuai dari dua daftar drop-down di sebelah kanan.

    Referensi YAML berikut merujuk seluruh Secret:

    envFrom:
      - secretRef:
          name: test

    Variable Key

    Tentukan nama variabel lingkungan.

    Value/ValueFrom

    Tentukan nilai variabel yang direferensikan.

  4. (Opsional) Di bagian Health Check, aktifkan Liveness, Readiness, dan Startup sesuai kebutuhan.

    • Liveness probe: Pemeriksaan kelangsungan hidup memeriksa apakah kontainer sedang berjalan. Jika pemeriksaan gagal beberapa kali, kubelet akan me-restart kontainer. Hal ini dapat membantu menyelesaikan masalah seperti deadlock di mana kontainer berjalan tetapi tidak dapat melanjutkan proses.

    • Readiness probe: Pemeriksaan kesiapan memeriksa apakah kontainer siap menerima trafik. Pod ditambahkan sebagai backend ke Service hanya setelah pemeriksaan kesiapannya berhasil.

    • Startup Probes: Pemeriksaan ini hanya dijalankan saat kontainer dimulai untuk memeriksa apakah telah berhasil dimulai. Liveness Probes dan Readiness Probes hanya dijalankan setelah pemeriksaan startup berhasil.

    Untuk informasi lebih lanjut, lihat Configure liveness, readiness, and startup probes.

    Parameter

    Description

    HTTP

    Mengirim permintaan HTTP GET ke kontainer. Parameter yang didukung meliputi:

    • Protocol: HTTP atau HTTPS.

    • Path: Jalur untuk mengakses server HTTP.

    • Port: Port kontainer yang diekspos atau nama port. Nomor port harus berada dalam rentang 1 hingga 65535.

    • HTTP Header: Header permintaan kustom dalam permintaan HTTP. HTTP memungkinkan header duplikat. Konfigurasikan sebagai pasangan kunci-nilai.

    • Initial Delay (s): Parameter initialDelaySeconds menentukan jumlah detik yang ditunggu setelah kontainer dimulai sebelum pemeriksaan pertama dilakukan. Nilai default adalah 3 detik.

    • Period (s): Parameter periodSeconds menentukan interval antar pemeriksaan. Nilai default adalah 10 detik dengan minimum 1 detik.

    • Timeout (s): Parameter timeoutSeconds menentukan durasi timeout untuk setiap pemeriksaan. Nilai default adalah 1 detik dengan minimum 1 detik.

    • Healthy Threshold: Jumlah minimum pemeriksaan sukses berturut-turut yang diperlukan setelah kegagalan untuk menandai kontainer sebagai sehat. Nilai default adalah 1 dengan minimum 1. Untuk pemeriksaan kelangsungan hidup, nilai ini harus 1.

    • Unhealthy Threshold: Jumlah minimum pemeriksaan gagal berturut-turut yang diperlukan setelah keberhasilan untuk menandai kontainer sebagai tidak sehat. Nilai default adalah 3 dengan minimum 1.

    TCP

    Membuka soket TCP ke kontainer. Kubelet mencoba membuka soket pada port yang ditentukan. Jika berhasil, kontainer dianggap sehat; jika tidak, ditandai sebagai gagal. Parameter yang didukung meliputi:

    • Port: Port kontainer yang diekspos atau nama port. Nomor port harus berada dalam rentang 1 hingga 65535.

    • Initial Delay (s): Parameter initialDelaySeconds menentukan jumlah detik yang ditunggu setelah kontainer dimulai sebelum pemeriksaan pertama dilakukan. Nilai default adalah 15 detik.

    • Period (s): Parameter periodSeconds menentukan interval antar pemeriksaan. Nilai default adalah 10 detik dengan minimum 1 detik.

    • Timeout (s): Parameter timeoutSeconds menentukan durasi timeout untuk setiap pemeriksaan. Nilai default adalah 1 detik dengan minimum 1 detik.

    • Healthy Threshold: Jumlah minimum pemeriksaan sukses berturut-turut yang diperlukan setelah kegagalan untuk menandai kontainer sebagai sehat. Nilai default adalah 1 dengan minimum 1. Untuk pemeriksaan kelangsungan hidup, nilai ini harus 1.

    • Unhealthy Threshold: Jumlah minimum pemeriksaan gagal berturut-turut yang diperlukan setelah keberhasilan untuk menandai kontainer sebagai tidak sehat. Nilai default adalah 3 dengan minimum 1.

    Command

    Menjalankan perintah di dalam kontainer untuk memeriksa kesehatannya. Parameter yang didukung meliputi:

    • Command: Perintah yang digunakan untuk memeriksa kesehatan kontainer.

    • Initial Delay (s): Parameter initialDelaySeconds menentukan jumlah detik yang ditunggu setelah kontainer dimulai sebelum pemeriksaan pertama dilakukan. Nilai default adalah 5 detik.

    • Period (s): Parameter periodSeconds menentukan interval antar pemeriksaan. Nilai default adalah 10 detik dengan minimum 1 detik.

    • Timeout (s): Parameter timeoutSeconds menentukan durasi timeout untuk setiap pemeriksaan. Nilai default adalah 1 detik dengan minimum 1 detik.

    • Healthy Threshold: Jumlah minimum pemeriksaan sukses berturut-turut yang diperlukan setelah kegagalan untuk menandai kontainer sebagai sehat. Nilai default adalah 1 dengan minimum 1. Untuk pemeriksaan kelangsungan hidup, nilai ini harus 1.

    • Unhealthy Threshold: Jumlah minimum pemeriksaan gagal berturut-turut yang diperlukan setelah keberhasilan untuk menandai kontainer sebagai tidak sehat. Nilai default adalah 3 dengan minimum 1.

  5. (Opsional) Di bagian Lifecycle, konfigurasikan siklus hidup kontainer.

    Anda dapat mengonfigurasi perintah pra-mulai, penanganan pasca-mulai, dan penanganan pra-berhenti untuk siklus hidup kontainer. Untuk detailnya, lihat Configure lifecycle.

    Parameter

    Description

    Start

    Tentukan perintah beserta argumennya yang akan dijalankan sebelum kontainer dimulai.

    Post-start Hook

    Tentukan perintah yang akan dijalankan setelah kontainer dimulai.

    Pre-stop Hook

    Tentukan perintah yang akan dijalankan sebelum kontainer dihentikan.

  6. (Opsional) Di bagian Volume, pasang volume ke kontainer.

    • Penyimpanan lokal: Pasang ConfigMap, Secret, atau direktori sementara ke jalur kontainer. Untuk informasi lebih lanjut, lihat volumes.

    • Penyimpanan cloud: Mendukung disk cloud, NAS, dan lainnya. Untuk detailnya, lihat Storage overview.

  7. (Opsional) Di bagian Log, konfigurasikan Collection Configuration dan Custom Tag.

    Parameter

    Description

    Collection Settings

    • Logstore: Membuat Logstore yang sesuai di Simple Log Service untuk menyimpan log yang dikumpulkan.

    • Log Path in Container (Can be set to stdout): Mendukung stdout dan log teks.

      • Stdout: Mengumpulkan log output standar dari kontainer.

      • Log teks: Mengumpulkan log dari jalur tertentu di dalam kontainer. Contohnya, semua log teks di bawah /var/log/nginx akan dikumpulkan dan mendukung karakter wildcard.

    Custom Tags

    Anda juga dapat mengatur tag kustom. Saat dikonfigurasi, tag tersebut disertakan bersama log kontainer dan membantu mengkategorikan log untuk mempermudah statistik serta penyaringan selama analisis.

  8. Klik Next untuk menuju wizard Advanced.

Langkah 3: Selesaikan konfigurasi lanjutan

Di halaman wizard Advanced, konfigurasikan kontrol akses, penskalaan, penjadwalan, serta label/anotasi.

  1. Di bagian Access Control, konfigurasikan cara mengekspos Pod backend.

    Contoh ini menggunakan ClusterIP dan Ingress untuk membuat aplikasi Nginx yang dapat diakses publik.

    • Konfigurasikan Service: Klik Create di sebelah Services untuk mengatur parameter layanan.

      Expand to view service configuration details

      configuration item

      Description

      Name

      Masukkan nama layanan. Contoh ini menggunakan nginx-svc.

      Type

      Pilih tipe layanan, yang menentukan cara layanan diakses. Contoh ini memilih Cluster IP.

      • Cluster IP: Mengekspos layanan melalui IP internal dalam kluster. Layanan jenis ini hanya dapat diakses dari dalam kluster dan merupakan ServiceType default.

        Catatan

        Saat tipe layanan adalah Cluster IP, Anda dapat mengonfigurasi Headless Service.

      • Server Load Balancer: Menggunakan Alibaba Cloud Server Load Balancer (SLB) untuk mengekspos layanan. Anda dapat memilih akses publik atau akses internal. SLB Alibaba Cloud mengarahkan lalu lintas ke layanan ClusterIP.

        • Buat SLB baru: Klik Modify untuk mengubah spesifikasi SLB.

        • Gunakan SLB yang ada: Pilih instans SLB dari daftar.

        Catatan

        Tipe LoadBalancer mendukung pembuatan SLB baru atau penggunaan ulang SLB yang sudah ada, dengan batasan berikut:

        • Menggunakan instans SLB yang ada akan menimpa listener-nya saat ini.

        • Instans SLB yang dibuat oleh Kubernetes melalui Services tidak dapat digunakan ulang (untuk mencegah penghapusan tidak sengaja). Hanya instans SLB yang dibuat secara manual di konsol (atau melalui OpenAPI) yang dapat digunakan ulang.

        • Beberapa Services yang menggunakan ulang SLB yang sama tidak boleh berbagi port listener frontend yang sama untuk menghindari konflik.

        • Saat menggunakan ulang SLB, Kubernetes menggunakan nama listener dan nama kelompok vServer sebagai pengenal unik. Jangan ubah nama-nama tersebut.

        • Penggunaan ulang SLB lintas kluster tidak didukung.

      Port Mapping

      Tambahkan port layanan dan port kontainer. Port kontainer harus sesuai dengan port yang diekspos oleh Pod backend.

      External Traffic Policy

      • Local: Mengarahkan lalu lintas hanya ke Pod pada node yang sama.

      • Cluster: Mengarahkan lalu lintas ke Pod pada node mana pun.

      Catatan

      Anda dapat mengatur External Traffic Policy hanya saat tipe layanan adalah Server Load Balancer.

      Annotations

      Tambahkan anotasi untuk mengonfigurasi parameter SLB. Misalnya, menetapkan service.beta.kubernetes.io/alicloud-loadbalancer-bandwidth: 20 membatasi bandwidth layanan hingga 20 Mbit/s untuk mengontrol lalu lintas.

      Label

      Tambahkan label untuk mengidentifikasi layanan ini.

    • Konfigurasikan Ingress: Klik Create di sebelah Ingresses untuk mengatur aturan routing untuk Pod backend.

      Expand to view Ingress configuration details

      Catatan

      Saat membuat aplikasi dari gambar, Anda hanya dapat membuat satu Ingress per layanan. Contoh ini menggunakan hostname virtual sebagai domain uji. Tambahkan pemetaan domain (titik akhir Ingress + domain Ingress) ke file Hosts Anda. Di produksi, gunakan domain yang telah diajukan ICP.

      101.37.XX.XX   foo.bar.com    # Ingress IP.

      Parameter

      Description

      Name

      Masukkan nama Ingress. Contoh ini menggunakan alb-ingress.

      Rule

      Aturan Ingress menentukan cara lalu lintas masuk mencapai layanan klaster. Untuk informasi selengkapnya, lihat ALB Ingress Quick Start.

      • Domain Name: Masukkan domain Ingress.

      • Path: Tentukan jalur URL untuk mengakses layanan. Nilai default-nya adalah jalur root /. Setiap jalur dipetakan ke layanan backend. SLB Alibaba Cloud hanya meneruskan lalu lintas jika permintaan masuk cocok dengan domain dan jalur tersebut.

      • Services: Pilih nama layanan dan port-nya.

      • TLS: Konfigurasikan routing aman.

      Contoh ini menggunakan domain uji foo.bar.com dan mengarahkan layanan ke nginx-svc.

      Canary Release

      Aktifkan rilis canary. Kami merekomendasikan memilih Open Source Solution karena edisi Alibaba Cloud tidak lagi dipelihara.

      Ingress Class

      Tentukan kelas Ingress kustom.

      Annotations

      Tentukan pasangan kunci-nilai anotasi kustom atau cari anotasi berdasarkan nama. Klik Add untuk menambahkan pasangan kunci-nilai anotasi. Untuk daftar anotasi Ingress, lihat Annotations.

      Label

      Klik Add untuk menambahkan kunci dan nilai label yang mengidentifikasi karakteristik Ingress ini.

  2. (Opsional) Di bagian Scaling, aktifkan HPA untuk memenuhi permintaan beban yang bervariasi.

    • Container Compute Service mendukung penskalaan otomatis berdasarkan penggunaan CPU dan memori Pod.

      Catatan

      Untuk mengaktifkan penskalaan otomatis, Anda harus menentukan sumber daya yang diminta untuk kontainer. Jika tidak, penskalaan otomatis tidak akan berfungsi.

      configuration item

      Description

      Metric

      Mendukung CPU dan memori. Harus sesuai dengan jenis sumber daya yang diminta.

      Trigger Condition

      Ambang batas persentase penggunaan sumber daya. Saat ambang ini terlampaui, sistem akan melakukan skala keluar.

      Max. Replicas

      Jumlah maksimum replika kontainer yang dapat diskalakan untuk tipe beban kerja ini.

      Min. Replicas

      Batas bawah jumlah replika untuk penskalaan beban kerja ini.

    • Container Compute Service juga mendukung penjadwalan penskalaan (CronHPA) untuk secara otomatis menskalakan kluster Kubernetes pada waktu tertentu. Sebelum mengaktifkan penjadwalan penskalaan, instal komponen ack-kubernetes-cronhpa-controller. Untuk detailnya, lihat Scheduled scaling (CronHPA).

  1. (Opsional) Di bagian Labels,Annotations, klik Add untuk mengatur label dan anotasi Pod.

  2. Klik Create.

Langkah 4: Lihat informasi aplikasi

Setelah berhasil dibuat, Anda akan dialihkan ke halaman penyelesaian. Klik View Details untuk menuju halaman detail Deployment.

Anda juga dapat melihat informasi Deployment di halaman Deployments. Klik nama Deployment target atau kolom Actions lalu klik Details untuk menuju halaman detail aplikasi.

Buat menggunakan YAML

Dalam orkestrasi templat ACS, Anda mendefinisikan objek sumber daya yang diperlukan untuk aplikasi Anda dan menggabungkannya menjadi aplikasi lengkap menggunakan mekanisme seperti pemilih label.

Contoh ini menunjukkan cara membuat aplikasi Nginx menggunakan templat orkestrasi yang berisi Deployment dan Service. Deployment membuat sumber daya Pod, dan Service mengikat Pod tersebut, membentuk aplikasi Nginx lengkap.

  1. Masuk ke Konsol ACS. Di panel navigasi kiri, klik Clusters.

  2. Di halaman Clusters, klik nama kluster target. Di panel navigasi kiri, pilih Workloads > Deployments.

  3. Di halaman Deployments, klik Create from YAML di pojok kanan atas.

  4. Di halaman Create, konfigurasikan templat dan klik Create.

    • Sample Template: ACS menyediakan contoh YAML Kubernetes untuk berbagai tipe sumber daya untuk membantu Anda melakukan deployment dengan cepat. Anda juga dapat menulis YAML sendiri mengikuti standar Kubernetes.

    • Create Workload: Definisikan templat YAML dengan cepat menggunakan fitur ini.

    • Use Existing Template: Impor templat orkestrasi yang sudah ada.

    • Save Template: Simpan templat orkestrasi yang telah Anda konfigurasi.

    Berikut adalah contoh YAML untuk aplikasi Nginx. Contoh ini dengan cepat membuat Deployment Nginx dan layanan LoadBalancer tipe CLB.

    Catatan
    • ACS mendukung orkestrasi YAML Kubernetes. Gunakan pemisah --- untuk mendefinisikan beberapa objek sumber daya dalam satu templat.

    • (Opsional) Saat memasang volume melalui Volume, file dalam direktori mount akan ditimpa secara default. Untuk mempertahankan file yang ada, konfigurasikan parameter subPath.

    Expand to view Nginx YAML

    apiVersion: apps/v1 
    kind: Deployment
    metadata:
        name: nginx-deployment-basic
        labels:
          app: nginx
    spec:
        replicas: 2
        selector:
          matchLabels:
            app: nginx
        template:
          metadata:
            labels:
              app: nginx
              alibabacloud.com/compute-class: general-purpose 
              alibabacloud.com/compute-qos: default
          spec:
            containers:
            - name: nginx
              image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest #replace it with your exactly <image_name:tags>
              ports:
              - containerPort: 80
              volumeMounts:
              - name: nginx-config
                mountPath: /etc/nginx/nginx.conf 
                subPath: nginx.conf   #set subPath.    
            volumes:
            - name: nginx-config
              configMap:
                name: nginx-conf
    ---
    apiVersion: v1     
    kind: Service
    metadata:
       name: my-service1        #to specify your service name
       labels:
         app: nginx
    spec:
       selector:
         app: nginx             #change label selector to match your backend pod
       ports:
       - protocol: TCP
         name: http
         port: 30080          
         targetPort: 80
       type: LoadBalancer       
    ---
    #ConfigMap for volume
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: nginx-conf
      namespace: default
    data:
      nginx.conf: |-
       user  nginx;
       worker_processes  1;
       error_log  /var/log/nginx/error.log warn;
       pid        /var/run/nginx.pid;
       events {
            worker_connections  1024;
        }
        http {
            include       /etc/nginx/mime.types;
            default_type  application/octet-stream;
            log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                              '$status $body_bytes_sent "$http_referer" '
                              '"$http_user_agent" "$http_x_forwarded_for"';
            access_log  /var/log/nginx/access.log  main;
            sendfile        on;
            #tcp_nopush     on;
            keepalive_timeout  65;
            #gzip  on;
            include /etc/nginx/conf.d/*.conf;
        } 
  5. Setelah mengklik Create, pesan status deployment akan muncul.

kubectl

Anda dapat menggunakan perintah kubectl untuk membuat dan melihat aplikasi.

  1. Sambungkan ke kluster Anda. Untuk detailnya, lihat Obtain cluster kubeconfig and connect using kubectl atau Manage Kubernetes clusters using kubectl in CloudShell.

  2. Anda dapat menjalankan perintah berikut untuk memulai kontainer (seperti server web Nginx).

     kubectl create deployment nginx --image=registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
  3. Anda dapat menjalankan perintah berikut untuk membuat titik akhir layanan untuk kontainer. Menentukan --type=LoadBalancer membuat SLB Alibaba Cloud yang mengarahkan trafik ke kontainer Nginx.

    kubectl expose deployment nginx --port=80 --target-port=80 --type=LoadBalancer
  4. Anda dapat menjalankan perintah berikut untuk mencantumkan kontainer nginx yang sedang berjalan.

    kubectl get pod |grep nginx

    Output yang diharapkan:

    NAME                                   READY     STATUS    RESTARTS   AGE
    nginx-2721357637-d****                 1/1       Running   1          9h