Облачные сервисы для бизнеса Platform

Дмитрий Новаковский, Олег Ивонин

Февраль 2017 Кто мы?

Дмитрий Новаковский / [email protected] ● Customer Engineer @ Google Netherlands B.V. ● Поддержка продаж и разработка решений на основе GCE, GKE, GAE ● В прошлом: ○ IaaS/PaaS (OpenStack @ Mirantis) ○ SaaS (ETAdirect @ TOA Technologies/Oracle)

Олег Ивонин / [email protected] ● Cloud Web Solutions Engineer @ Google Netherlands B.V. ● Разработка инструментов для анализа стоимости конфигураций и планирования архитектуры облачных решений на основе GCP ○ Pricing Calculator и другие О чем мы расскажем?

● Часть 1: Google Cloud Platform 101

● Часть 2: Инфраструктурные сервисы Google Cloud

● Часть 3: Обработка данных в Google Cloud

● Часть 4: Итоги и вопросы/ответы Зачем?

Google Cloud Platform 4 Часть 1: Google Cloud Platform 101

Google Cloud Platform 5 Что такое “облако”?

Облачные сервисы (облачные вычисления, англ. ) - это: ● модель предоставления повсеместного удобного сетевого доступа по требованию ● ...к общему пулу конфигурируемых вычислительных ресурсов (серверы, сервисы, сети, хранилища данных, приложения) ● ...с возможностью оперативного предоставления и освобождения при минимальных эксплуатационных затратах (включая взаимодействие с провайдером)

Полный документ

Google Cloud Platform 6 Характеристики и типы “облаков”

Ключевые характеристики Типы облаков 1. Самообслуживание SaaS - .com, G Suite, Office 365 2. Универсальный доступ по сети 3. Объединение ресурсов PaaS - , CloudFoundry, OpenShift 4. Эластичность 5. Учет потребления IaaS - AWS, Azure, GCP

Полный документ

Google Cloud Platform 7 Путь IT-инфраструктуры в “облако”

Storage Processing Memory Network Storage Processing Memory Network

Physical / Self-Service / Serverless / Colo / VPS Elastic / IaaS NoOps / PaaS

Google Cloud Platform 8 Что такое Google Cloud Platform?

Google Cloud Platform (GCP) - это набор коммерческих облачных сервисов, основанных на разработках и опыте Google в эксплуатации собственных продуктов

Google Cloud Platform 9 MapReduce Dremel Flume Millwheel TensorFlow

GFS Bigtable Colossus Megastore PubSub

Spanner F1

2002 2004 2006 2008 2010 2012 2014 2016

QUIC

Google Watchtower BwE Jupiter Andromeda Global Cache Onix B4 gRPC

Limited Released Released isolation CGroups LMCTFY Google Cloud Platform сегодня

Вычисления

Compute App Container Container Cloud Engine Engine Engine Registry Functions

Сетевые сервисы Хранение данных

Cloud Virtual Cloud Load Cloud Cloud Cloud Cloud Cloud Persistent Cloud DNS Cloud SQL Network Balancing CDN Interconnect Storage Bigtable Datastore Disk

Machine Learning Big Data

Cloud Machine Speech Natural Translation Cloud Cloud Cloud Cloud Vision API BigQuery Learning API Language API API Dataflow Dataproc Pub/Sub Datalab

Google Cloud Platform 11 Преимущества Google Cloud Platform

● Безопасность в облаке: 600 экспертов, “purpose-built” аппаратная и Безопасность программная инфраструктура (датацентры, сервера, ПО) ● Шифрование данных клиента at rest и in transit, управление ключами

● Самая большая в мире сеть облачного провайдера, построена и Глобальная управляется Google, собственный fiber optic сеть ● 70 точек присутствия, глобальный load balancing, low latency, CDN

● Обширный набор сервисов для хранения и обработки больших данных Big Data и ML ● Google разбрабатывает предлагает лучшие open-source инструменты (Tensorflow, MapReduсe и др), GCP делает их легко доступными

, BigQuery, Dataproc и другие managed сервисы ускоряют и упрощают разработку проектов и обработку данных. Время и NoOps затраты на поддержку инфраструктуры становятся не нужны

Снижение ● GCE дешевле других публичных облаков в среднем на 21% (до 60%) в затрат зависимости от конфигурации ВМ

Google Cloud Platform 12 Belgium 2 Finland London 3 3 Frankfurt Oregon 2 3 Iowa 4 3 N Virginia 3 Tokyo 34 S Carolina Taiwan 3 3 Mumbai

2 Singapore

3 São Paulo Sydney 3 Google Cloud Platform снижает затраты

