Jumat, 15 April 2016

FILE SERVICE TERDISTRIBUSI


FILE SERVICE TERDISTRIBUSI

A.    Pengertian File Service Terdistribusi
File Sistem Terdistribusi ( Distributed File System , disingkat) adalah file sistem yang mendukung sharing files dan resources dalam bentuk penyimpanan persistent di sebuah network. File server pertama kali didevelop pada tahun 1970 dan Sun NFS (Network File System) menjadi DFS pertama yang banyak digunakan setelah awal pemunculannya di tahun 1985. DFS yang terkenal selain NFS adalah AFS (Andrew File System) dan CIFS (Common Internet File System).
Sebuah file server menyediakan file service ke client. Dari sisi client terdapat interface untuk file service dalam hal operasi primitif file, seperti membuat file (create), menghapus (delete) dan read / write file. Komponen perangkat keras utama yang mana file server mengontrolnya adalah sebuah local storage (umumnya disk drive / HDD). Ditempat itulah file-file tersimpan dan dari tempat tersebut request client meretrive file. Pada DFS client, server dan juga perangkat penyimpanan merupakan mesin terpisah dalam sebuah lingkungan terdistribusi (Intranet).
B.    Layanan File Terdistribusi

1.    Layanan Dasar
•    Tempat penyimpanan tetap untuk data dan program.
•    Operasi terhadap file (create, open, read,…).
•    Multiple remote clients (dalam intranet).
•    File sharing.
•    Menggunakan semantic one-copy update umum, melalui RPC.
2.    Perkembangan baru
•    Persistent object stores (storage of objects)
3.    Persistent Java, Corba, …
•    Replikasi, caching keseluruhan file.
•    Multimedia terdistribusi (contoh: file server Tiger video).

C.    Keperluan Sistem File Terdistribusi

1.    Transpansi
File service biasanya merupakan service yang harus di‐load paling berat dalam sebuah intranet, sehingga fungsionalitas dan performance‐nya sangat penting.
•    Transparansi akses
•    Transparansi lokasi
•    Transparansi mobilitas
•    Transparansi performance
•    Transparansi pengukuran

2.    Update file konkuren
Perubahan pada sebuah file oleh seorang klien seharusnya tidak menganggu operasi dari klien lain yang pada saat bersamaan mengakses atau mengubah file yang sama.

3.    Replikasi file
Beberapa file service mendukung penuh replikasi, tetapi kebanyakan mendukung caching file atau portion file secara lokal, bentuk replikasi yang terbatas.

4.    Ke‐heterogen‐an sistem operasi dan hardware
Antarmuka service sebaiknya didefinisikan sehingga software klien dan server dapat diimplementasikan untuk sistem operasi dan komputer yang berbeda.

5.    Toleransi kesalahan
Server bisa menjadi stateless, sehingga dapat di‐restart dan service di‐restore kembali setelah mengalami failure tanpa perlu me‐recover state sebelumnya.

6.    Konsistensi
Ketika file‐file direplikasi atau di‐cache pada site yang berbeda, ada delay yang tak bisadihindari pada propagasi modifikasi dari satu site ke set lain yangmembawa copy, danini bisa menghasilkan beberapa deviasi dari one‐copy semantic.

7.    Keamanan
Secara virtual, semua sistem file menyediakan mekanisme kontrol akses berdasarkankegunaan dari daftar kontrol akses.

8.    Efisiensi
File service terdistribusi sebaiknya menawarkan fasilitas yang paling tidak, samabagusnya dengan yang ditemukan pada sistem file konvensional, dan sebaiknyamendapat level performance yang dapat diperhitungkan.

D.    Opsi Perancangan Layanan File

1.    Stateful
•    Server menyimpan informasi tentang file yang open, posisi sekarang(current position) dan file locks.
•    Open (dibuka) sebelum access dan kemudian ditutup.
•    Performa yang lebih baik.
•    Pesan yang lebih pendek, dimungkinkan untuk read-ahead.
•    Server failure.
•    Kehilangan state.
•    Client failure.
•    Tables fill up.
•    Menyediakan file locks.

2.    Stateless
•    Server tidak menyimpan state informasi.
•    File operations idempotent, harus mengandung semua yang diperlukan (longer message).
•    Perancangan file server yang lebih simpel.
•    Dapat dengan mudah di-recovery apabila client ataupun server crash.
•    Locking membutuhkan extra lock server untuk mempertahankan.


