Apa itu Cloud Native?

Cloud native adalah pendekatan perangkat lunak untuk membangun, melakukan deployment, dan mengelola aplikasi modern di lingkungan komputasi cloud. Perusahaan modern ingin membangun aplikasi yang sangat dapat diskalakan, fleksibel, dan tangguh serta dapat diperbarui dengan cepat untuk memenuhi permintaan pelanggan. Untuk melakukannya, perusahaan menggunakan alat dan teknik modern yang secara inheren mendukung pengembangan aplikasi pada infrastruktur cloud. Teknologi cloud-native ini mendukung perubahan yang cepat dan sering pada aplikasi tanpa memengaruhi pengiriman layanan, serta memberikan pengadopsi keunggulan kompetitif yang inovatif.

 

Bagaimana pendekatan cloud-native menguntungkan bisnis?

Organisasi mendapatkan keunggulan kompetitif dalam berbagai cara ketika mereka membangun aplikasi perangkat lunak cloud-native.

Meningkatkan efisiensi

Pengembangan cloud-native menghadirkan praktik tangkas seperti DevOps dan pengiriman berkelanjutan (CD). Developer menggunakan alat otomatis, layanan cloud, dan budaya desain modern untuk membangun aplikasi yang dapat diskalakan dengan cepat.

Mengurangi biaya

Dengan mengadopsi pendekatan cloud-native, perusahaan tidak perlu berinvestasi dalam pengadaan dan pemeliharaan infrastruktur fisik yang mahal. Hal ini menghasilkan penghematan jangka panjang dalam pengeluaran operasional. Penghematan biaya untuk membangun solusi cloud-native juga dapat menguntungkan klien Anda.

Memastikan ketersediaan

Teknologi cloud-native memungkinkan perusahaan untuk membangun aplikasi yang tangguh dan tersedia dengan sangat baik. Pembaruan fitur tidak menyebabkan waktu henti dan perusahaan dapat menaikkan skala sumber daya aplikasi selama musim puncak untuk memberikan pengalaman positif bagi pelanggan. 

Apa itu aplikasi cloud-native?

Aplikasi cloud-native adalah program perangkat lunak yang terdiri dari beberapa layanan kecil dan saling bergantung yang disebut layanan mikro. Secara tradisional, developer membangun aplikasi monolitik dengan struktur blok tunggal yang berisi semua fungsi yang diperlukan. Dengan menggunakan pendekatan cloud-native, developer perangkat lunak memecah fungsionalitas menjadi layanan mikro yang lebih kecil. Hal ini membuat aplikasi cloud-native lebih tangkas karena layanan mikro ini bekerja secara independen dan mengambil sumber daya komputasi minimal untuk dijalankan. 

Aplikasi cloud-native dibandingkan dengan aplikasi korporasi tradisional

Aplikasi korporasi tradisional dibangun menggunakan metode pengembangan perangkat lunak yang kurang fleksibel. Developer biasanya mengerjakan sejumlah besar fungsi perangkat lunak sebelum melepaskannya untuk pengujian. Dengan demikian, aplikasi korporasi tradisional membutuhkan waktu lebih lama untuk di-deploy dan tidak dapat diskalakan.  

Di sisi lain, aplikasi cloud-native menggunakan pendekatan kolaboratif dan dapat diskalakan dengan sangat mudah pada platform yang berbeda. Developer menggunakan alat perangkat lunak untuk mengotomatisasi pembuatan, pengujian, dan deployment prosedur dalam aplikasi cloud-native. Anda dapat menyiapkan, melakukan deployment, atau menduplikasi layanan mikro secara langsung, tindakan yang mustahil dilakukan dengan aplikasi tradisional. 

Apa itu CNCF?

Cloud Native Computing Foundation (CNCF) adalah fondasi sumber terbuka yang membantu organisasi memulai perjalanan cloud-native mereka. Didirikan pada tahun 2015, CNCF mendukung komunitas sumber terbuka dalam mengembangkan komponen cloud-native kritis, termasuk Kubernetes. Amazon adalah anggota CNCF

Apa itu arsitektur aplikasi cloud-native?

Arsitektur cloud-native menggabungkan komponen perangkat lunak yang digunakan tim pengembangan untuk membangun dan menjalankan aplikasi cloud-native yang dapat diskalakan. CNCF mencantumkan infrastruktur yang tidak dapat diubah, layanan mikro, API deklaratif, kontainer, dan mesh layanan sebagai blok teknologi arsitektur cloud-native

