TUGAS 7 PPL
KOMPONEN DESAIN SISTEM
Bapak Fajar Baskoro, S.Kom., M.T.
Load balancer adalah sebuah perangkat lunak atau perangkat keras yang digunakan dalam jaringan komputer untuk mendistribusikan lalu lintas jaringan secara merata di antara beberapa server backend. Tujuannya adalah untuk mencegah satu server tertentu menjadi titik bottleneck yang memperlambat kinerja keseluruhan sistem. Load balancer secara otomatis menangani distribusi beban kerja dengan mengarahkan permintaan dari klien ke server-server backend yang tersedia, memastikan bahwa setiap server menerima jumlah kerja yang seimbang. Ini membantu meningkatkan ketersediaan, keandalan, dan kinerja aplikasi atau situs web dengan memastikan bahwa tidak ada satu server pun yang terbebani terlalu berat. Topologi atau arsitektur dari load balancer di jaringan dapat bervariasi tergantung pada kebutuhan spesifik dari aplikasi dan lingkungan jaringan. Berikut adalah beberapa konsep dan penjelasan tentang Layer 4 dan Layer 7 Load Balancers, serta penerapan global load balancing dan application load balancing.
Layer 4 Load Balancers
Layer 4 load balancers beroperasi pada layer transport di model OSI (Open Systems Interconnection), yang berarti mereka bekerja dengan protokol seperti TCP (Transmission Control Protocol) dan UDP (User Datagram Protocol). Beberapa karakteristik dari Layer 4 Load Balancers adalah :
- Transparansi : Load balancers pada layer ini tidak mengubah paket data. Mereka meneruskan paket dari client ke server tanpa memodifikasi konten.
- Skalabilitas : Mereka dapat menangani trafik dalam jumlah besar karena operasional mereka dilakukan pada layer yang lebih rendah, dengan overhead yang lebih sedikit.
- Kecepatan : Mereka biasanya lebih cepat karena mereka hanya memeriksa header dari paket data.
Layer 7 Load Balancers
Layer 7 load balancers beroperasi pada layer aplikasi di model OSI, yang berarti mereka bekerja dengan protokol seperti HTTP/HTTPS, FTP, dan lain-lain. Beberapa karakteristik dari Layer 7 Load Balancers adalah :
- Kecerdasan : Mereka dapat memeriksa isi dari paket data, memungkinkan routing yang lebih cerdas berdasarkan konten permintaan.
- Fleksibilitas : Dapat melakukan tindakan seperti SSL termination, kompresi, caching, dan lain-lain.
- Manajemen : Dapat digunakan untuk autentikasi dan autorisasi pengguna, serta manajemen sesi.
Global Load Balancing
Global load balancing mendistribusikan trafik ke berbagai data center yang tersebar di berbagai lokasi geografis. Ini biasanya dilakukan untuk menyediakan layanan yang tinggi ketersediaannya dan respons yang lebih cepat kepada pengguna di berbagai lokasi. Beberapa metode global load balancing termasuk Anycast routing, GeoDNS, dan menggunakan Content Delivery Network (CDN). Beberapa karakteristik dari Global Load Balancing :
- Peningkatan Kecepatan: GSLB mengarahkan pengguna ke server terdekat, sehingga mengurangi latensi dan meningkatkan kecepatan loading halaman web.
- Peningkatan Ketersediaan: GSLB memastikan aplikasi web tetap tersedia dengan mendistribusikan trafik ke server yang aktif dan mengalihkan trafik dari server yang mengalami masalah.
- Peningkatan Keamanan: GSLB dapat membantu melindungi aplikasi web dari serangan DDoS dengan mendistribusikan trafik ke berbagai server dan memblokir alamat IP yang mencurigakan.
- Pemanfaatan Sumber Daya: GSLB membantu memastikan sumber daya server digunakan secara efisien dengan mendistribusikan trafik secara merata.
- Skalabilitas: GSLB dapat dikonfigurasi untuk menangani beban trafik yang tinggi, sehingga Anda dapat dengan mudah menambahkan server baru saat dibutuhkan.
Application Load Balancing di Indonesia
Dalam konteks Indonesia, application load balancing sangat penting mengingat banyaknya pengguna internet dan variasi geografis. Penyedia layanan cloud besar seperti Amazon Web Services (AWS), Google Cloud Platform (GCP), dan Microsoft Azure memiliki infrastruktur di wilayah Asia Tenggara, yang meliputi Indonesia. Selain itu, ada penyedia lokal seperti Telkom Indonesia yang juga menawarkan layanan load balancing. Berikut merupakan beberapa hal yang ada di dalam gambar :
Komponen Utama
- VPC (Virtual Private Cloud): VPC adalah jaringan virtual yang terisolasi di cloud AWS. VPC memungkinkan Anda untuk mengontrol akses ke sumber daya cloud Anda.
- Subnet: Subnet adalah bagian dari VPC yang digunakan untuk mengelompokkan sumber daya cloud Anda. Anda dapat membuat subnet publik dan subnet privat.
- Server: Server adalah komputer virtual yang dijalankan di cloud AWS. Server dapat digunakan untuk berbagai aplikasi, seperti web server, database server, dan aplikasi microservices.
- Auto Scaling Group: Auto Scaling Group adalah layanan AWS yang secara otomatis menambah atau mengurangi jumlah server berdasarkan beban trafik.
- Load Balancer: Load Balancer adalah layanan AWS yang mendistribusikan trafik ke berbagai server. Load Balancer membantu memastikan aplikasi web Anda tetap responsif dan stabil.
Arsitektur Jaringan
- Public Subnet: Public subnet memungkinkan akses internet ke server. Server di public subnet dapat diakses oleh pengguna internet.
- Private Subnet: Private subnet tidak memungkinkan akses internet langsung. Server di private subnet hanya dapat diakses oleh server lain di VPC.
- Availability Zone: Availability Zone adalah kumpulan pusat data AWS di wilayah geografis tertentu. Server di Availability Zone yang berbeda dapat saling berkomunikasi dengan cepat.
Manfaat Arsitektur Ini
- Skalabilitas: Arsitektur ini dapat dengan mudah diskalakan untuk menangani beban trafik yang tinggi.
- Ketersediaan: Arsitektur ini memastikan aplikasi web Anda tetap tersedia bahkan jika salah satu server mengalami masalah.
- Keamanan: Arsitektur ini membantu melindungi aplikasi web Anda dari serangan DDoS.
- Performa: Arsitektur ini membantu meningkatkan performa aplikasi web Anda dengan mendistribusikan trafik ke berbagai server.
Komentar
Posting Komentar