E.     File Service Architecture

Pembagian tanggung jawab antar modul didefinisikan sebagai berikut ini :

·         Layanan file flat

Layanan file flat berkonsentrasi pada pengimplementasian operasi dari konten suatu file.

·         Layanan direktori

Layanan direktori menyediakan pemetaan antara nama teks untuk file dan UFIDnya.

·         Modul klien

Modul klien berjalan pada tiap komputer klien, mengintegrasi dan mengextend operasidari layanan file flat dan layanan direktori dibawah antarmukapemrograman aplikasitunggal yang bisa digunakan oleh program tingkat pengguna di komputer klien.

·         Antarmuka layanan file flat

Merupakan antarmuka RPC yang digunakan oleh modul klien. Tidak digunakan secara langsung oleh program tingkat pengguna.

      F.     Komponen File Service

a.       Komponen-komponen file service adalah terdiri dari:
·         File Service
Pengoperasian dari masing-masing file.

·         Directory Service
Management atau pengaturan direktori.

·         Naming Service

b.      Location Independence:
File dapat dipindahkan tanpa penggantian nama

c.       Hal yang umum untuk penamaan file dan directori:
·         Mesin +  nama path e.g/ machine / path atau machine : path.

·         Mounting File sistem secara remote kedalam hirarki local file.

·         Single name space yang sama pada semu amesin.

d.      Dua level penamaan:
Nama simbolik yang dilihat user dan nama binary yang dilihat oleh sistem.

G.    Interface Service

Interface service adalah metode standard komunikasi yang dapat dipakai oleh siapapun tanpa membedakan vendornya. Interface Service merupakan titik point yang konsumen gunakan untuk mengakses fungsionalitas yang diarahkan oleh aplikasi. Interface Service biasanya menggunakan alamat jaringan, yang berarti bahwa ia dapat  di akses oleh konsumen lebih dari beberapa macam komunikasi jarigan. Alamat jaringan dapat  terkenal lokasinya atau ia dapat terkandung dari direktori service seperti UDDI.
Sebuah kunci aspek dari desain service interface untuk memisahkan implementasi yang dibutuhkan untuk mengkomunikasikan dengan system lain dari aplikasi logika bisnis. Interface Service menyediakan interface yang jauh lebih kasar sambil menjaga semantik dan rincian lebih halus dari logika aplikasi. Hal ini juga memberikan penghalang yang memungkinkan logika aplikasi dapat berubah tanpa mempengaruhi interface konsumen.
Interface Service mengimplementasikan kontrak antara konsumen dan penyedia. Kontrak ini memungkinkan mereka untuk bertukar informasi bahkan jika mereka berada di sistem yang berbeda. Interface Service bertanggung jawab untuk semua rincian pelaksanaan yang dibutuhkan untuk melakukan komunikasi ini. Rincian tersebut termasuk tetapi tidak terbatas pada:
·         Network protocol.
Interface Service harus merangkum semua aspek dari network protocol yang digunakan untuk komunikasi antara konsumen dan pelayanan. Sebagai contoh, anggaplah layanan terkena konsumen melalui HTTP melalui jaringan TCP/IP. Anda dapat menerapkan Interface Service sebagai komponen ASP.NET diterbitkan ke URL terkenal. Komponen ASP.NET menerima permintaan HTTP, ekstrak informasi yang dibutuhkan oleh layanan untuk memproses permintaan tersebut, memanggil implementasi layanan, paket respon layanan, dan mengirim respon kembali ke konsumen sebagai respon HTTP. 
Dari perspektif layanan, satu-satunya komponen yang memahami HTTP adalah antarmuka layanan. Pelaksanaan layanan memiliki kontrak sendiri dengan antarmuka layanan dan seharusnya tidak memiliki ketergantungan pada spesifikasi teknologi yang digunakan konsumen untuk berkomunikasi dengan antarmuka layanan.

