SERVICE APPLICATION
SERVICE APPLICATION
CONTAINER
Container adalah sebuah virtualisasi OS yang
dapat membungkus suatu aplikasi beserta dependency dan environment-nya. Setiap container ini memiliki process yang terisolir sehingga tidak
mengganggu host OS ataupun container yang lain. Prinsip container ini mirip dengan kontainer yang ada di kapal kargo di
mana kapal kargo tersebut diibaratkan sebagai sistem komputer
Keunggulan
Container
- Fleksibel dan scalable
- Mengurangi resource yang dibutuhkan dalam IT Management
- Waktu yang dibutuhkan untuk mengemas dan memasang app dalam container lebih cepat bila dibandingkan dengan VM
DOCKER
Docker adalah platform
perangkat lunak yang memungkinkan untuk membuat, menguji, dan menerapkan
aplikasi dengan cepat. Docker mengemas perangkat lunak ke dalam unit standar
yang disebut container yang memiliki semua yang diperlukan perangkat lunak agar
dapat berfungsi termasuk pustaka, alat sistem, kode, dan waktu proses. Dengan
menggunakan Docker, Kita dapat dengan cepat menerapkan dan menskalakan aplikasi
ke lingkungan apa pun dan yakin bahwa kode akan berjalan.
Kelebihan Docker
- Portabilitas – docker memungkinkan user membuat atau
menginstal aplikasi kompleks di perangkat, dan aplikasi tersebut dijamin
bisa berjalan. Docker container memiliki semua yang dibutuhkan aplikasi,
hanya dengan sedikit atau bahkan tanpa input dari user.
- Automasi – dengan bantuan cron job dan Docker container,
user bisa mengotomatiskan pekerjaan dengan mudah. Automasi membantu
developer menghindari tugas yang membosankan dan repetitif, serta
menghemat waktu.
- Komunitas – Docker memiliki channel Slack khusus,
forum komunitas, dan ribuan kontributor di website developer seperti
StackOverflow. Terlebih lagi, ada lebih dari 9 juta image container yang
dihosting di Docker Hub.
PODMAN
Podman adalah container engine yang lengkap untuk menjalankan, mengelola,
dan men-debug container yang mematuhi standar Open Container Initiative
(OCI). Dengan Podman, para developer dapat mengelola container tanpa menggunakan daemon. Podman juga memiliki command-line interface (CLI) yang kompatibel dengan docker serta
pengintegrasian yang lebih baik dengan systemd. Podman memudahkan para developer untuk mencari, menjalankan, dan membagikan container.
KUBERNETES
Kubernetes adalah platform open source untuk
mengelola kumpulan kontainer dalam suatu cluster server. Platform ini pertama
kali dikembangkan oleh Google dan kini dikelola oleh Cloud Native Computing
Foundation (CNCF) sebagai platform manajemen kontainer yang cukup populer.
1. Service Discovery dan Load Balancing
Fitur service discovery memudahkan untuk melacak
kontainer dengan otomatis. Hal ini tentu sangat penting di dalam mengembangkan
aplikasi microservices. Kubernetes dapat mengenali sebuah service berdasar DNS
atau IP address server tersebut.
2. Storage Orchestration
Kubernetes memungkinkan Anda melakukan mount pada
media penyimpanan (storage) seperti, storage lokal atau yang berbasis cloud
seperti AWS dan lainnya.
3. Automated Rollouts and Rollbacks
Fitur automated rollouts dan rollback sangat penting
untuk membantu terkait deployment. Pada Kubernetes, deployment bisa menggunakan
file YAML yang di dalamnya nanti akan berisi ReplicaSet.
4. Automatic Bin Packing
Menggunakan fitur Automatic Bin Packing, dapat mengatur kapasitas CPU dan sumber daya tiap kontainer secara spesifik. Jadi saat limit kapasitas sudah ditentukan, aplikasi terhindar dari berebut sumber daya. Selain itu, sumber daya jadi lebih hemat.
OPENSHIFT
OpenShit ini berfungsi dan diciptakan untuk para konsumen yang melakukan
develop serta menjalakan aplikasi berbasis container agar dapat melakukan
penggunaan tersebut diterapkan di infrastruktur manapun. Baik itu cloud,
on-premise, atau edge. Sehingga hal ini salah satunya juga dapat membantu para
konsumen untuk membuat Hybrid Cloud ataupun Hybrid Infrastructure.
Dengan adanya OpenShift, aplikasi yang menggunakan container tersebut
dapat di-expand dengan mudah, dari hanya beberapa mesin, bisa menjadi sampai
ribuan mesin dan dapat melayani jutaan dari kliennya.
ELASTICSEARCH
Elasticsearch adalah
mesin pencari dan analitik sumber terbuka (open source) dengan
sistem terdistribusi yang memiliki kemampuan pencarian dan analitik real
time.
Elasticsearch
memungkinkan pengguna untuk mengeksplorasi data dengan kecepatan dan skala yang
belum pernah dicapai sebelumnya. Pemanfaatan Elasticsearch meliputi
pencarian full-text (full-text search), pencarian
terstruktur (structured search), analitik, dan kombinasi dari ketiganya
GRAFANA
Grafana merupakan
aplikasi open-source untuk memonitor dan menganalisa metrics. Kita menggunakan
Grafana untuk memvisualisasikan metrics menjadi grafik-grafik yang menarik
untuk dilihat dan mudah dimengerti. Grafana memiliki banyak fitur yang powerful
untuk memonitor dan menganalisa. Grafana juga memiliki fitur alerting yang
sangat berguna.
Grafana banyak sekali digunakan untuk melakukan analisis data dan monitoring salah satu keuntungan dari penggunaan grafana adalah grafana tidak akan mengalirkan data ke cloud vendor untuk alasan keamanan dan lainya.
ANSIBLE
Ansible merupakan salah
satu automation tool dan infrastructure as a code yang tersedia secara open source.
Dengan Ansible kita dapat melakukan provisioning (semacam membuat/menghapus)
server, configuration management, dan melakukan deployment aplikasi pada
server.
Komentar
Posting Komentar