Google Cloud Platform 14 Google Cloud Platform снижает затраты

Google Cloud Platform 15 Пример архитектуры для сравнения стоимости GCP и AWS

● Пример: система потокового мультимедиа ● Мы сравним стоимость* основных ресурсов у GCP и AWS: ○ 20 виртуальных машин - 4 vCPU / 20 Gb RAM; ○ 40000 Gb (~40Tb) объектного хранилища данных; ○ 100 миллионов запросов к данным

16 Расчетные данные

GCP* AWS**

20 x custom-4-16384 (4 vCPUs, $2192.80 20 x m4.xlarge (4 vCPUs, 16GB $3147.60 16GB memory) memory)

40000 GB of regional storage $840 40000 GB of S3 Standard storage $960 100000000 GET requests 100000000 GET requests

Снижение затрат: $1074.80 в месяц

* Подсчитано при помощи Google Cloud Pricing Calculator ** Подсчитано при помощи AWS Simple Monthly Calculator

17 No lock-in!

18 Часть 2: Инфраструктурные сервисы Google Cloud

Google Cloud Platform 19 IaaS / PaaS сервисы в Google Cloud Вычисления

Compute App Container Container Cloud Engine Engine Engine Registry Functions

Сетевые сервисы Хранение данных

Cloud Virtual Cloud Load Cloud Cloud Cloud Cloud Cloud Persistent Cloud DNS Cloud SQL Network Balancing CDN Interconnect Storage Bigtable Datastore Disk

Machine Learning Big Data

Cloud Machine Speech Natural Translation Cloud Cloud Cloud Cloud Vision API BigQuery Learning API Language API API Dataflow Dataproc Pub/Sub Datalab

Google Cloud Platform 20 Cloud Functions Serverless платформа для event-based микросервисов

App Engine (GAE) PaaS решение от Google - готовые к использованию runtimes для Python, Java, PHP, Go и других языков.

Google Container Engine (GKE) Kubernetes-as-a-service - оркестрация задач в контейнерах

Compute Engine (GCE) Полный контроль: “Классические” виртуальные машины

21 Когда используется ? ● Виртуальные машины с лучшей в классе производительностью и ценой ○ Linux, Windows Server ○ Автоматическое управление нагрузкой и масштабирование групп инстансов ○ Live migration виртуальных машин вместо принудительного выключения ○ HDD и SSD диски, до 25к IOPS на SSD

Compute ● Полный контроль над инфраструктурой (серверы, сети, Engine хранилища), пространством ОС, ядром и пакетами Linux

● Возможность запуска любого ПО

Google Cloud Platform 22 23 24 Google Compute Engine vs. VPS

● Схожий набор инструментов управления ● Снижение затрат благодаря гибкой системе цен GCE ● Повышение эффективности работы решения: ○ Вспомогательные сервисы (Storage, Database, CDN) ○ Глобальное присутствие Google (сеть и ЦОД) ○ Распределение нагрузки и масштабирование ○ Автоматизация Compute Engine ○ Эластичность ○ NoOps Пример архитектуры: Live Streaming Cloud Functions Serverless платформа для event-based микросервисов

App Engine (GAE) PaaS решение от Google - готовые к использованию runtimes для Python, Java, PHP, Go и других языков.

Google Container Engine (GKE) Kubernetes-as-a-service - оркестрация задач в Docker контейнерах

Compute Engine (GCE) Полный контроль: “Классические” виртуальные машины

27 Что дает контейнеризация?

Virtual machine Container

Application Code Application Code

Dependencies Dependencies

OS OS

Hardware Hardware

28 Что такое Kubernetes?

● Инструмент оркестрации и управления кластерами контейнеров (Docker, rkt) ○ Масштабирование, управление версиями (upgrade/rollback), A/B testing, и др. ● Устраняет необходимость ручного управления группами Docker хостов ● Декларативный механизм работы ○ Масштабирование и self-healing по заданным параметрам Kubernetes “целевого состояния” (K8s) ● Open-source: github.com/kubernetes ● Основан на опыте и внутренних разработках Google (blog post, research paper)

29 Когда используется Google Container Engine?

● Continuous integration & delivery приложения с использованием контейнеров+конфигурации как конечного артефакта

● Архитектура приложения следует microservices практикам, обширное покрытие автотестами

● Высокая частота релизов новой функциональности в Production Container Engine ● Переносимость и масштабирование среды на другие окружения (Azure, on-premise и др.) Cloud Functions Serverless платформа для event-based микросервисов

App Engine (GAE) PaaS решение от Google - готовые к использованию окружения для Python, Java, PHP, Go и других языков.

