google compute engine что это

Google Compute Engine (GCE)

ЦОДы Google базируются в центральном регионе США, в Европе и в Азии.

Сильные стороны: Google хоть и поздно вышла на этот рынок, но в распоряжении компании вычислительные ресурсы и технический опыт, не имеющие себе равных. Эти преимущества позволят ей продвигать свой Compute Engine быстрее, чем это будут делать конкуренты со своими IaaS. Google «главным образом превращает в продукт уже имеющиеся возможности, то есть компании не нужно создавать их с нуля», уточняет ситуацию в 201 году Gartner.

Что следует учесть: Google является смелым новатором в сфере чисто облачных приложений, но у компании отсутствует предложение для гибридной среды. Также, компании еще предстоит заслужить доверие в корпоративном сегменте, что будет не просто, так как Google не всегда обеспечивает миграцию унаследованных рабочих нагрузок. И, до сих пор Compute Engine не имеет сколь-нибудь значимой программы партнерства, указывает Gartner.

Основные особенности Google Compute Engine:

Весной 2013 года Google объявила о доступности Google Compute Engine (GCE) — IaaS-решения, которое позволяет всем подписчикам пакета Google Gold Support создавать и запускать виртуальные машины и пользоваться всеми преимуществами виртуальной сети. Как сообщает ZDNet, компания приняла решение формировать системное окружение GCE на базе Debian GNU/Linux взамен собственного Linux-дистрибутива Google Compute Engine Linux, основанного на пакетной базе Ubuntu.

Теперь Debian будет использоваться разработчиками по умолчанию. Будут поддерживаться Debian 6.0 `Squeeze` и 7.0 `Wheezy`. Последняя была выпущена буквально неделю назад. В неё добавлен инструментарий для развертывания частных вычислительных облаков. Для упрощения развёртывания собственных облачных инфраструктур в состав дистрибутива включены пакеты, позволяющие с минимальными затратами установить и настроить облачные системы и инфраструктуры виртуализации на базе OpenStack и XCP (Xen Cloud Platform). Обеспечена возможность использования Debian в облачных окружениях Amazon EC2, Windows Azure и Google Computer Engine.

GCE продолжит поддерживать возможность установки образов CentOS 6.2. На запрос The Register касательно того, какие ещё Linux-дистрибутивы смогут в дальнейшем работать с GCE, представитель Google, не вдаваясь в подробности, сообщил, что `компания на основе обратной связи с клиентами продолжает активно изучать возможности по использованию загрузочных образов и других операционных систем`.

GCE позволяет запускать виртуальные машины под управлением Linux с 1, 2, 4 или 8 виртуальными ядрами и 3,75 Гб памяти на ядро по требованию. Виртуальные машины могут управляться с помощью командной строки, веб-интерфейса или создаваемых пользователем посредством API Google систем управления. Услуга поддерживается со стороны многих ведущих игроков в области облачного управления, в том числе RightScale, Puppet Labs, Opscode, Numerate, Cliqr и MapR. Необходимо отметить, что использование GCE, входящей в состав Google Cloud Platform, стоит 400 долл. в год.

Источник

GCP: Разбор вычислительного стека Google Cloud Platform

Перевод статьи подготовлен специально для студентов курса «Облачные сервисы».

Интересно развиваться в данном направлении? Смотрите запись профессионального мастер-класса «AWS EC2 сервис», который провёл Егор Зуев — TeamLead в компании InBit и автор образовательной программы в OTUS.

Google Cloud Platform (GCP) предлагает множество сервисов, и в частности вычислительный стек, который содержит Google Compute Engine (GCE), Google Kubernetes Engine (ранее — Container Engine) (GKE), Google App Engine (GAE) и Google Cloud Functions (GCF). Все эти сервисы имеют крутые названия, но могут быть не совсем очевидными в отношении их функций и того, что делает их уникальными по отношению друг к другу. Эта статья предназначена для тех, кто только знакомится с облачными концепциями, в частности с облачными сервисами и GCP.

1. Вычислительный стек

Вычислительный стек можно рассматривать как многоуровневую абстракцию над тем, что может предоставить компьютерная система. Этот стек восходит (moves up) от «голого железа» (bare metal), относящегося к фактическим аппаратным компонентам компьютера, вплоть до функций (functions), которые представляют собой наименьшую единицу вычисления. Что важно отметить в отношении стека, так это то, что сервисы агрегируются при перемещении вверх по стеку, например, раздел «приложения» (apps), показанный на рисунке 1 ниже, должен содержать все базовые компоненты контейнеров (containers), виртуальных машин (virtual machines) и железа. Таким же образом компонент виртуальных машин должен содержать железо внутри для работы.