Infrastruktur yang tidak dapat diubah

Infrastruktur yang tidak dapat diubah menandakan bahwa server untuk hosting aplikasi cloud-native tetap tidak berubah setelah deployment. Jika aplikasi memerlukan lebih banyak sumber daya komputasi, server lama akan dibuang, dan aplikasi dipindahkan ke server berperforma tinggi yang baru. Dengan menghindari peningkatan manual, infrastruktur yang tidak dapat diubah menjadikan deployment cloud-native sebagai proses yang dapat diprediksi. 

Layanan mikro

Layanan mikro adalah komponen perangkat lunak kecil dan independen yang secara kolektif berfungsi sebagai perangkat lunak cloud-native lengkap. Setiap layanan mikro berfokus pada masalah kecil dan spesifik. Layanan mikro digabungkan secara longgar, yang berarti bahwa layanan tersebut merupakan komponen perangkat lunak independen yang berkomunikasi satu sama lain. Developer membuat perubahan pada aplikasi dengan mengerjakan layanan mikro individu. Dengan begitu, aplikasi terus berfungsi meski satu layanan mikro gagal. 

API

Antarmuka Pemrograman Aplikasi (API) adalah metode yang digunakan dua atau beberapa program perangkat lunak untuk bertukar informasi. Sistem cloud-native menggunakan API untuk menyatukan layanan mikro yang digabungkan secara longgar. API memberi tahu Anda data yang diinginkan layanan mikro dan hasil yang dapat diberikannya kepada Anda, alih-alih menentukan langkah-langkah untuk mencapai hasilnya. 

Mesh layanan

Layanan mesh adalah lapisan perangkat lunak dalam infrastruktur cloud yang mengelola komunikasi antara beberapa layanan mikro. Developer menggunakan layanan mesh untuk memperkenalkan fungsi tambahan tanpa menulis kode baru dalam aplikasi. 

Kontainer

Kontainer adalah unit komputasi terkecil dalam aplikasi cloud-native. Kontainer adalah komponen perangkat lunak yang mengemas kode layanan mikro dan file lain yang diperlukan dalam sistem cloud-native. Dengan mengontainerisasi layanan mikro, aplikasi cloud-native berjalan secara independen dari sistem operasi dan perangkat keras yang mendasarinya. Ini menandakan bahwa developer perangkat lunak dapat melakukan deployment aplikasi cloud-native secara on-premise, pada infrastruktur cloud atau cloud hibrida. Developer menggunakan kontainer untuk mengemas layanan mikro dengan dependensinya masing-masing, seperti file sumber daya, pustaka, dan skrip yang dibutuhkan aplikasi utama untuk dijalankan.

Manfaat kontainer

Beberapa manfaat kontainer meliputi:

  • Anda menggunakan sumber daya komputasi yang lebih sedikit dibandingkan deployment aplikasi konvensional
  • Anda dapat melakukan deployment hampir secara langsung
  • Anda dapat menskalakan sumber daya komputasi cloud yang dibutuhkan aplikasi Anda dengan lebih efisien

Apa itu pengembangan aplikasi cloud-native?

Pengembangan aplikasi cloud-native menjelaskan cara dan lokasi developer dalam membangun dan melakukan deployment aplikasi cloud-native. Pergeseran budaya penting bagi pengembangan cloud-native. Developer mengadopsi praktik perangkat lunak khusus untuk mengurangi waktu pengiriman perangkat lunak dan memberikan fitur akurat yang memenuhi harapan pengguna yang berubah-ubah. Kami memberikan beberapa praktik pengembangan cloud-native yang umum di bawah ini.

Integrasi berkelanjutan

Integrasi berkelanjutan (CI) adalah praktik perangkat lunak di mana developer seringkali mengintegrasikan perubahan ke basis kode bersama dan tanpa kesalahan. Perubahan yang sering dan kecil akan membuat pengembangan menjadi lebih efisien karena Anda dapat mengidentifikasi dan memecahkan masalah dengan lebih cepat. Alat CI secara otomatis menilai kualitas kode untuk setiap perubahan sehingga tim pengembangan dapat menambahkan fitur baru dengan keyakinan yang lebih besar.

Pengantaran berkelanjutan

