Layanan cloud yang diselenggarakan oleh Amazon Web Services , Azure , Google , dan sebagian besar lainnya menerbitkan S ervice L evel A greement , atau SLA, untuk layanan individual yang mereka sediakan. Arsitek, Insinyur Platform dan Pengembang kemudian bertanggung jawab untuk menyatukan ini untuk membuat arsitektur yang menyediakan hosting untuk suatu aplikasi.
Diambil dalam isolasi, layanan ini biasanya menyediakan sesuatu dalam kisaran tiga hingga empat dari ketersediaan:
- Manajer Lalu Lintas Azure: 99,99% atau 'empat sembilan'.
- SQL Azure: 99,99% atau 'empat sembilan'.
- Layanan Aplikasi Azure: 99,95% atau 'tiga sembilan lima'.
Namun ketika digabungkan bersama dalam arsitektur ada kemungkinan bahwa salah satu komponen dapat mengalami pemadaman yang mengakibatkan ketersediaan keseluruhan yang tidak sama dengan layanan komponen.
Ketersediaan Senyawa Seri
Dalam contoh ini ada tiga mode kegagalan yang mungkin:
- SQL Azure sedang down
- Layanan Aplikasi sedang down
- Keduanya jatuh
Oleh karena itu keseluruhan ketersediaan "sistem" ini harus lebih rendah dari 99,95%. Alasan saya untuk berpikir ini adalah jika SLA untuk kedua layanan adalah:
Layanan ini akan tersedia 23 jam dari 24
Kemudian:
- Layanan Aplikasi bisa keluar antara 0100 dan 0200
- Database keluar antara 0500 dan 0600
Kedua bagian komponen berada dalam SLA mereka tetapi sistem total tidak tersedia selama 2 jam dari 24.
Ketersediaan Serial dan Paralel
Namun dalam arsitektur ini ada sejumlah besar mode kegagalan terutama:
- SQL Server di RegionA sedang down
- SQL Server di RegionB sedang down
- Layanan Aplikasi di RegionA turun
- Layanan Aplikasi di RegionB turun
- Manajer Lalu Lintas sedang down
- Kombinasi di atas
Karena Traffic Manager adalah pemutus sirkuit, ia mampu mendeteksi pemadaman di kedua wilayah dan merutekan lalu lintas ke wilayah kerja, namun masih ada satu titik kegagalan dalam bentuk Traffic Manager sehingga total ketersediaan "sistem" tidak dapat lebih tinggi dari 99,99%.
Bagaimana ketersediaan majemuk dari dua sistem di atas dapat dihitung dan didokumentasikan untuk bisnis, yang berpotensi membutuhkan pengerjaan ulang arsitektur jika bisnis menginginkan tingkat layanan yang lebih tinggi daripada yang mampu diberikan oleh arsitektur?
Jika Anda ingin membuat anotasi diagram, saya telah membuatnya di Lucid Chart dan membuat tautan multi guna, ingatlah bahwa siapa pun dapat mengedit ini sehingga Anda mungkin ingin membuat salinan halaman untuk memberi anotasi.
sumber
Jawaban:
Saya menganggap itu sebagai masalah matematika dengan SLA yang kemungkinan OK.
Dalam hal ini kita bisa mengandalkan aturan probabilitas untuk mendapatkan keseluruhan.
Untuk kasus pertama Anda, probabilitas bahwa Layanan Aplikasi (A) dan Layanan Sql (B) turun pada saat yang sama adalah produk dari probabilitas mereka:
Probabilitas salah satu dari mereka turun adalah jumlah dari probabilitas mereka:
Ketika dua peristiwa independen, rumus yang dihasilkan untuk memperhitungkan kemungkinan keduanya turun adalah:
Jadi SLA keseluruhan akan
1 - 0,00099975 = 0,99900025
dalam persen adalah99.900025 %
Sebuah penyederhanaan adalah produk dari probabilitas pertama:
0.9995 * 0.9995 = 0,99900025
.Diterapkan untuk pemadaman 1 jam / 24 jam Anda (4,166666% sehari) ini memberi (desimal disingkat):
Jadi probabilitas menjadi OK adalah
1 - 0.0816 = 0.9184
dalam persen:91,84%
Ini kurang dari kasus terburuk 2 jam karena ada kemungkinan keduanya turun pada saat yang sama.
Dengan mengingat hal itu, Anda mungkin memperhatikan ketersediaan untuk masing-masing
95,84%
dan0,958333333 * 0,958333333 = 0,918402778
yang kami91.84%
dari atas (maaf untuk desimal penuh di sini, tetapi mereka diperlukan untuk demonstrasi)Sekarang untuk kasus kedua Anda, kami akan mulai mendapatkan dari kemungkinan gabungan kami untuk setiap wilayah (Maaf saya menolak perubahan untuk SQL agar tetap masuk akal), dengan asumsi tidak ada probabilitas independen untuk wilayah itu sendiri dan bahwa setiap wilayah terisolasi dan dengan demikian kegagalan DB hanya mengambil wilayahnya.
Kami memiliki probabilitas OK lalu lintas manajer
P(T) = 0.9999
dan setiap pasangan aplikasi + DB dengan probabilitas OKP(G) = 0,99900025
dariBerapa banyak wilayah yang kita miliki perannya karena kita harus menerapkan produk dari probabilitas kegagalan hanya untuk mendapatkan probabilitas kedua wilayah itu turun sebagai waktu yang sama:
0,00099975 * 0,00099975 = 0,0000009995000625
yang berarti ketersediaan keseluruhan setidaknya satu wilayah99,049375 %
Sekarang kami memiliki ketersediaan wilayah secara keseluruhan, produk dengan manajer lalu lintas memberi kami ketersediaan keseluruhan sistem:
Ketersediaan keseluruhan adalah
99.989900 %
Sumber lain sebagai penjelasan tersedia di dokumen Azure (tautan dari Raj Rao )
sumber
Setelah membaca jawaban Tensibai yang luar biasa , saya menyadari bahwa saya dulu dapat menghitung ini untuk keperluan analisis jaringan. Saya menggali salinan Fundamental Jaringan Ketersediaan Tinggi oleh Chris Oggerino dan mengalami kesulitan dalam menyelesaikannya, tidak hanya kepala sekolah yang pertama.
Mengambil contoh serial saya langsung dari jawaban Tensibai hanyalah kasus mengalikan probabilitas setiap komponen yang tersedia dengan yang lain:
Begitu
Menghitung secara paralel adalah sedikit lebih rumit seperti yang kita lakukan perlu mempertimbangkan apa persentase un ketersediaan akan:
Perhitungan dilakukan sebagai berikut:
Kalikan un ketersediaan dua daerah bersama-sama.
Konversikan kembali ke ketersediaan
Lipat gandakan ketersediaan Traffic Manager dengan ketersediaan kedua wilayah.
Hasilnya adalah ketersediaan seluruh sistem.
Saya akhirnya menggunakan Excel untuk melakukan perhitungan, berikut adalah nilainya:
... dan formula ...
sumber