Google Container Engine (GKE) Kubernetes-as-a-service - оркестрация задач в Docker контейнерах

Compute Engine (GCE) Полный контроль: “Классические” виртуальные машины

31 Когда используется Google App Engine?

● Сборка и поставка масштабируемых приложений в типовых окружениях

● NoOps cервисы платформы ○ Authentication, Memcache, Load Balancing, Message queues, Task queues, API Endpoints и др ○ SQL & NoSQL DB ○ Debugging, tracing, logging

App Engine ● Мониторинг и масштабирование приложения согласно нагрузке и бизнес правилам

● Автоматизация сборки и управления версиями Окружения: GAE Standard vs. Flex

Google Cloud Platform 33 Cloud Functions Serverless платформа для event-based микросервисов

App Engine (GAE) PaaS решение от Google - готовые к использованию runtimes для Python, Java, PHP, Go и других языков.

Google Container Engine (GKE) Kubernetes-as-a-service - оркестрация задач в Docker контейнерах

Compute Engine (GCE) Полный контроль: “Классические” виртуальные машины

34 Когда используется Google Cloud Functions?

● Изолированные узкоспециализированные функции ○ Javascript (Node.JS) функции ● Запуск по событию: ○ загрузка объекта в ○ Прием определенного сообщения в Pub/Sub ○ POST сообщение на внешний API

Functions Что выбрать?

Google Cloud Platform 36 Что выбрать?

● Choosing a Computing option ● Сhoosing a Storage option

Google Cloud Platform 37 Сетевые сервисы в Google Cloud Вычисления

Compute App Container Container Cloud Engine Engine Engine Registry Functions

Сетевые сервисы Хранение данных

Cloud Virtual Cloud Load Cloud Cloud Cloud Cloud Cloud Persistent Cloud DNS Cloud SQL Network Balancing CDN Interconnect Storage Bigtable Datastore Disk

Machine Learning Big Data

Cloud Machine Speech Natural Translation Cloud Cloud Cloud Cloud Vision API BigQuery Learning API Language API API Dataflow Dataproc Pub/Sub Datalab

Google Cloud Platform 38 Cloud Virtual Network Виртуальные сети с поддержкой Geographical scope, VPN, Firewall, Routing и DNS

Cloud Load Balancing Управление трафиком с поддержкой HTTP(s) (multi-region), TCP/SSL (single-region), Health Checks и автоматического масштабирования

Cloud CDN Доставка контента пользователям через кеширование на ближайшем edge location. Также поддерживает Interconnect в других провайдеров

Cloud Interconnect High availability+throughput и low latency подключение к сети Google (в поддерживаемых ЦОДах)

39 Часть 3: Обработка данных в Google Cloud

Google Cloud Platform 40 Хранение данных в Google Cloud Вычисления

Compute App Container Container Cloud Engine Engine Engine Registry Functions

Сетевые сервисы Хранение данных

Cloud Virtual Cloud Load Cloud Cloud Cloud Cloud Cloud Persistent Cloud DNS Cloud SQL Network Balancing CDN Interconnect Storage Bigtable Datastore Disk

Machine Learning Big Data

Cloud Machine Speech Natural Translation Cloud Cloud Cloud Cloud Vision API BigQuery Learning API Language API API Dataflow Dataproc Pub/Sub Datalab

Google Cloud Platform 41 Cloud Storage Универсальное хранилище объектов широкого спектра

Cloud SQL Высокопроизводительная SQL БД с автоматической репликацией, бекапом и обслуживанием Cloud Datastore Реплицируемая NoSQL БД для веб приложений с высокой доступностью (25M+ QPS, используется Snapchat и Pokémon Go) и автоматизированным no downtime обслуживанием

Cloud Bigtable Высокопроизводительная (100+ PBs and 1M+ of ops/s) NoSQL БД для обработки больших данных с низкой задержкой, высокой пропускной способностью и поддержкой HBase API

42 Классы хранения в

Multi Regional Regional Nearline Coldline

Критичные данные с Данные бизнеса без Редкое Use case Архивы репликацией репликации использование

Цена за 1 Гб Дешево Дешевле Еще дешевле Самый дешевый

Цена за доступ - - 0.01 USD 0.05 USD

Минимальная - - 30 days 90 days длительность хранения

SLA на доступность 99.95% 99.9% 99%

Задержка Отсутствует

● Per Bucket classes, Lifecycle Policies, and Transfer Service GCS storage classes vs AWS S3/Glacier/CRR