Pengiriman berkelanjutan (CD) adalah praktik perangkat lunak yang mendukung pengembangan cloud-native. Dengan CD, tim pengembangan memastikan bahwa layanan mikro selalu siap untuk di-deploy ke cloud. Mereka menggunakan alat otomatisasi perangkat lunak untuk mengurangi risiko ketika melakukan perubahan, seperti memperkenalkan fitur baru dan memperbaiki bug di aplikasi. CI dan CD bekerja sama untuk pengiriman perangkat lunak yang efisien.

DevOps

DevOps adalah budaya perangkat lunak yang meningkatkan kolaborasi tim pengembangan dan operasi. DevOps adalah filosofi desain yang selaras dengan model cloud-native. Praktik DevOps memungkinkan organisasi untuk mempercepat siklus hidup pengembangan perangkat lunak. Developer dan teknisi operasi menggunakan alat DevOps untuk mengotomatiskan pengembangan cloud-native

Tanpa Server

Komputasi nirserver adalah model cloud-native di mana penyedia cloud mengelola sepenuhnya infrastruktur server yang mendasarinya. Developer menggunakan komputasi nirserver karena infrastruktur cloud secara otomatis menskalakan dan mengonfigurasi untuk memenuhi persyaratan aplikasi. Developer hanya membayar sumber daya yang digunakan aplikasi. Arsitektur nirserver secara otomatis menghapus sumber daya komputasi ketika aplikasi berhenti berjalan. 

Apa saja manfaat pengembangan aplikasi cloud-native?

Pengembangan lebih cepat

Developer menggunakan pendekatan cloud-native untuk mengurangi waktu pengembangan dan mencapai aplikasi dengan kualitas yang lebih baik. Alih-alih mengandalkan infrastruktur perangkat keras tertentu, developer membuat aplikasi kontainer yang siap di-deploy dengan praktik DevOps. Hal ini memungkinkan developer untuk merespons perubahan dengan cepat. Misalnya, mereka dapat membuat beberapa pembaruan harian tanpa mematikan aplikasi. 

Independensi platform

Dengan membangun dan melakukan deployment aplikasi di cloud, developer yakin akan konsistensi dan keandalan lingkungan operasi. Mereka tidak perlu khawatir mengenai ketidakcocokan perangkat keras karena penyedia cloud akan mengurusnya. Oleh karena itu, developer dapat fokus pada penyampaian nilai dalam aplikasi alih-alih menyiapkan infrastruktur yang mendasarinya. 

Operasi hemat biaya

Anda hanya membayar sumber daya yang benar-benar digunakan oleh aplikasi Anda. Misalnya, jika lalu lintas pengguna Anda melonjak hanya selama waktu-waktu tertentu dalam setahun, Anda hanya membayar biaya tambahan untuk jangka waktu tersebut. Anda tidak perlu menyediakan sumber daya tambahan yang tidak digunakan selama sebagian besar waktu dalam tahun tersebut.

Apa itu tumpukan cloud-native?

Tumpukan cloud-native menjelaskan lapisan teknologi cloud-native yang digunakan developer untuk membangun, mengelola, dan menjalankan aplikasi cloud-native. Lapisan tersebut dikategorikan sebagai berikut.

Lapisan infrastruktur

Lapisan infrastruktur adalah fondasi dari tumpukan cloud-native. Lapisan ini terdiri dari sistem operasi, penyimpanan, jaringan, dan sumber daya komputasi lainnya yang dikelola oleh penyedia cloud pihak ketiga. 

Lapisan penyediaan

Lapisan penyediaan terdiri dari layanan cloud yang mengalokasikan dan mengonfigurasi lingkungan cloud.

Lapisan waktu aktif

Lapisan waktu aktif menyediakan teknologi cloud-native agar kontainer berfungsi. Lapisan ini terdiri dari penyimpanan data cloud, kemampuan jaringan, dan waktu aktif kontainer seperti containerd

Lapisan orkestrasi dan manajemen

Orkestrasi dan manajemen bertanggung jawab untuk mengintegrasikan berbagai komponen cloud sehingga berfungsi sebagai unit tunggal. Lapisan ini mirip dengan cara kerja sistem operasi dalam komputasi tradisional. Developer menggunakan alat orkestrasi seperti Kubernetes untuk melakukan deployment, mengelola, dan menskalakan aplikasi cloud di mesin yang berbeda. 