Рисунок 1: Вычислительный стек | Изображение получено из Google Cloud

Эта модель, показанная на рисунке 1, является основой для описания предложений от облачных провайдеров. Таким образом, некоторые провайдеры могут предоставлять только, например, контейнеры и услуги ниже качеством по стеку, а другие — все, что показано на рисунке 1.

— Если вы знакомы с облачными сервисами, переходите к разделу 3, чтобы ознакомиться с эквивалентом GCP
— Если вам нужна только сводка по облачным сервисам, переходите к разделу 2.4

2. Облачные сервисы

Мир облачных вычислений очень разнообразен. Облачные провайдеры предлагают множество услуг, адаптированных к различным требованиям клиентов. Возможно, вы слышали о таких терминах, как IaaS, PaaS, SaaS, FaaS, KaaS и т.д. со всеми буквами алфавита, за которыми следует «aaS». Несмотря на странное соглашение об именовании, они образуют набор сервисов облачных провайдеров. Я констатирую, что есть 3 основных предложения «как услуга» (as a Service), которые облачные провайдеры почти всегда предоставляют.

Читайте также:  с каким соком лучше всего пить креатин

Это IaaS, PaaS и SaaS, которые обозначают соответственно инфраструктуру как услугу (Infrastructure as a Service), платформу как услугу (Platform as a Service) и программное обеспечение как услугу (Software as a Service). Важно визуализировать облачные сервисы как уровни предоставляемых услуг. Это означает, что когда вы поднимаетесь или спускаетесь с уровня на уровень, вы, как клиент, пересекаете различные варианты обслуживания, которые либо добавляются, либо убираются из основного предложения. Лучше всего рассматривать это как пирамиду, как показано на рисунке 2.

Рисунок 2: Пирамида «aaS» | Изображение получено из Ruby Garage

2.1 Инфраструктура как услуга (IaaS)

Это самый низкий уровень, который может предложить поставщик облачных услуг, и он включает провайдера облачных вычислений, поставляющего «голую» инфраструктуру, включая промежуточное программное обеспечение, сетевые кабели, процессоры, графические процессоры, оперативную память, внешнее хранилище, серверы и образы базовых операционных систем, например, Debian Linux, CentOS, Windows и т. д.

Если закажите у поставщика облачных услуг IaaS предложение, то это то, что вы должны ожидать получить. За вами, как за клиентом, остается сборка этих частей для ведения вашего бизнеса. Степень того, с чем вам придется работать, может варьироваться от поставщика к поставщику, но, как правило, вы просто получаете аппаратное обеспечение и ОС, а остальное за вами. Примерами IaaS являются AWS Elastic Compute, Microsoft Azure и GCE.

Некоторым людям может не понравиться тот факт, что им приходится устанавливать образы ОС и заниматься сетью, балансировкой нагрузки или заботиться о том, какой тип процессора идеально подходит для их рабочей нагрузки. Именно здесь мы двигаемся вверх по пирамиде к PaaS.

2.2 Платформа как услуга (PaaS)

PaaS включает в себя только поставщика облачных услуг, предлагающего определенную платформу, на которой пользователи могут создавать приложения. Это абстракция над IaaS, означающая, что поставщик облака берет на себя все детали типов ЦП, памяти, ОЗУ, хранилища, сетей и т. д. Как показано на рисунке 2, вы, как клиент, имеете небольшой контроль над реальной платформой, поскольку облачный провайдер занимается всеми деталями инфраструктуры за вас. Вы запрашиваете выбранную платформу и собираете на ней проект. Примерам PaaS являютс Heroku.

Для кого-то это может быть слишком высокий уровень, так как он не обязательно хочет собирать проект на указанной платформе, а скорее нуждается в наборе сервисов непосредственно от поставщика облачных услуг. Здесь на сцену выходит SaaS.

2.3 Программное обеспечение как услуга (SaaS)

SaaS представляет собой наиболее распространенные сервисы, предоставляемые поставщиками облачных услуг. Они предназначены для конечных пользователей и доступны главным образом через веб-сайты, например Gmail, Google Docs, Dropbox и т. д. Что касается Google Cloud, есть несколько предложений вне их вычислительного стека, которые являются SaaS. К ним относятся Data Studio, Big Query и т. д.

2.4 Сводка по облачным сервисам