S3 Std + S3 Std with Cross Regional 4.2c+ CRR Replication results in: - 2x storage cost GCS Coldline is better than S3 Glacier on: - network charges for - simple predictable access pricing (5c GB) replication - availability SLA (99%) - SLA as Standard of 99.9%. - online latency access (ms) - consistent API across storage classes

S3 GCS Multi-Regional at 2.6c / 2.3 - 2.1c Standard GCS GB-mo includes: 2.6c Mult-Reg - storage of geo-redundant GCS replicas 2.0c - cost of network replication Regional - 99.95% SLA. S3 IA 1.25c GCS 1.0c

Price per GB-mo Nearline GCS 0.7c Coldline Glacier

Slow Cold Infrequent Regional Geo-redundant, access archive Access storage highly available Retrieval frequency

Google Cloud Platform 44 BigQuery Высокопроизводительное масштабируемое хранилище данных (DWH) для обработки и анализа Cloud Dataflow Конвейеры обработки (на основе Apache Beam) для преобразований и загрузки (ETL) потоковых и пакетных данных Cloud Dataproc Hadoop и Spark кластеры с высокой производительностью в облаке

Cloud Pub/Sub Сервис очередей сообщений для обмена данными между приложениями и доставки данных в Cloud

45 End-to-end data flow

Cloud Pub/Sub

Events, metrics, Cloud Datalab etc. BigQuery Stream Cloud Dataflow

Visualization and BI Raw logs, files, assets, Google Analytics data etc. Batch

Co-workers

Cloud Storage

B C Applications and A Reports

46 Что выбрать?

● Choosing a Computing option ● Сhoosing a Storage option

Google Cloud Platform 47 Часть 4: Итоги и вопросы

Google Cloud Platform 48 Host Wix Editor on App Engine ~11 Million files uploaded per day Uses Google Cloud Storage to store static media files 600TB 8.6M Serve production media of storage managed images resized traffic from Compute per day per day Engine

“We chose Google Cloud Platform because of its ease of management, scalability and speed of development.”

Google Confidential and Proprietary “App Engine enabled us to focus on developing the application. We wouldn’t have gotten here without the ease of development that App Engine gave us.” Bobby Murphy, CTO

Snapchat sends 700 million photos and videos each day Google App Engine Small team is able scaled seamlessly to innovate quickly during growth to and expand millions of users globally “Ulmart can now create actionable dashboards, analyze its pricing against the market, and maximize its margin without losing market leadership.”

● Ulmart выбрал Google BigQuery для решения сложных аналитических задач ● Знакомый синтаксис SQL запросов and быстрая обработка в Google BigQuery позволяют Ulmart работать с огромными объемами данных в реальном времени ● Ulmart экономит тысячи долларов на тренингах и лицензировании

Google Cloud Platform 51 “This is no small achievement as the transition means moving approximately three to 3.5 petabytes of user data from Evernote's two current data centers into the Google Cloud Platform.”

fortune.com cloudplatform.googleblog pcworld.com

Google Cloud Platform 52 Google Cloud Platform - это:

IaaS/PaaS NoOps

Снижение Полнофункциональная издержек и платформа с повышение экономией затрат Big Data / эффективности Лучшее от Machine разработки ПО Google Learning Все сервисы Масштабируемые спроектированы и облачные сервисы опробованы для для работы с данными задач Google

Google Cloud Platform 53 Thank you

Google Cloud Platform 54 Backup slides

Google Cloud Platform 55 Пример архитектуры: Continuous Integration Безопасность Google Cloud Platform

● Модель безопасности Google постоянно улучшается на протяжении последних 15 лет ● Google Cloud Platform предлагает пользователям уровень защиты аналогичный используемому для таких сервисов как GMail, Google Search и др. Например: ○ Шифрование данных в Google Cloud включено по умолчанию, как для среды передачи (“in transit”, HTTPS/TLS), так и для хранения (“at rest”, AES-256) ○ Google Cloud Key Management Service позволяет клиентам шифровать данные собственными ключами шифрования ● Google Cloud Terms of Service регламентирует обработку данных клиента в строгом соответствии с инструкциями клиента - и никак иначе Сертификации и аудит Google Cloud Platform

● Google Cloud Platform проходит регулярный аудит технической инфраструктуры и процессов управления ● Сервисы Google Cloud Platform соответствуют таким международным стандартам аудита и сертификации как: ○ SSAE16 / ISAE 3402 Type II ○ ISO 27001 ○ ISO 27017, Cloud Security ○ ISO 27018, Cloud Privacy ○ FedRamp ATO ○ PCI DSS v3.1 ● Google Cloud Platform поддерживает доп. соглашения для соответствия стандартам HIPAA и EU Data Protection Directive