Розуміння одного клієнта проти мультитенанта в хмарних обчисленнях

У хмарних обчисленнях термін орендар означає групу або окремого користувача, який має доступ до спільного пулу обчислювальних ресурсів, таких як сховище, сервери та програми. Ресурси надає постачальник хмарних послуг.

Кожен орендар ізольований від інших орендарів, і вони не можуть отримати доступ до даних або ресурсів один одного. Кілька орендарів можуть використовувати одну і ту саму інфраструктуру, зберігаючи власну конфіденційність і безпеку. Орендарями можуть бути окремі особи, організації або відділи в організації.

Якщо ресурси та інфраструктура призначені лише для одного орендаря, то ми називаємо таку архітектуру єдиним орендарем. Якщо кілька різних орендарів спільно використовують ті самі ресурси, це означає мультитенантну архітектуру.

Однак різниця між архітектурою з одним орендарем і архітектурою з декількома орендарями трохи складніша. Наприклад, ви можете використовувати AWS як постачальника хмарних послуг для налаштування архітектури з одним клієнтом, а також архітектури з кількома клієнтами. Різниця полягає в деталях. Ось вони.

Джерело: blogs.sap.com

Тепер давайте вивчимо короткий опис обох архітектур, перш ніж переходити до деталей.

Функція Архітектура з одним клієнтом Архітектура з кількома клієнтами Спільний доступ до ресурсів Не доступний для інших Спільний для кількох клієнтів Налаштування Можливість настроювання Обмежена настройка Вартість Загалом дорожче Загалом менш дорого БезпекаПокращена безпекаНижчий рівень безпеки ПродуктивністьПередбачувана продуктивність Вплив на масштабованістьОбслуговуванняКлієнт підтримує ресурсиПостачальник хмарних технологій займається обслуговуванням СпівпрацяОбмежена співпрацяКраща collaborationComplianceКраща відповідність конкретним нормамСтандартні процеси для всіх орендарів

Архітектура з одним орендарем

Хмарні програми з одним клієнтом призначені для обслуговування одного клієнта чи організації та надають виділені ресурси, які не використовуються спільно з іншими клієнтами.

Джерело: cncf.io

Це модель, у якій один клієнт або орендар має ексклюзивний доступ до сервера, програми або інфраструктури в хмарі. У цій моделі клієнт має повний контроль над ресурсами та може налаштувати їх відповідно до своїх конкретних потреб. Це означає, що хмарні ресурси призначені для цього клієнта.

Цей єдиний орендар може налаштувати ресурси відповідно до конкретних потреб. Це означає більшу гнучкість і контроль над ресурсами.

Як правило, це дорожче, ніж архітектура з кількома клієнтами, оскільки клієнт платить за виділені ресурси.

