Trace Id is missing
Lompat ke konten utama

Apa itu Kubernetes?

Kubernetes adalah perangkat lunak orkestrasi sumber terbuka untuk menyebarkan, mengelola, dan menskalakan kontainer.

Kubernetes menjelaskan


Aplikasi modern makin banyak dibuat menggunakan kontainer, yang merupakan layanan mikro yang dikemas dengan dependensi dan konfigurasinya. Kubernetes (diucapkan “ku-ber-net-es”) adalah perangkat lunak sumber terbuka untuk menyebarkan dan mengelola kontainer tersebut dalam skala besar, dan ini juga merupakan kata Yunani untuk nakhoda atau pilot. Buat, kirimkan, dan skalakan aplikasi dalam kontainer lebih cepat dengan Kubernetes, terkadang disebut sebagai “k8s” atau “k-eights.”

Cara kerja Kubernetes

Seiring berkembangnya aplikasi untuk mencakup beberapa kontainer yang disebarkan di beberapa server, pengoperasiannya menjadi lebih kompleks. Untuk mengelola kompleksitas ini, Kubernetes menyediakan API sumber terbuka yang mengontrol cara dan tempat kontainer tersebut akan berjalan.

Kubernetes mengatur kluster mesin virtual dan menjadwalkan kontainer untuk dijalankan pada mesin virtual berdasarkan sumber daya komputasi yang tersedia dan kebutuhan sumber daya setiap kontainer. Kontainer dikelompokkan ke dalam pod, yaitu unit operasional dasar untuk Kubernetes, dan pod tersebut disesuaikan dengan kondisi yang Anda inginkan.

Kubernetes juga secara otomatis mengelola penemuan layanan, menggabungkan penyeimbangan beban, melacak alokasi sumber daya, dan melakukan penskalaan berdasarkan penggunaan komputasi. Selain itu, Kubernetes memeriksa kesehatan masing-masing sumber daya dan memungkinkan aplikasi melakukan pemulihan mandiri dengan memulai ulang atau mereplikasi kontainer secara otomatis.

Tonton cara kerja Kubernetes
Tonton cara kerja Kubernetes
Kembali ke Tab

Mengapa menggunakan Kubernetes?

Menjaga aplikasi dalam kontainer tetap aktif dan berjalan dapat menjadi rumit karena sering melibatkan banyak kontainer yang disebarkan di mesin yang berbeda. Kubernetes menyediakan cara untuk menjadwalkan dan menyebarkan kontainer tersebut, serta menskalakannya ke kondisi yang Anda inginkan dan mengelola siklus hidupnya. Gunakan Kubernetes untuk mengimplementasikan aplikasi berbasis kontainer Anda dengan cara yang portabel, terukur, dan dapat diperluas.

Buat beban kerja menjadi portabel

Karena aplikasi kontainer terpisah dari infrastrukturnya, aplikasi menjadi portabel saat Anda menjalankannya di Kubernetes. Pindahkan aplikasi dari mesin lokal ke produksi di lingkungan lokal, hibrid, dan beberapa cloud. Semuanya dapat dilakukan sambil menjaga konsistensi di seluruh lingkungan.

Skalakan kontainer dengan mudah

Definisikan aplikasi dalam kontainer yang kompleks dan sebarkan di seluruh kluster server atau beberapa kluster dengan Kubernetes. Saat menskalakan aplikasi sesuai dengan status yang Anda inginkan, Kubernetes secara otomatis memantau dan menjaga kesehatan kontainer.

Buat aplikasi yang mudah diperluas

Komunitas sumber terbuka besar dari pengembang dan perusahaan secara aktif membuat ekstensi dan plugin yang menambahkan kemampuan seperti keamanan, pemantauan, dan manajemen ke Kubernetes. Selain itu, Certified Kubernetes Conformance Program mengharuskan setiap versi Kubernetes untuk mendukung API yang memudahkan penggunaan dari apa yang diberikan komunitas.

Mulai menggunakan Kubernetes

Lihat cara untuk mulai menyebarkan dan mengelola aplikasi dalam kontainer.

Ikuti jalur pembelajaran

Pelajari keterampilan praktis untuk memulai dan menjalankan Kubernetes.

Buat di platform Kubernetes lengkap