Составляющие IaaS PaaS SaaS
Что вы получаете Вы получаете инфраструктуру и платите соответственно. Свободу использовать или устанавливать любое ПО, ОС или их композицию. Здесь вы получаете то, что вы запрашиваете. ПО, железо, ОС, веб-среду. Вы получаете готовую к использованию платформу и платите соответственно. Здесь вам не нужно ни о чем беспокоиться. Вам предоставляется предустановленный настроенный в соответствии с вашими требования пакет, и вам остается только заплатить соответственно.
Значение Базовый уровень вычислений Верхушка IaaS Это по сути полный пакет услуг
Технические сложности Необходимы технические знания Вам дана базовая конфигурация, но все еще необходимы знания предметной области. Не нужно заморачиваться с техническими деталями. Поставщик SaaS предоставляет все.
С чем работает Виртуальные машины, хранилища, серверы, сеть, балансировщики нагрузки и т.д. Среды выполнения (как java runtime), базы данных (как mySQL, Oracle), веб серверы (как tomcat и т. д.) Приложения наподобие почтовых сервисов (Gmail, Yahoo mail и т. д.), сайтов социального взаимодействия (Facebook и т. д.)
Граф популярности Популярно среди высококвалифицированных разработчиков, исследователей, которым требуется индивидуальная настройка в соответствии с их требованиями или областью исследований Наиболее популярно среди разработчиков, поскольку они могут сосредоточиться на разработке своих приложений или скриптов. Им не нужно беспокоиться о загрузке трафика или управлении сервером и т. д. Наиболее популярно среди обычных потребителей или компаний, которые используют программное обеспечение, такое как электронная почта, файлообменники, социальные сети, так как им не нужно беспокоиться о технических деталях

Рисунок 3: Сводка основных облачных предложений | Изображение предоставлено Amir at Blog Specia

3. Вычислительный пакет Google Cloud Platform

Рассмотрев типичные предложения облачных провайдеров в разделе 2, мы можем сопоставить их с предложениями Google Cloud.

3.1 Google Compute Engine (GCE) — IaaS

Рисунок 4: Иконка Google Compute Engine (GCE)

GCE — это IaaS предложение от Google. С GCE вы можете свободно создавать виртуальные машины, распределять ресурсы процессора и памяти, выбирать тип хранилища, например SSD или HDD, а также объем памяти. Это почти так же, как если бы вы создали свой собственный компьютер/рабочую станцию и занимались всеми деталями его работы.

В GCE вы можете выбрать от микро инстанций с 0,3-ядерным процессорами и 1 ГБ ОЗУ до 96-ядерных монстров с более чем 300 ГБ ОЗУ. Вы также можете создавать виртуальные машины нестандартного размера для своих рабочих нагрузок. Для тех, кто заинтересовался — это виртуальные машины, которые вы можете собрать.

3.2. Google Kubernetes Engine (GKE) — (Caas / Kaas)

Рисунок 5: Иконка Google Kubernetes Engine (GKE)

GKE — это уникальное вычислительное предложение от GCP, которое представляет собой абстракцию над Compute Engine. В более общем смысле GKE можно отнести к категории «Контейнер как услуга» (CaaS), иногда называемой «Kubernetes как услуга» (KaaS), который позволяет клиентам легко запускать свои Docker-контейнеры в полностью управляемой среде Kubernetes. Для тех, кто не знаком с контейнерами, контейнеры помогают модульно формировать сервисы/приложения, поэтому разные контейнеры могут содержать разные сервисы, например, один контейнер может размещать интерфейс вашего веб-приложения, а другой может содержать его серверную часть. Kubernetes выполняет автоматизацию, координацию, управление и развертывание ваших контейнеров. Больше информации здесь.

3.3 Google App Engine (GAE) — (PaaS)

Рисунок 6: Иконка Google App Engine (GAE)

Как упомянуто в разделе 2.2, PaaS находится выше IaaS, и в случае GCP его также можно рассматривать как предложение над GKE. GAE — это специализированный Google PaaS, и как они сами лучше всего описывают себя — «несите ваш код, а мы позаботимся обо всем остальном».

Это гарантирует, что клиенты, использующие GAE, не должны иметь дело с базовым аппаратным/промежуточным программным обеспечением, и уже могут иметь предварительно настроенную платформу, готовую к работе; все, что им нужно сделать, это предоставить код, необходимый для его запуска.

GAE автоматически обрабатывает масштабирование, чтобы удовлетворить нагрузку и спрос со стороны пользователей, что означает, что если ваш сайт, продающий цветы, внезапно достигнет пика, потому что приближается день святого Валентина, GAE будет обрабатывать масштабирование базовой инфраструктуры, чтобы удовлетворить спрос и гарантировать, что ваш веб-сайт не упадет из-за возросшего спроса. Это означает, что вы платите именно за те ресурсы, которые требуются вашему приложению в данный момент.