Ось приклад того, як ви можете створити наскрізну архітектуру з одним клієнтом у хмарі AWS:

  • Створіть віртуальну приватну мережу (VPC), щоб ізолювати ресурси одного клієнта. VPC забезпечить ізоляцію та безпеку мережі.
  • Використовуйте керування ідентифікацією та доступом (IAM), щоб керувати доступом до ресурсів для одного клієнта. IAM створює політики, які визначають, до яких ресурсів може отримати доступ орендар.
  • Використовуйте Elastic Compute Cloud (EC2), щоб створити віртуальні машини для одного клієнта. EC2 створює екземпляри з певними конфігураціями та забезпечує повний контроль над ресурсами.
  • Використовуйте Elastic Block Store (EBS), щоб забезпечити сховище на рівні блоків для віртуальних машин.
  • Використовуйте службу реляційної бази даних (RDS), щоб надати службу керованої бази даних для одного клієнта. Ви можете створити окремий екземпляр бази даних для клієнта, який забезпечує ізоляцію та безпеку.
  • Використовуйте Amazon S3 для зберігання статичних ресурсів, таких як зображення, відео та документи. Ви можете створити окреме відро для орендаря, до якого матиме доступ лише орендар.
  • Використовуйте Elastic Load Balancer (ELB), щоб розподілити трафік між кількома екземплярами вашої програми, усі всередині ресурсів, призначених лише для вашого клієнта.
  • Приклади хмарних програм

    Ось деякі з найвідоміших хмарних програм, які можна використовувати для архітектури з одним клієнтом.

    • Workday — це хмарне програмне забезпечення для управління персоналом і фінансами, яке надає своїм клієнтам єдину архітектуру орендаря.
    • Хмарна платформа SAP HANA.
    • Архітектура Oracle Cloud.
    • IBM Cloud Dedicated із виділеними ресурсами, які не можна використовувати для інших клієнтів.
    • Приватна хмара Rackspace.

    Переваги хмарної архітектури з одним клієнтом

    Хмарна архітектура з одним клієнтом має деякі переваги перед архітектурою з кількома клієнтами:

  • Покращена безпека, оскільки ресурси призначені для одного клієнта. Замовник повністю контролює безпеку своїх ресурсів. Це усуває ризик витоку даних або несанкціонованого доступу, які потенційно можуть виникнути в середовищах із кількома клієнтами.
  • Додаткова перевага — ще одна перевага. Ви можете налаштувати ресурси відповідно до їхніх конкретних потреб, що призведе до кращої продуктивності та ефективності. Ви також маєте більшу гнучкість щодо вибору програмного та апаратного забезпечення.
  • Передбачувана продуктивність, оскільки ресурси призначені для одного клієнта. Ви можете очікувати сталого навантаження на продуктивність, що важливо для додатків, які потребують високого рівня продуктивності та надійності.
  • Краща відповідність конкретним нормам або стандартам, оскільки ресурси призначені лише для одного орендаря.
  • Краща масштабованість, оскільки клієнт може збільшити або зменшити ресурси за потреби.
  • Однак архітектура з одним клієнтом зазвичай дорожча, ніж архітектура з кількома клієнтами, тому це точно не найкращий вибір для всіх організацій.

    Реальні випадки використання хмарної архітектури з одним клієнтом

    Ось кілька найкращих випадків використання архітектури з одним клієнтом:

    • Організації охорони здоров’я зобов’язані дотримуватися суворих правил, таких як HIPAA, які вимагають високого рівня безпеки та конфіденційності. Архітектура з єдиним орендарем дозволяє організаціям охорони здоров’я мати повний контроль над своїми ресурсами та впроваджувати заходи безпеки відповідно до потреб пацієнтів і персоналу.
    • Фінансові організації зобов’язані дотримуватися суворих правил, таких як PCI DSS. Таким чином, архітектура з одним орендарем є хорошим рішенням.
    • Урядові організації повинні дотримуватися суворих правил, таких як FISMA, які також вимагають високого рівня безпеки та відповідності.
    • Дослідницькі організації часто потребують високого рівня налаштування та продуктивності своїх ресурсів.
    • Організації електронної комерції є ще одним випадком використання архітектури з одним орендарем. За потреби ви можете збільшити або зменшити їхні ресурси, щоб задовольнити мінливі потреби клієнтів.

    Мультитенантна архітектура

    Джерело: aws.amazon.com

    Архітектура з декількома клієнтами часто є найкращим рішенням для організацій, які віддають перевагу економії коштів, масштабованості та співпраці, а не високим вимогам безпеки та налаштування.

    • Кілька клієнтів спільно використовують ті самі ресурси в хмарі. Це означає, що ресурси не призначені жодному клієнту, а розподіляються між усіма клієнтами.
    • Архітектура з кількома клієнтами, як правило, дешевша, ніж архітектура з одним клієнтом, просто через характер спільних ресурсів.
    • Існують обмеження щодо кількості налаштувань, які можна виконати. Це може бути недоліком для клієнтів, яким потрібні високоспеціалізовані ресурси.

    Ось приклад того, як ви можете побудувати наскрізну мультитенантну архітектуру в хмарі AWS:

  • Створіть VPC, щоб ізолювати ресурси кожного орендаря. Кожен орендар матиме власний VPC, що забезпечує ізоляцію та безпеку мережі.
  • Використовуйте IAM для керування доступом до ресурсів для кожного орендаря. IAM визначає правила та ресурси, які кожен орендар може отримати. Це може бути різна політика для кожного орендаря.
  • Використовуйте ELB для розподілу трафіку між кількома екземплярами вашої програми. Контролюйте, який трафік йде до якого орендаря.
  • Використовуйте RDS, щоб забезпечити послугу керованої бази даних для кожного клієнта. Створюйте окремі екземпляри бази даних для кожного клієнта з окремими привілеями бази даних і вмістом даних. Ви можете використовувати той самий кластер бази даних. Це дає орендарям ізоляцію та безпеку.
  • Використовуйте Amazon S3 для зберігання статичних ресурсів, таких як зображення, відео та документи. Ви можете контролювати доступ до відер для орендарів. Його можна розділити між кількома обліковими записами або за потреби розділити.
  • Використовуйте CloudFront для розповсюдження статичних ресурсів серед користувачів. Створіть окремі розподіли для кожного орендаря, що забезпечує ізоляцію та безпеку.
  • Приклади хмарних програм

    Ось кілька реальних прикладів хмарних додатків із кількома клієнтами:

    • Salesforce — це хмарна платформа керування взаємовідносинами з клієнтами (CRM), яка дає змогу кільком організаціям використовувати ту саму інфраструктуру, зберігаючи їхні дані окремо та безпечно.
    • Dropbox — це хмарна служба зберігання та обміну файлами, яка дозволяє кільком користувачам спільно працювати над одними файлами.
    • Microsoft Office 365 — це хмарний набір для підвищення продуктивності, який дозволяє кільком користувачам спільно працювати над одними документами, електронними таблицями та презентаціями.
    • Google Workspace — це ще один хмарний пакет продуктивності, схожий на той, який пропонує Microsoft.
    • AWS — це хмарна інфраструктурна платформа, яка дозволяє кільком організаціям використовувати ту саму інфраструктуру, зберігаючи свої дані окремо та безпечно.

    Переваги мультитенантної архітектури

    Мультитенантна хмарна архітектура має певні переваги:

    • Ця архітектура, як правило, дешевша, ніж архітектура з одним орендарем. Кілька клієнтів діляться ресурсами.
    • Це має більший вплив на масштабованість. Масштаб ресурсів збільшується або зменшується за потреби, щоб задовольнити мінливі потреби клієнтів, коли вони спільно використовують ресурси. Він масштабуватиметься для всіх них одночасно.
    • Ця архітектура потребує менше обслуговування. Хмарний провайдер відповідає за підтримку ресурсів, які є однаковими для всіх орендарів. Тож ви виконуєте технічне обслуговування лише один раз.
    • У вас є краща співпраця між клієнтами, оскільки вони спільно використовують ті самі ресурси. Клієнти можуть працювати разом над проектами та ефективніше обмінюватися даними.
    • Ця архітектура сприяє стандартизації. Хмарний постачальник може впроваджувати стандартні процеси та процедури та застосовувати їх до всіх орендарів одночасно.

    Однак архітектура з кількома клієнтами може бути не найкращим вибором, якщо організації потребують високого рівня безпеки, відповідності або налаштування. Спільні ресурси зменшують можливості для всіх цих.

    Реальні випадки використання мультитенантної архітектури

    Ось кілька найкращих варіантів використання мультитенантної архітектури:

    • Підприємства малого та середнього бізнесу (SMBs) часто мають обмежені бюджети та ресурси, що робить мультитенантну архітектуру привабливим варіантом.
    • Постачальники програмного забезпечення як послуги (SaaS) використовують мультитенантну архітектуру для надання послуг багатьом клієнтам.
    • Платформи соціальних мереж вимагають високого рівня масштабованості та співпраці. Архітектура з декількома клієнтами дозволяє платформам соціальних мереж за потреби збільшувати чи зменшувати свої ресурси, щоб задовольнити мінливі потреби своїх користувачів.
    • Навчальні заклади часто потребують економічно ефективних рішень для своєї ІТ-інфраструктури. Архітектура з декількома орендарями дозволяє навчальним закладам розподіляти витрати на ресурси з іншими закладами, що призводить до економії коштів.
    • Постачальники публічних хмар використовують архітектуру з кількома клієнтами, щоб надавати свої послуги багатьом клієнтам.

    Де підходить AWS Cloud?

    Джерело: прод.майстерні.aws

    Як зазначалося вище, ви можете налаштувати AWS як одно-, так і багатокористувацьку архітектуру.

    Ви можете створити спеціальну інфраструктуру для одного клієнта чи організації. Наприклад, AWS має виділені хости EC2, які надають фізичні сервери, призначені для одного клієнта. Це дозволяє клієнту мати повний контроль над основним обладнанням.

    AWS також має віртуальну приватну хмару (VPC), яка дозволяє клієнтам створювати ізольовані віртуальні мережі в хмарі AWS.

    Але AWS може надавати ряд послуг, які можна використовувати для створення спільної інфраструктури. Наприклад, AWS пропонує екземпляри EC2 (не виділені), які надають віртуальні сервери, якими можуть спільно користуватися кілька клієнтів. Тоді ви користуєтеся одним базовим апаратним забезпеченням та інфраструктурою, зберігаючи власну конфіденційність і безпеку.

    Або ви можете скористатися такими послугами, як Amazon S3, який дає змогу спільно використовувати одне й те саме сховище для кількох клієнтів. Клієнти можуть зберігати та отримувати дані в спільному середовищі.

    Що стосується баз даних RDS в AWS, ви знову маєте можливість налаштувати їх різними способами. Ви можете створити окремі екземпляри бази даних для кожного клієнта. Ви також можете створити спеціальний кластер бази даних і екземпляр для одного клієнта.

    Нарешті, ви можете використовувати RDS для створення служби спільної бази даних для кількох орендарів. Потім такий екземпляр бази даних підтримує кілька клієнтів, що в кінцевому підсумку обмежує рівень налаштування або продуктивності.

    Це означає, що не платформа визначає, чи буде у вас архітектура з одним або кількома клієнтами. Це набагато більше про те, як ви налаштовуєте та налаштовуєте платформу.

    Заключні слова

    Вибір між архітектурою з одним або кількома клієнтами залежить від конкретних потреб замовника. Архітектура з одним клієнтом зазвичай надає перевагу тим організаціям, які потребують високого рівня безпеки, відповідності та налаштування. Архітектура з кількома клієнтами віддає перевагу організаціям, які надають пріоритет економії коштів і масштабованості.

    Хмарні платформи, такі як, наприклад, AWS, пропонують вам можливість змінити свою думку з часом. Ви також можете використовувати їх для створення гібридного середовища, де кожна справа матиме своє місце та добре працюватиме разом.

    Далі ознайомтеся з роз’ясненнями щодо багатокористування в хмарних обчисленнях.