Meskipun Kubernetes sendiri menawarkan portabilitas, skalabilitas, dan ekstensibilitas, penambahan pengembangan, operasi, dan kontrol keamanan menyeluruh memungkinkan Anda menyebarkan pembaruan lebih cepat (tanpa mengorbankan keamanan atau keandalan) dan menghemat waktu dalam pengelolaan infrastruktur. Saat Anda mengadopsi Kubernetes, pertimbangkan juga untuk menerapkan:

  • Otomatisasi infrastruktur atau Kubernetes tanpa server untuk menghilangkan tugas rutin seperti penyediaan, patching, dan peningkatan.

  • Alat untuk pengembangan aplikasi dalam kontainer dan alur kerja integrasi berkelanjutan dan penyebaran berkelanjutan (CI/CD).

  • Layanan untuk mengelola keamanan, tata kelola, identitas, dan akses.

Memanfaatkan Kubernetes dengan praktik DevOps

Seiring berkembangnya aplikasi Kubernetes (penambahan kontainer, lingkungan, dan tim), frekuensi rilis cenderung meningkat seiring dengan kompleksitas pengembangan dan operasional. Menerapkan praktik DevOps di lingkungan Kubernetes memungkinkan Anda bergerak cepat dalam skala besar dengan keamanan yang ditingkatkan.

Mengirimkan kode lebih cepat dengan CI/CD

Meskipun kontainer menyediakan format pengemasan aplikasi yang konsisten dan memudahkan kolaborasi antara tim pengembangan dan operasi, CI/CD dapat mempercepat perpindahan dari kode ke kontainer dan ke kluster Kubernetes dalam hitungan menit dengan mengotomatiskan tugas-tugas tersebut.

Mengelola sumber daya secara efektif dengan infrastruktur sebagai kode

Infrastruktur sebagai kode menciptakan konsistensi dan visibilitas sumber daya komputasi di seluruh tim, yang mengurangi kemungkinan kesalahan oleh manusia. Praktik ini berfungsi dengan sifat deklaratif aplikasi Kubernetes yang didukung oleh Helm. Menggabungkan keduanya memungkinkan Anda mendefinisikan aplikasi, sumber daya, dan konfigurasi dengan cara yang andal, dapat dilacak, dan berulang.

Mempercepat perulangan umpan balik dengan pemantauan konstan

Persingkat waktu antara bug dan perbaikan dengan tampilan lengkap tentang sumber daya, kluster, API Kubernetes, kontainer, dan kode Anda, mulai dari pemantauan kesehatan kontainer hingga pengelogan terpusat. Tampilan tersebut membantu Anda mencegah kemacetan sumber daya, melacak permintaan berbahaya, dan menjaga aplikasi Kubernetes Anda tetap sehat.

Menyeimbangkan kecepatan dan keamanan dengan DevOps

Hadirkan observabilitas real time ke alur kerja DevOps Anda tanpa mengorbankan kecepatan. Terapkan pemeriksaan kepatuhan dan konfigurasi ulang secara otomatis untuk mengamankan alur rilis dan build Anda, serta menghasilkan aplikasi Kubernetes Anda.

Alur kerja DevOps Infografis Alur Proses dengan Kubernetes

Contoh alur kerja DevOps dengan Kubernetes

  1. Lakukan iterasi, pengujian, dan debug pada berbagai bagian aplikasi secara bersamaan di kluster Kubernetes yang sama dengan cepat.

  2. Gabungkan dan periksa kode ke dalam repositori GitHub untuk integrasi berkelanjutan. Kemudian, jalankan build dan pengujian otomatis sebagai bagian dari pengiriman berkelanjutan.

  3. Verifikasikan sumber dan integritas citra kontainer. Citra ditahan di karantina hingga citra lulus dari pemindaian.

  4. Provisikan kluster Kubernetes dengan alat seperti Terraform. Bagan helm yang diinstal oleh Terraform menentukan status sumber daya dan konfigurasi aplikasi yang diinginkan.

  5. Terapkan kebijakan untuk mengatur penyebaran ke kluster Kubernetes.

  6. Alur rilis secara otomatis menjalankan strategi penyebaran yang telah ditentukan sebelumnya dengan setiap kode.

  7. Tambahkan audit kebijakan dan remediasi otomatis ke alur CI/CD. Misalnya, hanya alur rilis yang memiliki izin untuk membuat pod baru di lingkungan Kubernetes Anda.

  8. Aktifkan telemetri aplikasi, pemantauan kesehatan kontainer, dan analitik log real time.

  9. Atasi masalah dengan wawasan dan informasikan rencana untuk sprint berikutnya.