·         Data formats
Menerjemahkan Interface Service konsumen antara format data dan format data yang mengharapkan layanan. Sebagai contoh, konsumen eksternal untuk perusahaan dapat menyediakan data dan mengharapkan data yg berada dalam format XML yang sesuai dengan skema standar industri XML.
Konsumen internal untuk perusahaan mungkin ingin menggunakan format XML dioptimalkan untuk layanan tertentu. Interface Service bertanggung jawab untuk mengubah dan pemetaan kedua format data dalam format yang dapat menggunakan layanan ini. Pelaksanaan pelayanan tidak memiliki pengetahuan tentang format data spesifik Interface Service mungkin gunakan untuk berkomunikasi dengan konsumen.

·         Security
Interface Service harus dipertimbangkan batas kepercayaan sendiri. Konsumen yang berbeda mungkin memiliki persyaratan keamanan yang berbeda, jadi terserah untuk Interface Service untuk melaksanakan konsumen spesifik persyaratan. Misalnya, konsumen eksternal untuk perusahaan umumnya akan memiliki persyaratan keamanan yang lebih ketat daripada konsumen internal untuk perusahaan. 
Konsumen eksternal mungkin memiliki persyaratan otentikasi kuat dan hanya dapat diberi kewenangan untuk melakukan subset yang sangat terbatas dari operasi yang berwenang untuk konsumen internal. Konsumen internal dapat dipercaya secara implisit untuk kebanyakan operasi dan hanya membutuhkan otorisasi untuk operasi yang paling sensitif.

·         Service level agreements
Interface Service memiliki peran signifikan dalam memastikan bahwa pelayanan memenuhi komitmen tingkat layanan untuk satu set khusus konsumen. Interface Service dapat mengimplementasikan caching untuk meningkatkan waktu respon dan mengurangi konsumsi bandwidth. Beberapa contoh dari Interface Service dapat digunakan di satu set beban-seimbang node pengolahan untuk mencapai skalabilitas, ketersediaan, dan kesalahan-toleransi persyaratan.

Referensi:


Selasa, 12 April 2016

Cloud Computing

Cloud Computing (Komputasi awan) adalah gabungan pemanfaatan teknologi komputer (komputasi) dan pengembangan berbasis Internet (awan).
Awan (cloud) adalah metefora dari internet, sebagaimana awan yang sering digambarkan di diagram jaringan komputer. Komputasi awan (Cloud Computing) adalah suatu konsep umum tren teknologi terbaru lain yang dikenal luas mencakup SaaS, Web 2.0 dengan tema umum berupa ketergantungan terhadap Internet untuk memberikan kebutuhan komputasi pengguna. Sebagai contoh, Google Apps menyediakan aplikasi bisnis umum secara daring yang diakses melalui suatu penjelajah web dengan perangkat lunak dan data yang tersimpan di server.Cloud computing pada dasarnya adalah menggunakan Internet-based service untuk men-support business process.

Internet Computing / Cloud Computing adalah suatu paradigma dimana informasi secara permanen tersimpan di server internet dan tersimpan secara sementara di komputer pengguna (client) termasuk di dalamnya adalah desktop, komputer tablet, notebook, handheld, sensor-sensor, monitor dan lain-lain. Gartner mendefinisikannya sebagai “sebuah cara komputasi ketika layanan berbasis TI yang mudah dikembangkan dan lentur disediakan sebagai sebuah layanan untuk pelanggan menggunakan teknologi Internet.”Forester mendefinisikannya sebagai “standar kemampuan TI, seperti perangkat lunak, platform aplikasi, atau infrastruktur, yang disediakan menggunakan teknologi Internet dengan cara swalayan dan bayar-per-pemakaian.”

Cloud computing bisa dianggap sebagai perluasan dari virtualisasi. Perusahaan bisa menempatkan aplikasi atau sistem yang digunakan di internet, tidak mengelolanya secara internal. Contoh cloud computing untuk versi public adalah layanan-layanan milik Google seperti Google Docs dan Google Spreadsheet. Adanya kedua layanan tersebut meniadakan kebutuhan suatu aplikasi office untuk pengolah kata dan aplikasi spreadsheet di internal perusahaan. Contoh cloud computing untuk keperluan non public adalah Amazon EC2 ( Amazon Elastic Compute Cloud ). Amazon menyediakan komputer induk, kita bisa mengirim dan menggunakan sistem virtual dan menggunakannya dalam jangka waktu dan biaya sewa tertentu.

