Panduan Arsitektur Komputasi Awan
Dibandingkan dengan pengaturan berbasis perangkat keras klasik, arsitektur komputasi awan memberikan lebih banyak fleksibilitas, pilihan desain, dan peluang penghematan biaya. Namun, manfaat ini ada harganya karena platform cloud biasanya lebih kompleks untuk dipahami dan memiliki lebih banyak bagian yang bergerak daripada rata-rata infrastruktur fisik lokal.
Artikel ini adalah pengantar arsitektur komputasi awan dan komponen yang beroperasi dalam lingkungan cloud. Baca terus untuk mempelajari cara kerja berbagai sistem secara bersamaan untuk membuat cloud fungsional dan menyediakan sumber daya TI sesuai permintaan pengguna akhir (server, aplikasi, database, jaringan, dll.).
Penjelasan Arsitektur Cloud Computing
Arsitektur komputasi awan mengacu pada campuran sistem dan teknologi yang, ketika terintegrasi, menciptakan infrastruktur TI yang mengabstraksi, mengumpulkan, dan berbagi sumber daya sesuai permintaan di seluruh jaringan. Setiap arsitektur cloud memiliki dua komponen utama:
- Front end (elemen yang terlihat oleh pengguna akhir, seperti aplikasi web dan browser, perangkat seluler, antarmuka pengguna, dll.).
- Back end (bagian "cloud" dari sistem dengan penyimpanan data, server khusus, OS, tindakan keamanan, dll.).
Arsitektur komputasi awan juga membutuhkan jaringan di mana ujung depan dan belakang berkomunikasi. Kedua komponen tersebut biasanya berbagi data melalui Internet kecuali jika arsitek lebih suka menggunakan jaringan pribadi (opsi masuk dalam arsitektur awan pribadi dan hibrida).
Apa pun jenis jaringannya, lapisan komunikasi antara ujung depan dan belakang harus memiliki:
- Bandwidth tinggi.
- Tidak ada latensi.
- Ketersediaan tinggi
- Keamanan jaringan teratas.
Pada inti desainnya, arsitektur komputasi awan adalah campuran dari:
- Arsitektur berdasarkan peristiwa (EDA): Desain perangkat lunak tempat layanan yang dipisahkan menghasilkan, mendeteksi, dan bereaksi terhadap peristiwa sistem.
- Arsitektur berorientasi layanan (SOA): Sebuah sistem di mana satu set komponen menyediakan layanan ke elemen lain melalui protokol komunikasi.
Sebuah perusahaan memiliki banyak alasan untuk menerapkan arsitektur komputasi awan meskipun sistem ini lebih kompleks daripada pengaturan di tempat. Beberapa alasan utamanya adalah:
- Waktu ke pasar lebih cepat.
- Penyediaan sumber daya lebih cepat.
- Skalabilitas waktu nyata (naik dan turun).
- Kemampuan untuk menggunakan solusi cloud-native (seperti Kubernetes).
- Kepatuhan yang lebih andal karena visibilitas data yang lebih baik.
- Penghematan biaya (tidak perlu perangkat keras lokal dan kontrol ketat atas penggunaan sumber daya).
Front End Arsitektur Cloud Computing
Ujung depan bertindak sebagai klien dalam arsitektur dan dapat berkomunikasi dengan ujung belakang melalui Internet atau jaringan pribadi. Komponen front-end dapat dilihat oleh pengguna akhir dan memungkinkan akses ke platform cloud.
Dua elemen utama dari ujung depan adalah:
- Aplikasi atau perangkat lunak (biasanya browser web atau aplikasi asli) yang digunakan klien untuk mengakses dan berinteraksi dengan platform cloud. Aplikasi atau browser memiliki UI khusus, yang oleh beberapa arsitek awan dianggap sebagai komponen front-end yang terpisah.
- Perangkat sisi klien yang digunakan pengguna untuk terhubung dan berinteraksi dengan browser atau aplikasi (ponsel, tablet, PC, laptop, dll.).
Elemen ujung depan bertanggung jawab untuk:
- Memungkinkan pengguna untuk berinteraksi dengan awan.
- Mengirim kueri ke back end melalui middleware.
- Meminta layanan dari ujung belakang.
- Menyajikan semua info terkait cloud (penggunaan sumber daya, masalah keamanan, peringatan pemantauan, pola penggunaan, dll.).
Cloud menangani lebih banyak pemrosesan daripada perangkat sisi klien, yang merupakan manfaat penting lainnya dari komputasi awan yang sangat berguna untuk tim dan perusahaan yang mengutamakan jarak jauh dengan kebijakan BYOD.
Back End Arsitektur Cloud Computing
Dalam arsitektur komputasi awan, bagian belakang mengacu pada awan itu sendiri. Komponen ini berisi berbagai sistem, server, dan unit penyimpanan yang memiliki beberapa peran kunci:
- Jalankan program dan aplikasi terkait cloud.
- Berikan fungsionalitas ke front end dan tanggapi kueri apa pun yang dikirim pengguna.
- Menerapkan dan menskalakan sumber daya.
- Pantau semua operasi dan aktivitas.
- Jaga data dan proses cloud tetap aman.
- Hubungkan semua layanan dan aplikasi.
- Jalankan mekanisme kontrol lalu lintas.
- Mengatur protokol cloud.
Penyedia cloud adalah orang yang mengelola komponen back-end. Namun, beberapa perusahaan memilih untuk mengembangkan dan memelihara cloud mereka, dalam hal ini tim internal bertanggung jawab atas operasi back-end. Perusahaan juga dapat membagi tugas back-end antara internal dan tim penyedia (pilihan umum di perusahaan yang sangat diatur yang harus mematuhi HIPAA atau PCI).
Sedangkan front end hanyalah sebuah UI dengan koneksi, back end adalah yang memberikan cloud prinsip utamanya:
- Sumber daya sesuai permintaan yang dapat dikonfigurasi pengguna tanpa bantuan penyedia layanan.
- Kemampuan klien untuk terhubung di mana pun lokasinya.
- Pengumpulan sumber daya yang memungkinkan penyedia mengumpulkan sumber daya dan melayani banyak pengguna dalam lingkungan multi-penyewa yang dinamis.
- Elastisitas cepat untuk respons cepat terhadap permintaan konsumen.
- Layanan terukur yang memungkinkan pengguna akhir memantau penggunaan cloud secara mendetail.
Bagian belakang memiliki lebih banyak komponen dan secara signifikan lebih besar daripada bagian depannya. Di bawah ini adalah melihat lebih dekat setiap komponen back-end yang ada dalam arsitektur komputasi awan.
Lapisan Aplikasi
Saat pengguna akhir berinteraksi dengan ujung depan, lapisan aplikasi ujung belakang menerima kueri dan menangani permintaan klien. Lapisan ini memiliki beberapa peran penting:
- Beri pengguna akses ke layanan awan.
- Hubungkan bagian belakang dan depan.
- Menanggapi pertanyaan front-end.
- Koordinasikan kebutuhan konsumen dengan sumber daya di bagian belakang.
Lapisan Layanan
Lapisan layanan menambahkan utilitas ke bagian belakang arsitektur komputasi awan. Komponen ini menangani setiap tugas dan permintaan melalui layanan untuk penyimpanan data, lingkungan pengembangan aplikasi, layanan web, dll.
Layanan dapat melakukan berbagai tugas dan fungsi dalam runtime cloud. Jenis layanan yang dapat digunakan klien bergantung pada model pengiriman. Ada tiga metode pengiriman berbasis cloud utama:
- Infrastruktur sebagai Layanan (IaaS): IaaS menyediakan akses dan kontrol atas sumber daya arsitektur komputasi awan (penyimpanan data, server, infrastruktur jaringan, VM, dll.).
- Perangkat Lunak sebagai Layanan (SaaS): SaaS memungkinkan klien untuk meng-host perangkat lunak aplikasi di cloud. Dalam model SaaS, penyedia menangani semua peningkatan dan pengembangan, dan vendor memelihara infrastruktur yang mendasarinya.
- Platform sebagai Layanan (PaaS): Model PaaS memberi pengguna platform sesuai permintaan untuk pengembangan perangkat lunak. Penyedia menghosting kumpulan teknologi dan perangkat lengkap, tetapi pengguna menangani pengembangan perangkat lunak, pengelolaan aplikasi, dan pembaruan.
Model pengiriman bukan model penerapan cloud (seperti hybrid, komunitas, atau multi-cloud). Jika model pengiriman menentukan jenis layanan yang dapat diakses pengguna, model penerapan menentukan jenis awan yang dimaksud.
Perangkat Tengah
Middleware mengacu pada komponen perangkat lunak yang memungkinkan perangkat dan aplikasi jaringan untuk berkomunikasi. Komponen ini bertanggung jawab untuk koneksi antara:
- Aplikasi.
- Layanan.
- Awan waktu proses.
- Unit penyimpanan.
- Perangkat infrastruktur.
- Solusi keamanan.
- Ujung depan.
Seperti di pusat data tradisional, middleware bergantung pada database dan aplikasi komunikasi untuk membangun koordinasi antara sistem yang berbeda.
Penyimpanan Cloud
Penyimpanan adalah bagian ujung belakang yang menyimpan semua data cloud. Jenis dan kapasitas penyimpanan cloud bervariasi berdasarkan penyedia cloud dan kebutuhan klien. Layanan komputasi awan ini memungkinkan pengguna untuk menyimpan data di awan alih-alih penyimpanan data di tempat, yang merupakan pilihan yang lebih aman dan nyaman.
Infrastruktur Cloud
Meskipun pengguna akhir tidak pernah melihat atau berinteraksi dengan infrastruktur cloud, cloud juga membutuhkan perangkat keras. Infrastruktur cloud mencakup semua fitur ruang server standar di pusat data, termasuk:
- Server.
- Unit Pemrosesan Pusat (CPU).
- Unit Pemrosesan Grafis (GPU).
- Motherboard.
- Unit penyimpanan (hard drive dan SSD).
- Perlengkapan jaringan dengan router dan sakelar.
- Kartu jaringan dan akselerator.
- Infrastruktur pendingin dan listrik.
Lapisan infrastruktur juga mencakup perangkat lunak yang diperlukan untuk menjalankan dan mengelola semua perangkat keras.
Hypervisor
Hypervisor adalah perangkat lunak yang membuat dan menjalankan mesin virtual. Hypervisor mengalokasikan sumber daya dari satu perangkat (CPU, memori, penyimpanan, dll.) dan memungkinkan beberapa mesin virtual dengan OS terpisah untuk berjalan di perangkat yang sama.
Virtualisasi yang disediakan oleh hypervisor meningkatkan efisiensi server, penyimpanan, dan jaringan di cloud multi-penyewa. Namun, komponen ini dapat memengaruhi kinerja secara keseluruhan jika perangkat host memiliki terlalu banyak VM.
Perangkat Lunak Manajemen
Perangkat lunak manajemen arsitektur komputasi awan memastikan bahwa semua operasi dan program berjalan lancar dan efisien. Beberapa tugas yang dilakukan sistem ini adalah:
- Audit keamanan dan kepatuhan.
- Pemantauan kinerja dan kapasitas.
- Pelacakan penggunaan.
- Penerapan aplikasi baru.
- Integrasi data.
- Manajemen pemulihan bencana.
Perangkat lunak manajemen juga mencakup program dan alat untuk otomatisasi. Otomatisasi adalah nilai inti cloud dan salah satu nilai jual utama teknologi. Dalam arsitektur komputasi awan, alat otomatisasi memiliki tiga tugas penting:
- Meningkatkan atau menurunkan skala untuk memenuhi kebutuhan penggunaan atau lalu lintas.
- Pastikan tata kelola di seluruh lingkungan cloud.
- Bereaksi terhadap peristiwa dengan mengikuti instruksi dari ambang batas atau kebijakan cloud yang telah ditentukan sebelumnya.
Lapisan Keamanan
Lapisan keamanan adalah aspek penting dari arsitektur cloud. Karena sebagian besar awan tingkat penyedia adalah lingkungan multi-penyewa yang berisiko tinggi, vendor biasanya mengandalkan berbagai teknik untuk memastikan keamanan komputasi awan, seperti:
- Cadangan data reguler yang tidak dapat diubah.
- Enkripsi data (dalam keadaan diam, bergerak, dan sedang digunakan)
- Alat debug kelas atas.
- Firewall virtual (baik untuk seluruh penyiapan dan penyewa di antara keduanya).
- Prinsip keamanan tanpa kepercayaan.
- Otentikasi multifaktor dan sandi yang kuat.
- Sistem deteksi penyusupan (IDSes).
- Perangkat lunak anti-malware dan virus.
- Pencegahan perangkat lunak perusak.
Praktik Terbaik Arsitektur Cloud Computing
Tidak ada cara tunggal untuk membangun arsitektur komputasi awan yang efisien, tetapi beberapa pedoman berlaku untuk setiap desain. Berikut adalah praktik terbaik yang harus Anda pertimbangkan saat merancang arsitektur baru atau mengadaptasi arsitektur yang sudah ada:
- Ambil pendekatan yang mengutamakan keamanan: Saat membuat arsitektur, tim keamanan atau SecOps Anda harus menanamkan perlindungan ke dalam desain sejak awal. Semakin kuat sistem keamanan di awal, semakin sedikit risiko yang akan Anda hadapi dengan kebocoran dan pelanggaran data saat Anda mengembangkan lingkungan.
- Rencanakan lonjakan penggunaan: Cobalah untuk memperkirakan dan memahami bagaimana pengaturan akan berperilaku selama beban kerja reguler dan puncak. Pastikan arsitektur berperforma baik dalam skenario apa pun dan siapkan mekanisme optimal untuk penskalaan.
- Jangan ambil risiko dengan keamanan siber: Selain merencanakan keamanan sejak awal, Anda juga harus melindungi arsitektur Anda dengan semua tindakan keamanan siber yang tersedia. Temukan penyedia yang menawarkan enkripsi data, manajemen patch reguler, perlindungan endpoint, pemulihan bencana cloud, dan kebijakan yang kuat.
- Menyiapkan pemantauan berkelanjutan: Memantau lingkungan secara terus-menerus dengan alat seperti Nagios untuk masalah kinerja dan penggunaan menciptakan pola berwawasan yang membantu mengoptimalkan penyiapan.
- Mengoptimalkan dan memangkas biaya: Manfaatkan proses otomatis dan pelacakan pemanfaatan untuk menghilangkan pengeluaran yang tidak perlu dan memastikan Anda tidak menghabiskan terlalu banyak sumber daya.
Siap Keluar dari Perangkat Keras Lokal?
Konsep arsitektur komputasi awan tetap tidak jelas bagi banyak manajer dan tim. Memberikan artikel ini kepada anggota staf non-teknis akan membantu mengungkap misteri cloud dan membawa bisnis Anda selangkah lebih dekat ke migrasi cloud.