GAE использует Kubernetes или его встроенную версию, чтобы справиться со всем этим, чтобы вам не пришлось об этом заботиться. GAE лучше всего подходит для компаний, которые не заинтересованы в базовой инфраструктуре и заботятся только о том, чтобы их приложение было доступно наилучшим образом.

По моему мнению, GAE — это лучшее место для старта, если вы разработчик с отличной идеей, но не хотите заниматься рутинной работой по настройке серверов, балансировкой нагрузки и всей другой трудоемкой devops/SRE работой. Со временем вы могли бы попробовать GKE и GCE, но это только мое мнение.

Дисклеймер: AppEngine используется для веб-приложений, а не мобильных приложений.

3.4 Google Cloud Functions — (FaaS)

Рисунок 7: Иконка Google Cloud Functions (GCF)

Надеюсь, вы заметили тенденцию, проанализировав предыдущие предложения. Чем выше вы поднимаетесь по лестнице вычислительных решений GCP, тем меньше вам нужно беспокоится о базовых технологиях. Эта пирамида завершается наименьшей возможной единицей вычисления, функцией, как показано в разделе 1.

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

Они управляются событиями и лежат в основе модного слова «безсерверный», то есть не знают серверов. Облачные функции очень просты и имеют много разных применений, которые требуют событийного мышления. Например, каждый раз, когда новый пользователь регистрируется, может быть запущена облачная функция, чтобы предупредить разработчиков.

На фабрике, когда определенный датчик достигает определенного значения, он может запустить облачную функцию, которая выполняет некоторую обработку информации, или уведомляет некоторый обслуживающий персонал и т. д.

Заключение

В этой статье мы говорили о различных облачных предложениях, например IaaS, PaaS и т. д., и как стек вычислений Google реализует эти различные уровни. Мы видели, что уровни абстракции при переходе из одной категории услуг в другую, например, IaaS в Paas, требуют меньше знаний о лежащей в основе.

Для бизнеса это обеспечивает критически важную гибкость, которая не только отвечает его оперативным целям, но также удовлетворяет другим ключевым областям, таким как безопасность и стоимость. Обобщая:

Compute Engine — позволяет вам создать свою собственную виртуальную машину, выделяя определенные аппаратные ресурсы, например, ОЗУ, процессор, память. Он так же достаточно практичный и низкоуровневый.

Kubernetes Engine — это шаг выше по сравнению с Compute Engine, который позволяет вам использовать Kubernetes и контейнеры для управления вашим приложением, позволяя при необходимости масштабировать его.

App Engine — это шаг выше по сравнению с Kubernetes Engine, позволяющий вам сосредоточиться только на своем коде, в то время как Google обеспечивает все требования базовой платформы.

Cloud-Functions — это вершина вычислительной пирамиды, позволяющая написать простую функцию, которая при запуске использует всю базовую инфраструктуру для вычисления и возврата результата.

Источник

Настраиваем VM Instance Google Cloud для задач машинного обучения

Решение тяжёлых задач машинного обучения на стационарных компьютерах дело неблагодарное и малоприятное. Представьте, что вы на домашнем ноутбуке делаете ансамбль из N нейронных сетей для изучения лесов Амазонки на ноутбуке. Сомнительное удовольствие, тем более, что сейчас есть прекрасный выбор облачных сервисов для этих целей — Amazon Web Services, Google Cloud Platform, Microsoft Azure и прочие. Некоторые даже относительно бесплатны и предоставляют видеокарты.

Мы будем настраивать VM на Google Cloud Platform с нуля. Бонусом — стартовые 300$ на год на один gmail аккаунт. Поехали.

1. Создание и настройка Virtual Machine Instances

Создаем аккаунт

С первых шагов может ввести в заблуждение тот факт, что Гугл безапелляционно квалифицирует вас как юридическое лицо без права смены статуса. Это норма с недавних пор и с этим придется смириться. Далее бесстрашно указываем платежные данные, деньги без предупреждения не снимутся, даже когда будет исчерпан бесплатный лимит.

Создаем Virtual Machine и подбираем параметры

Здесь есть несколько интересных моментов. Графические процессоры есть не во всех зонах. В европейских и западно-азиатских я не нашел, в южно-американских искать не стал, поэтому выбрал восточно-американскую зону. Там их можно хоть восемь настроить с абонентской платой 5000 долларов в час. Усредняем данные и настраиваем восемь процессоров, двадцать гигабайт оперативной памяти и один графический процессор. Всё это удовольствие будет стоить 1 доллар в час.