Manfaatkan kehebatan Kubernetes dengan Azure untuk membuat

Otomatiskan provisi, peningkatan, pemantauan, dan penskalaan dengan Microsoft Azure Kubernetes Service (AKS) yang terkelola sepenuhnya. Dapatkan Kubernetes tanpa server, pengalaman pengembangan hingga produksi yang lebih mudah, serta keamanan dan tata kelola tingkat perusahaan.

Dapatkan inspirasi dan inovasi dari komunitas Kubernetes

Kubernetes diciptakan oleh (dan berkembang karena) ribuan individu dan ratusan organisasi yang telah memberikan pengetahuan, kode, dan dukungan berkelanjutan kepada orang-orang yang menggunakannya. Buat perangkat lunak yang sukses Anda menggunakan kontribusi mereka yang penuh semangat.

35.000

Kontributor

180.000

Penerapan

Proyek teratas

di GitHub

Kontribusi Microsoft untuk Kubernetes

Process Flow Infographic Microsoft contributions to Kubernetes

Menghadirkan kecerdasan sumber terbuka ke perusahaan

Untuk membuat Kubernetes lebih mudah diadopsi oleh organisasi (dan lebih mudah digunakan oleh pengembang), Microsoft telah menambah jumlah karyawan yang berpartisipasi tiga kali lipat dalam proyek sumber terbuka hanya dalam tiga tahun. Kini, sebagai kontributor perusahaan terbesar ketiga, Microsoft berupaya menjadikan Kubernetes mudah diakses dan lebih ramah perusahaan dengan menghadirkan pembelajaran terbaru dan praktik terbaik, dari bekerja sama dengan beragam pelanggan hingga komunitas Kubernetes.

FAQ – Kubernetes

  • Ikuti perjalanan pilihan ini untuk mulai mempelajari Kubernetes.

  • Kubernetes berguna dalam berbagai skenario mulai dari memindahkan aplikasi ke cloud hingga menyederhanakan tantangan dalam pembelajaran mesin dan AI.

    Kasus penggunaan utama meliputi:

    Memigrasikan aplikasi yang ada ke cloud

    Menyederhanakan penyebaran dan manajemen aplikasi berbasis layanan mikro

    Menskalakan dengan mudah

    Penyebaran dan manajemen perangkat IoT

    Pembelajaran mesin

  • Lihat praktik terbaik dan pola arsitektural yang dibuat oleh ribuan profesional teknis dan mitra yang menggunakan Kubernetes.

  • Penyebaran Kubernetes memungkinkan Anda untuk menjelaskan status penyebaran aplikasi yang Anda inginkan. Scheduler Kubernetes memastikan status aktual cocok dengan status yang Anda inginkan, dan mempertahankan status tersebut jika satu atau beberapa pod mengalami crash. Penyebaran Kubernetes juga memungkinkan Anda meningkatkan aplikasi secara konsisten tanpa waktu henti.

  • Penyebaran ke Kubernetes menggunakan DevOps biasanya melibatkan repositori seperti Git untuk manajemen versi. Repositori berfungsi sebagai awal baris CI/CD. Tergantung pada pendekatan yang Anda gunakan, perubahan dalam repositori memicu aktivitas integrasi, pembuatan, pengiriman, dan penyebaran.

  • Kubernetes dan Docker dapat dikombinasikan.

    Docker menyediakan standar terbuka untuk mengemas dan mendistribusikan aplikasi dalam kontainer. Dengan Docker, Anda dapat membuat dan menjalankan kontainer serta menyimpan dan membagikan citra kontainer.

    Kubernetes mengatur dan mengelola aplikasi dalam kontainer terdistribusi yang dibuat Docker. Ini juga menyediakan infrastruktur yang dibutuhkan untuk menyebarkan dan menjalankan aplikasi tersebut pada kluster mesin.

Siap kapan pun Anda siap. Coba Kubernetes gratis di Azure 

Mulai gratis