CBA представила свой первый подробный взгляд на платформу container-as-a-service, которую она поддерживала для команд разработчиков, и ограждения, обернутые вокруг нее, чтобы соответствовать нормативным требованиям и требованиям безопасности.
рио Насименто рассказал AWS re:Invent 2020, что банк построил платформу на стеке AWS и использует методы и инструменты infrastructure-as-code для управления конфигурациями и соответствием требованиям.
Банк — клиент AWS с 2012 года — был процитирован в недавнем блоге главным евангелистом AWS Джеффом Барром, хотя в течение некоторого времени было неясно, где находится его фокус с облаком.
Теперь ясно, что в последнее время много усилий было вложено в платформу container-as-a-service и в контейнеризацию приложений более чем в одном внутреннем бизнес-подразделении или «отделе».
В заметках, рекламирующих сессию, AWS сказал, что CBA “построил платформу для запуска контейнерных приложений в регулируемой среде, а затем реплицировал ее в нескольких отделах с помощью Amazon EKS, AWS CDK и GitOps.”
EKS-это управляемый сервис Amazon Kubernetes, а CDK — cloud development kit — предлагает компаниям платформу для управления облачной инфраструктурой в виде кода.
GitOps, между тем, является “операционной моделью для доставки и управления облачными нативными приложениями на Kubernetes.”
“Основная идея GitOps заключается в том, чтобы иметь репозиторий Git, который всегда содержит декларативные описания инфраструктуры, желаемой в настоящее время в производственной среде, и автоматизированный процесс, чтобы производственная среда соответствовала описанному состоянию в репозитории”, — пишет в своем объяснении архитектор облачных решений Walmart Japan Бхаргав Шах.
“Если вы хотите развернуть новое приложение или обновить существующее, вам нужно только обновить репозиторий — автоматизированный процесс обрабатывает все остальное.
“Это похоже на круиз-контроль для управления вашими приложениями в производстве.”
Насименто из ЦБА сказал, что использование банком GitOps — и архитектура платформы container-as-a-service в целом — были оптимизированы для обеспечения безопасности и отказоустойчивости услуг, а также для того, чтобы дать аудиторам и финансовым регуляторам уверенность в облачной инфраструктуре.
Таким образом, ЦБА идет по тому же пути, что и другие банки с облачными амбициями: Например, у NAB есть своя литая структура, которую она использовала, чтобы получить благословение Австралийского Органа пруденциального регулирования (APRA).
“Мы вроде как используем GitOps и infrastructure-as-code в качестве неизменяемого брандмауэра», — сказал Насименто.
“Один из основных принципов заключается в том, что наши приложения должны быть объявлены в коде в Git, определяя состояние, в котором мы хотим, чтобы система была, [драйверы] и операции, которые мы хотим, чтобы она выполняла, а затем операторы Gitops, такие как Kubernetes и [AWS] CloudFormation systems, обеспечат, чтобы сервисы отражали состояние, которое вы определили в коде.
-Это означает, что людям нужен доступ только для чтения в целях наблюдения.”
Платформа container-as-a-service также частично предназначена для облегчения работы аудиторов путем автоматического внедрения многих средств контроля безопасности и соответствия требованиям, при этом команды разработчиков добавляют только несколько собственных средств контроля для своей конкретной службы или приложения.
“Финансовые учреждения являются регулируемой средой и должны осуществлять управление рисками, чтобы соответствовать ожиданиям безопасности и регуляторов”, — сказал Насименто.
“Я рассматриваю [безопасность и регуляторы] как » рейзеры’ для процессов и механизмов.
“Управление рисками-это постоянный процесс, который оценивает существующие риски, а затем находит средства контроля для их снижения. Контроль подобен требованиям, определяемым безопасностью, риском, инженерными командами, обычно основанными на стандартах, таких как ISO, PCI или отраслевые правила. Эти требования направлены на обнаружение, предотвращение и смягчение последствий того, что может произойти.
“Аудиторы потребуют доказательств, подтверждающих, что средства контроля были внедрены для обеспечения того, чтобы система действительно соответствовала требованиям.”
Насименто отметил, что если бы каждая внутренняя команда создала свою собственную платформу Kubernetes, то каждая из них “должна была бы повторить этот процесс аудита и предоставить доказательства того, что их версия платформы также безопасна и совместима.”
“Этот подход определенно не будет масштабироваться”, — сказал он.
“Поэтому мы построили контейнер-как-сервисную платформу … оценка рисков для обеспечения безопасности и надежности платформы, а также, как и в случае с «моделью совместной ответственности AWS», мы внедрили контроль от имени пользователей, чтобы сократить продолжительность процесса проектирования.
“Пользователям нужно будет только внедрить несколько элементов управления, где они должны создать новую услугу, и аудиторы будут абсолютно иметь более обширную базу доверия, так что процесс аудита может быть намного быстрее.”
Насименто сказал, что платформа container-as-a-service также помогла CBA “масштабировать разработку программного обеспечения инновационным, устойчивым, надежным и безопасным способом.”
Помимо помощи аудиторам, GitOps также был призван “дать разработчикам возможность следовать лучшим практикам, чтобы службы были хорошо настроены и надежны.”
“Непрерывность и надежность обслуживания являются обязательными в финансовой индустрии, поэтому, когда мы проектировали эту контейнерную платформу, мы оптимизировали ее для обеспечения безопасности и отказоустойчивости обслуживания; другими словами, для минимизации разрешений доступа и радиуса взрыва”, — сказал Насименто.
“Мы сошлись на запуске одного кластера на одну учетную запись AWS и двух учетных записей на систему, непроизводственной учетной записи и производственной учетной записи.
“Сама система состоит из нескольких служб в рамках одной бизнес-единицы.”
Стратегия с несколькими учетными записями позволяла ЦБА эффективно разделять системы таким образом, что если одна из них выходила из строя, она делала это в пределах “четко определенного радиуса взрыва” и не влияла на другие системы.
Насименто не говорил ни о том, какие бизнес-единицы выполняют рабочие нагрузки на платформе container-as-a-service, ни о типах или количестве рабочих нагрузок, вместо этого сосредоточившись исключительно на архитектуре и ограждениях, которые банк установил для платформы.