Virtualisasi bisa diartikan sebagai pembuatan suatu bentuk dari sesuatu yang bersifat fisik menjadi sesuatu bersifat virtual, misalnya sistem operasi, perangkat storage/penyimpanan data atau sumber daya jaringan

Keuntungan Virtualisasi & Cloud Computing


  1. Pengurangan Biaya Investasi Hardware. Investasi hardware dapat ditekan lebih rendah karena virtualisasi hanya mendayagunakan kapasitas yang sudah ada. Tak perlu ada penambahan perangkat komputer, server dan pheriperal secara fisik. Kalaupun ada penambahan kapasitas harddisk dan memori, itu lebih ditujukan untuk mendukung stabilitas kerja komputer induk, yang jika dihitung secara finansial, masih jauh lebih hemat dibandingkan investasi hardware baru.
  2. Kemudahan Backup & Recovery. Server-server yang dijalankan didalam sebuah mesin virtual dapat disimpan dalam 1 buah image yang berisi seluruh konfigurasi sistem. Jika satu saat server tersebut crash, kita tidak       perlu melakukan instalasi dan konfigurasi ulang. Cukup mengambil salinan image yang sudah disimpan, merestore data hasil backup terakhir dan server berjalan seperti sedia kala. Hemat waktu, tenaga dan sumber daya.
  3. Kemudahan Deployment. Server virtual dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin       lain dengan mengubah sedikit konfigurasi. Mengurangi beban kerja para staff IT dan mempercepat proses implementasi suatu sistem
  4. Mengurangi Panas. Berkurangnya jumlah perangkat otomatis mengurangi panasnya ruang server/data center. Ini akan berimbas pada pengurangan biaya pendinginan/AC dan pada akhirnya mengurangi biaya penggunaan listrik
  5. Mengurangi Biaya Space. Semakin sedikit jumlah server berarti semakin sedikit pula ruang untuk menyimpan perangkat. Jika server ditempatkan pada suatu co-location server/data center, ini akan berimbas pada pengurangan biaya sewa.
  6. Kemudahan Maintenance & Pengelolaan. Jumlah server yang lebih sedikit otomatis akan mengurangi waktu dan biaya untuk mengelola. Jumlah server yang lebih sedikit juga berarti lebih sedikit jumlah server yang harus ditangani.
  7. Standarisasi Hardware. Virtualisasi melakukan emulasi dan enkapsulasi hardware sehingga proses       pengenalan dan pemindahan suatu spesifikasi hardware tertentu tidak menjadi masalah. Sistem tidak perlu melakukan deteksi ulang hardware sebagaimana instalasi pada sistem/komputer fisik
  8. Kemudahan Replacement. Proses penggantian dan upgrade spesifikasi server lebih mudah dilakukan. Jika       server induk sudah overload dan spesifikasinya tidak mencukupi lagi, kita bisa dengan mudah melakukan upgrade spesifikasi atau memindahkan virtual machine ke server lain yang lebih powerful.
Kerugian Penggunaan Virtualisasi


  1. Satu Pusat Masalah. Virtualisasi bisa dianalogikan dengan menempatkan semua telur didalam 1 keranjang. Ini artinya jika server induk bermasalah, semua sistem virtual machine didalamnya tidak bisa digunakan. Hal ini bisa diantisipasi dengan menyediakan fasilitas backup secara otomatis dan periodik atau dengan menerapkan prinsip fail over/clustering.
  2. Spesifikasi Hardware. Virtualisasi membutuhkan spesifikasi server yang lebih tinggi untuk menjalankan server induk dan mesin virtual didalamnya.
  3. Satu Pusat Serangan. Penempatan semua server dalam satu komputer akan menjadikannya sebagai target serangan. Jika hacker mampu menerobos masuk kedalam sistem induk, ada kemungkinan ia mampu menyusup kedalam server-server virtual dengan cara menggunakan informasi yang ada pada server induk .

daftar pustaka
tyasonyoyy.wordpress.com/2015/03/26/cloud-computing
mebiso.com/transformasi-bisnis-it-ke-arah-virtualisasi
kitatkj2.blogspot.co.id/2014/05/pengertian-virtualisasi.html
www.excellent.co.id/product-services/vmware/keuntungan-teknologi-virtualisasi-cloud-computing