Операционную систему можно выбрать на любой вкус. Берем понравившийся Linux дистрибутив и выставляем галочки «разрешить траффик». Настройку сети и SSH пропускаем. Их мы настроим дальше. И, наконец, один важный момент, снимите галочку с delete boot disk when instance is deleted. Это сохранит вам нервы, когда начнете создавать имейджи под разные задачи.

2. Настройка сетевых параметров

Настройка статического IP

По умолчанию внешний IP динамический. Сделаем его статическим и жить сразу станет гораздо проще. При привязке к проекту или виртуальной машине (как раз наш случай) — это бесплатно.

Настройка брандмауэра.

Jupyter Notebook — наш главный инструмент и ему будет нужен доступ к виртуальной машине. Создаем правило со следующими параметрами:

Мы создали чистую VM и в итоге у вас должно получиться примерно так:

И самое главное — не забывайте выключать VM, когда закончили работу!

3. Установка Anaconda и дополнительных пакетов

Запускаем созданный Instance, подключаемся через SSH и для установки дистрибутива Анаконды вводим в командной строке:

В конце установки не забудьте ввести «yes», чтобы прописать переменную PATH
Ставим любимые пакеты:

И переходим к настройке Jupyter Notebook.

4. Настройка Jupyter Notebook

Вводим в командную строку (порт — который вы указали в настройках брандмауэра):

И теперь один интересный момент. Если у вас всё прошло успешно, то после старта Jupiter Server в баше вы увидите примерно это:

Если перейти по ссылке, то в браузере вывалится ошибка авторизации, что совершенно очевидно. Для этого в строке браузера надо явно указать, созданный выше внешний статический IP:

Добро пожаловать на борт!

Теперь нам осталось только настроить File Transfer между нашей локальной системой и удаленной. Без этого леса Амазонки не изучить.

5. Настройка File Transfer

У нас загрузочный диск Linux и поэтому доступны четыре способа:

Подробно можно почитать здесь и выбрать наиболее понравившийся способ. У меня на ноутбуке Windows 10, поэтому выбор не богатый. Пойдём не самым простым путём и подробно рассмотрим четвёртый способ.

Для начала необходимо сгенерировать SSH ключи. Скачиваем дистрибутив PuTTY и устанавливаем. С его помощью будем генерить ключи.

Осталось совсем немного, самая приятная часть — настроить файл-менеджер WinSCP.

В дополнительных настройках указываем private key и выставляем галочки как на скриншоте.

Дополнительно хочу заметить, что использовать один Instance не очень разумно экономически. Разные задачи требуют разных ресурсов. Можно создать двенадцать виртуалок с разными настройками процессоров, памяти и графики или работать с имейджами. Экспериментируйте и любите данные.

Источник

Бесплатный VPS (VDS) от Google навсегда: как получить

Бесплатный VPS (VDS) от Google Cloud навсегда — это отличный способ начать обучение с облачной платформой и тренироваться в интерфейсе системе.

Как получить бесплатный VDS/VPS от Google Cloud

Для получения полностью бесплатного сервера потребуется перейти на страницу облачной платформы:

После кликаем на «Get started for free».

Далее соглашаемся с условиями обслуживания и даем данные карты.

Важно! Система спишет 1$ с дебетовой/кредитной карты после чего сразу же вернет их.

Теперь попадаем в панель Google Cloud, где потребуется кликнуть на меню (левый-верхний угол).

Далее выбираем пункт «Compute Engine»-«Экземпляры ВМ».

Важно! В течение нескольких минут произойдет активация услуги, после чего создаем новый сервер.

Важно! При создании виртуальной машины потребуется использовать не тарифицирующиеся мощности, которые указаны ниже.

Приступаем к настройкам загрузочного диска, для чего кликаем на «Изменить».

Для полностью бесплатного использования выбираем одну из операционных систем:

В качестве размера диска используем 10/29 Гб.

После создание виртуальной машины можно начать работу при помощи удобной SSH-панели.

Параметры и ограничения

Важно! Каждому пользователю для тестирования предоставляется 365 дней и 300$, чего вполне достаточно для выполнения достаточно требовательных задач.

Важно! Машина будет работать с некоторыми ограничениями, с которыми можно ознакомиться ниже.

В итоге мы получаем полностью бесплатный навсегда VDS в облаке Google со следующими параметрами:

Также можно ознакомиться с другими способами получения бесплатного виртуального сервера, например, от Oracle или Amazon.

Источник

Читайте также:  current volume что это
Сказочный портал