Definisi aplikasi dan lapisan pengembangan

Lapisan tumpukan cloud-native ini terdiri dari teknologi perangkat lunak untuk membangun aplikasi cloud-native. Misalnya, developer menggunakan teknologi cloud seperti basis data, olahpesan, gambar kontainer, serta integrasi berkelanjutan (CI) dan pengiriman berkelanjutan (CD) untuk membangun aplikasi cloud

Observabilitas dan alat analisis

Observabilitas dan alat analisis memantau, mengevaluasi, dan meningkatkan kondisi sistem aplikasi cloud. Developer menggunakan alat untuk memantau metrik seperti penggunaan CPU, memori, dan latensi guna memastikan tidak ada gangguan pada kualitas layanan aplikasi. 

 

Apa itu komputasi cloud?

Komputasi cloud mengacu pada infrastruktur perangkat lunak yang di-hosting di pusat data eksternal dan tersedia bagi pengguna berbasis bayar per penggunaan. Perusahaan tidak perlu membayar server yang mahal dan memeliharanya. Sebagai gantinya, mereka dapat menggunakan layanan cloud-native sesuai permintaan seperti penyimpanan, basis data, dan analitik dari penyedia cloud.

Komputasi cloud dibandingkan dengan cloud native

Komputasi cloud adalah sumber daya, infrastruktur, dan alat yang disediakan sesuai permintaan oleh vendor cloud. Sementara itu, cloud native adalah pendekatan yang membangun dan menjalankan program perangkat lunak dengan model komputasi cloud.

Apa yang dimaksud berkemampuan cloud?

Aplikasi berkemampuan cloud adalah aplikasi korporasi lama yang berjalan di pusat data on-premise tetapi telah dimodifikasi agar berjalan di cloud. Pembuatan aplikasi ini melibatkan perubahan bagian dari modul perangkat lunak untuk memigrasi aplikasi ke server cloud. Dengan demikian, Anda dapat menggunakan aplikasi dari peramban sembari mempertahankan fitur aslinya.

Aplikasi cloud native dibandingkan aplikasi berkemampuan cloud

Istilah cloud native mengacu pada aplikasi yang didesain untuk berada di cloud sejak awal. Cloud native melibatkan teknologi cloud seperti layanan mikro, orkestrator kontainer, dan penskalaan otomatis. Aplikasi berkemampuan cloud tidak memiliki fleksibilitas, ketahanan, atau skalabilitas dibandingkan rekan cloud-native-nya. Alasannya karena aplikasi berkemampuan cloud mempertahankan struktur monolitiknya meskipun telah berpindah ke cloud.

Mengapa membuat aplikasi cloud-native di AWS?

AWS menawarkan teknologi, alat, dan layanan yang diperlukan untuk mengembangkan aplikasi cloud-native fungsional. Anda dapat fokus pada pembuatan produk perangkat lunak alih-alih mengkhawatirkan infrastruktur yang mendasarinya: 

  • Beralih ke kontainer di AWS yang terkelola untuk menyederhanakan operasi dan mengurangi overhead manajemen
  • Buat aplikasi atau fitur baru menggunakan teknologi nirserver dengan AWS Lambda dan basis data yang dibuat khusus dengan Amazon DynamoDB
  • Gunakan alat seperti AWS Amplify dan AWS CDK untuk memaksimalkan ketangkasan dan mempercepat pengembangan
  • Pilih dari 15 basis data AWS relasional dan nonrelasional yang dibuat khusus untuk mendukung arsitektur layanan mikro dan kebutuhan aplikasi modern, seperti menyimpan dokumen dan pasangan nilai kunci
  • Gunakan portofolio layanan DevOpskami dan Jaringan Partner kami yang luas untuk membantu mengembangkan dan menjalankan aplikasi secara lebih cepat, serta membangun aplikasi dalam skala besar

Mulai aplikasi cloud-native dengan membuat akun AWS saat ini juga.

Langkah Berikutnya di AWS

Lihat sumber daya terkait produk tambahan
Pelajari selengkapnya tentang AWS untuk Setiap Aplikasi 
Daftar untuk akun gratis

Dapatkan akses secara instan ke AWS Tingkat Gratis.

Daftar 
Mulai membangun di konsol

Mulai membangun di Konsol Manajemen AWS.

Masuk