Introducing DigitalOcean Virtual Private Cloud (VPC) and Trust Platform



У нас есть некоторые новости, которые могут вас заинтересовать, особенно если вы используете DigitalOcean для профессиональных проектов, или, если вы когда-нибудь хотелось, чтобы вы могли.

Мы рады представить вам DigitalOcean Virtual Private Cloud (VPC) и нашей новой Целевой платформы. Вместе они делают это проще архитектору и запустить серьезные бизнес-приложения с еще более сильной безопасности и уверенности в себе.

Что такое VPC?
DigitalOcean имеет, на некоторое время теперь, разрешено запускать ресурсы, которые создают в частной сети. После включения Private Networking создает второй сетевой интерфейс, который доступен только за счет ресурсов в рамках частной сети.

VPC является естественным продолжением нашей существующей функциональности, и имеет следующие улучшения:
  • VPC позволяет создать несколько частных сетей для вашей учетной записи или вашей команды, вместо того, чтобы только одна частная сеть.
  • DigitalOcean может автоматически генерировать диапазон адресов IP частной сети, либо вы можете указать свой собственный.
  • Теперь вы можете настроить Капельки вести себя как интернет — шлюзы.
www.digitalocean.com/docs/networking/vpc/resources/droplet-as-gateway/

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

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


Для получения дополнительных указаний относительно того, как использовать VPC, пожалуйста, обратитесь к нашей документации.
www.digitalocean.com/docs/networking/vpc/

Trust Platform: ваш хаб для всех вещей безопасности и конфиденциальности
Многие компании требуют таких функций, как VPC, а также хотят, чтобы понять, каким образом мы обеспечиваем нашу инфраструктуру и защитить данные клиентов. Сегодня мы рады направить вас на нашу новую Целевой платформу. Этот новый микросайт дает вам одно место, чтобы получить все ваши вопросы безопасности и конфиденциальности отвеченных и загрузить имеющиеся у нас сертификаты безопасности.
www.digitalocean.com/trust

Давайте делать добро вместе с центром DigitalOcean для добра



Наше сообщество больше, чем мы. Это одна из наших основных ценностей в DigitalOcean. Наша миссия служить мировому сообществу стала еще более насущной, поскольку мы все ощущаем воздействие пандемии COVID-19.

Мы стремимся поддерживать разработчиков и предпринимателей во всем мире, мы знаем, насколько мощными могут быть технологии для реальных изменений и достижения положительных результатов перед лицом вызовов. По этой причине мы с гордостью рассказываем о запуске нашего Hub for Good.

DigitalOcean Hub for Good — это программа, которую мы разработали для поддержки усилий по оказанию помощи в это неопределенное время. Благодаря этой инициативе наше сообщество может объединиться для создания и обмена проектами и ресурсами с миссиями, сосредоточенными вокруг усилий по оказанию помощи COVID-19.

Hub for Good был разработан с учетом этих жизненно важных групп:
  • Разработчики, создающие инструменты, запускающие проекты и организовывающие хакатоны для объединения сотрудников
  • Новаторы, участники и преподаватели, которые хотят участвовать, учиться или делиться своими знаниями
  • Партнеры, которые хотели бы объединить усилия с нами в этом усилии и поделиться ресурсами с сообществом

В рамках DigitalOcean Hub for Good мы обязуемся сделать следующее:
  • 100 000 долларов на инфраструктурные кредиты. Эти гранты поддерживают наше основное сообщество разработчиков и новаторов, которые используют технологии, чтобы оказать положительное влияние на мир. Мы предоставим до 1000 долларов в виде кредитов каждому новому некоммерческому проекту, связанному с COVID-19, который нуждается в облачных сервисах.
  • Пожертвование в размере 50 000 долларов США в наш Фонд помощи COVID-19. Мы понимаем, что самые насущные потребности часто носят экономический характер, и для нас большая честь поддерживать медицинских работников на переднем крае, исследователей, ведущих научные разработки и инициативы, и тех, кто сталкивается с особой суматохой в это время. Наш фонд оказывает поддержку нескольким организациям, в том числе: «Прямой помощи», Международному медицинскому корпусу, Центру по борьбе с бедствиями, Фонду Организации Объединенных Наций и «Партнерам в области здравоохранения».
  • Повышение осведомленности о проектах, связанных с COVID-19, и предоставление учебных ресурсов для разработчиков. Мы поделимся этими проектами, чтобы привлечь больше добровольцев и соавторов, продолжая при этом поддерживать разработчиков, поскольку они учатся и повторяют свои идеи. Помимо включения проектов в Hub for Good, мы будем освещать некоторые из них в Instagram Live по четвергам в 12:00. СТАНДАРТНОЕ ВОСТОЧНОЕ ВРЕМЯ. Следите за нами @thedigitalocean, чтобы быть в курсе новинок и функций Hub for Good.
www.brightfunds.org/funds/write-for-donations-covid-19-relief-fund

Мы гордимся тем, что поддерживаем тех, кто вносит изменения в усилия COVID-19, и вдохновляют на дальнейшие действия. Мы надеемся, что вы присоединитесь к нам в нашей миссии, чтобы поднять наше сообщество и оказать положительное влияние на других. Пожалуйста, посетите Центр добра, чтобы узнать больше, принять участие и распространять информацию.
www.digitalocean.com/community/pages/covid-19

DigitalOcean Информационный бюллетень



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

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

Обновления продуктов
Bandwidth Цена Калькулятор: наш новый инструмент, который поможет вам оценить великовозрастных расходы за счет исходящего перевода из ваших DigitalOcean ресурсов.

Новый 1-Click Программы в DigitalOcean Marketplace: Мы запустили несколько новых предварительно 1-Click приложений, чтобы помочь вам сэкономить время и устранить хлопоты провизий серверов. При развертывании одного из наших 1-Click Apps, теперь вы можете получить доступ к инструкциям для приложения, нажав на ссылку Get Started рядом с Droplet на домашней странице проекта.
marketplace.digitalocean.com
  • Куратор коллекция 1-Click Программы для работы из дома или удаленно
  • Strapi: ведущий с открытым исходным кодом Node.js Безголовый CMS
  • Kepler: мощный перетащить и падение WordPress веб — сайт строитель
  • Доко: полнофункциональный с открытым исходным кодом ERP
  • Jelastic PaaS: автоматизирует создание, масштабирование, кластеризация и обновления безопасности microservices и монолитных приложений
  • Титр: простой и современный способ отслеживать время, проведенные на проектах

Платежная история конечной точка теперь доступна в DigitalOcean API: Наряду с счетами и балансом конечных точками, опубликованных ранее в этом году, наша третья волна улучшений API биллинга в настоящее время добавляет billing_history конечной точки, которая позволяет получить доступ к прошлому выставлению суммы, выплаты составили, кредиты, предоставленные и т.д. Проверить из Документов по истории выставления счетов конечной точке и дайте нам знать, что вы думаете.
developers.digitalocean.com/documentation/v2/#billing-history

Удаление связанных ресурсов: Если вы уничтожить капельку, теперь вы можете легко удалить соответствующие ресурсы как снимки и объемы.
www.digitalocean.com/docs/droplets/how-to/destroy/

Управляется баз данных для MySQL: Начиная с MySQL 8.0, плагин аутентификации по умолчанию был изменен на caching_sha2_password. MySQL 5.7 используется mysql_native_password по умолчанию. Если вы работаете в проблемы, с аутентификацией существующих клиентов и приложений, пожалуйста, обновите ваш метод аутентификации пользователя.
www.digitalocean.com/docs/databases/mysql/how-to/manage-users-and-databases/

Новые учебники
Если вы любите разработки локально VS кодекс, но хотите, чтобы запустить выполнение программы или юнят — тесты на удаленном сервере, выполните инструкцию Мейсона Эггер, Как использовать Visual Studio Код для удаленной разработки через Remote-SSH плагин.
www.digitalocean.com/community/tutorials/how-to-use-visual-studio-code-for-remote-development-via-the-remote-ssh-plugin

Узнайте разницу между выходом и возвращением внутри генератора и многое другое об этих функциях JavaScript в учебнике Tania Rascia, в Понимание генераторов в JavaScript.
www.digitalocean.com/community/tutorials/understanding-generators-in-javascript

Как масштабировать приложения с DigitalOcean Kubernetes, важно рассмотреть вопрос о безопасности. Рекомендуемые шаги для обеспечения DigitalOcean Kubernetes кластера по Дамасо Sanoja проведет вас через фундаментальные шаги, которые необходимо предпринять, чтобы обеспечить кластер.
www.digitalocean.com/community/tutorials/recommended-steps-to-secure-a-digitalocean-kubernetes-cluster

Вебинары, события и Meetups
Вебинары

Построение SaaS, Часть 1: Customer-Driven Development продукта
9 апреля, 12:00 вечера ET
В этом разговоре, старший директор DigitalOcean по управлению продуктами, Джейк Levirne, изучат методики, которые помогают нам постоянно ориентируются на потребности наших клиентов, опираясь только достаточно, чтобы узнать и итерацию к их желаемым результатам. Регистрация здесь.
register.gotowebinar.com/register/137068823743283211

Построение модели SaaS, Часть 2: Разработка вашего приложения, спереди назад
12 апреля, 12:00 вечера ET
Построение модели SaaS предполагает кодирование во многих различных областях бизнеса. Есть вещи, чтобы сосредоточиться на развитии как внешнего интерфейса, UI / UX, развитие серверной, биллинга, аутентификации и многое другое. В этом вебинаре, Крис на кодексе будет смотреть на то, что нужно для создания SaaS и начать получать оплаченные клиент. Регистрация здесь.

Advocate Разработчик Mason Egger Livestream
Настройтесь на каждую среду в 2:00 вечера ET для кодирования на прямой трансляции дергаться и YouTube.
register.gotowebinar.com/register/6223137262855573003

Смотрите запись: Ввод «A» в JAMStack с Безголовым CMS
Если вы пропустили его, проверить запись на YouTube.
www.youtube.com/c/MasonEgger
www.youtube.com/watch?v=NCNWFtQzDxE

Виртуальные события и Meetups
[26 марта]
Cloudflare + DigitalOcean: ОСС, общественные здания, и Вы
Узнайте основополагающие части на создании инфраструктуры, сообщества и многое другое.
www.eventbrite.com/e/virtual-cloudflare-digitalocean-oss-community-building-and-you-tickets-99278127552

[31 марта]
Основатель День с Twilio
Присоединиться к этой виртуальной однодневной конференции сделал для учредителей, новаторов и мечтателей!
www.crowdcast.io/e/founder-day-for-startups/register

DigitalOcean Hatch вступает в партнерство с программой стартапов Twilio



Глобальная стартап-программа DigitalOcean, Hatch, призвана поддерживать стартапы по мере их запуска и масштабирования. После того, как мы поддержали активное, растущее и глобальное сообщество стартапов 5k +, мы рады продолжить наши усилия, чтобы поддержать мечты предпринимателей по всему миру.

Сегодня мы рады объявить о нашем партнерстве с программой Twilio Startups. Внимание Twilio к разработчикам и стартапам полностью соответствует основным ценностям DigitalOcean. Наши компании сосредоточены на предоставлении простых, мощных и платных облачных и коммуникационных платформ, которые позволяют предпринимателям делать то, что у них получается лучше всего.

Ранее в 2018 году наши компании сотрудничали в рамках Hacktoberfest, месячного празднования Open Source, проводимого DigitalOcean, для поддержки и взаимодействия с мировым сообществом разработчиков и разработчиков открытого кода.

Это партнерство означает для стартапов Hatch то, что теперь у них также будет доступ к преимуществам программы Twilio Startups, которая включает в себя 12-месячный кредит на продукт, доступ к наставничеству и сетевые возможности исключительно для участников программы. Аналогичным образом, стартапы программы Twilio получат доступ к Hatch и всем преимуществам программы, включая кредиты DigitalOcean Cloud, доступ к приоритетной поддержке, наставничество и глобальное сообщество Hatchers.

Мы планируем проводить больше совместных рабочих часов и онлайн-семинаров с командой стартапов Twilio для продолжения поддержки стартапов. Проверьте и обратитесь к Hatch, чтобы стать частью растущего сообщества стартапов.

digitalocean.com/hatch
www.twilio.com/blog/twilio-startups-team
hacktoberfest.digitalocean.com/

The DigitalOcean Newsletter: February



Любопытно, чем мы занимались в последнее время? Читайте дальше, чтобы рассказать о всех вещах DigitalOcean, включая обновления продуктов, новые учебные пособия, предстоящие события и многое другое.

Обновления продукта
Новый Центр поддержки DigitalOcean облегчает поиск ответов на ваши вопросы или получение необходимой вам помощи. Выполняйте поиск по документации по продуктам, а также по учебным пособиям и форумам сообщества — все в одном месте.
www.digitalocean.com/support/start/

Базовые образы для CentOS 8.1 и RancherOS 1.5.5 теперь доступны для Droplets на панели управления и через API.

DigitalOcean Terraform Provider версия 1.14.0 теперь доступна. В этом выпуске добавлена ​​поддержка тегов кластеров управляемых баз данных.
www.terraform.io/docs/providers/do/index.html

DigitalOcean CLI (doctl) версия 1.38.0 теперь доступна. В этом выпуске добавлена ​​возможность получения остатков на счетах.
github.com/digitalocean/doctl

В январе мы выпустили первую конечную точку биллинга для наших API, которая позволяла пользователям запрашивать информацию о балансе. Теперь мы добавили поддержку счетов-фактур, которая еще больше расширяет возможности клиентов по программному мониторингу и управлению своими расходами с помощью DigitalOcean.
developers.digitalocean.com/documentation/v2/#invoices

Новые уроки
Независимо от того, пытаетесь ли вы понять волнение вокруг Kubernetes или уже какое-то время масштабируете свои приложения с ним, недавно выпущенная электронная книга DigitalOcean: Kubernetes для разработчиков с полным стеком поможет вам продолжать развивать свои приложения и предоставлять их своим пользователям.
www.digitalocean.com/community/books/digitalocean-ebook-kubernetes-for-full-stack-developers

Если обслуживание вашего сервера кажется утомительным, cron поможет вам свести к минимуму повторяющиеся ручные задачи. Узнайте больше, прочитав наш учебник: Как использовать Cron для автоматизации задач в Ubuntu 18.04.
www.digitalocean.com/community/tutorials/how-to-use-cron-to-automate-tasks-ubuntu-1804

Как написать асинхронный код в Node.js предоставляет вам информацию, необходимую для обратных вызовов, обещаний и асинхронного ожидания, чтобы ваши приложения могли выполнять другой код, ожидая при этом длительных действий, таких как сетевые запросы.
www.digitalocean.com/community/tutorials/how-to-write-asynchronous-code-in-node-js

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

Вебинары, события и встречи
Помещение «A» в JAMStack с 3-мя безголовыми CMS: Wordpress, Ghost и Strapi
12 марта, 13:00 ET
На этом вебинаре Крис, основатель Scotch.io, расскажет о лучших практиках JAMStack и о некоторых способах настройки уровня API, запустив безголовую CMS на DigitalOcean Droplets. Зарегистрируйтесь для участия здесь.

Автоматизация сложности вне установки сервера с Ansible
26 марта, 11:30 утра по восточному времени
Из-за одноразового характера современных сред приложений автоматизация сервера теперь играет важную роль в системном администрировании. Инструменты управления конфигурацией, такие как Ansible, обычно используются для оптимизации процесса. Этот вебинар продемонстрирует, как использовать Ansible для автоматизации настройки ваших капель. Зарегистрируйтесь здесь.

Использование инфраструктуры в качестве кода для построения воспроизводимых систем с Terraform на DigitalOcean
Посмотрите эту запись и узнайте, как спроектировать вашу инфраструктуру как код.

DigitalOcean Droplets: современный обзор
На этом вебинаре рассматриваются современные функции Droplet и рассматриваются такие темы, как изменение размера, масштабирование, сохранение и защита вашего сервера. Если вы пропустили это, проверьте запись.

События и встречи
[3 марта] Тель-Авив, Израиль
Международная конференция Node.js
Обязательно посетите выступление Камала Насера ​​о переходе от «npm init» к «kubectl create:« Начало работы с Node.js в Kubernetes ».

[13-16 марта] Остин, Техас
Юг юго-западом
Забронируйте время с командой Hatch в рабочее время и весело приготовьте барбекю!

[24-26 марта] Санта-Клара, Калифорния
SREcon
Обзываю всех инженеров! Поймай какое-то время с командой «Хэтч», чтобы уделить внимание один на один.

Внутри DigitalOcean
Мы с гордостью сообщаем о нашем недавнем банковском долговом финансировании в размере 300 миллионов долларов. Этот капитал позволит нам продолжать инвестировать в построение бизнеса, отвечающего потребностям наших клиентов. Узнайте больше о том, что это значит для нашего бизнеса и сообщества от нашего генерального директора Янси.
hosting.kitchen/digitalocean/obnovlennaya-informaciya-o-biznese-digitalocean.html

Пытаетесь начать собственный исследовательский проект? Наши команды разработчиков продуктов и дизайна начали официальную исследовательскую работу под названием «Проект разработчика» и поделились своим процессом поиска пользователей для проведения интервью и проведения этих интервью.
blog.digitalocean.com/how-to-conduct-user-interviews/

Обновленная информация о бизнесе DigitalOcean



Прошло немногим более шести месяцев с тех пор, как я присоединился к DigitalOcean в качестве генерального директора, и с каждым днем ​​я все больше и больше радуюсь возможности, которая нас ожидает. Сегодня я рад поделиться некоторыми хорошими новостями для всех в нашем сообществе.

Я рад объявить, что мы закрыли банковское долговое финансирование на сумму 300 миллионов долларов США с консорциумом коммерческих кредиторов, которые увеличивают капитал, доступный нам для инвестирования в создание бизнеса, отвечающего потребностям разработчиков и предпринимателей. и малый бизнес по всему миру. Обладая этим капиталом, который включает в себя финансирование в размере 100 млн. Долл. США от новых кредиторов, мы полностью профинансировали наш бизнес с целью обеспечения прибыльности и достижения нашего стремления получить более 1 млрд. Долл. США в течение следующих пяти лет.

Для нашей команды это огромные новости, но для нашего сообщества мы считаем, что это еще больше. Когда DigitalOcean была впервые основана, мы сосредоточились на создании предложения, специально адаптированного к потребностям недостаточно обслуживаемого сегмента рынка — разработчика. Со временем, по мере того как наши предложения расширялись, мы расширили наше внимание, чтобы включить предпринимателей и малый и средний бизнес (SMB), которым, как и разработчикам, нужны простые решения, которые помогут им получить выгоду от своих идей.

Сегодня мы гордимся тем, что поддерживаем сообщество, насчитывающее более четырех миллионов разработчиков и активную клиентскую базу из более чем 500 000 человек, более половины из которых являются предприятиями. Мы также смогли установить сильное присутствие во всем мире: почти две трети наших клиентов прибыли из-за пределов США.

С тех пор как я присоединился, я встречался со многими, многими клиентами и партнерами. На каждой встрече меня поражают удивительные компании и проекты, которые они создали и строят на вершине DigitalOcean. Я также поражен общностью этих клиентов. Потребность в простоте наших продуктов, прозрачность затрат, непоколебимая поддержка, чтобы помочь им, и инвестиции в их обучение с помощью учебных пособий и мероприятий — и, конечно, любовь к обслуживанию наших клиентов — остаются для нас ключевыми.

Я так горжусь тем, что многие наши клиенты рассказывают о том, как они нашли своего партнера и «дом» здесь, в DigitalOcean.

The DigitalOcean Newsletter



Обновления продукта
Теперь клиенты могут добавить любое из наших 15 (и расширяющихся!) Приложений DOKS Marketplace 1-Click в существующий кластер DOKS. Мы также выпустили несколько новых приложений 1-Click на каплях, в том числе:
  • Caddy, веб-сервер с открытым исходным кодом
  • ZoomAdmin, панель управления хостингом
  • Directus, CMS с открытым исходным кодом

  • Регистр контейнеров DigitalOcean теперь доступен в раннем доступе. С помощью Container Registry вы можете легко хранить и управлять частными образами контейнеров с помощью простого развертывания в DigitalOcean Kubernetes.
  • Теперь владельцы команд могут требовать, чтобы члены команды включали двухфакторную аутентификацию при входе в свои учетные записи. Команды также позволяют нескольким пользователям безопасно и эффективно совместно работать над проектами со всеми проектами и связанными ресурсами на одном счете.
  • Мы рады сообщить, что теперь вы можете использовать API DigitalOcean для программного доступа к платежным данным. Мы раскрыли конечную точку «Баланс», которая предоставляет информацию, включая остаток на вашем счете, остаток за месяц, использование за месяц и метку времени создания баланса. Вот документация.
  • В настоящее время доступна версия 1.12 провайдера DigitalOcean Terraform с улучшенной поддержкой управляемых баз данных и DigitalOcean Kubernetes.
  • Капли общего назначения теперь доступны в центре обработки данных в Лондоне (LON1), а также в других наших глобальных точках. Капли общего назначения имеют 4 ГБ ОЗУ для каждого 100% выделенного виртуального ЦП и хорошо подходят для критически важных приложений.
  • Доступные в Сингапуре (SGP1) дата-центр, в дополнение к другим глобальным точкам, наши капли с оптимизированной памятью имеют 8 ГБ ОЗУ для каждого 100% выделенного виртуального ЦП. Эти капли идеально подходят для приложений, интенсивно использующих оперативную память.

От 15 000 подключений к базам данных до 100: история о долговых обязательствах DigitalOcean

Недавно за обедом меня попросил новый сотрудник: «Как выглядит технический долг DigitalOcean?»

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

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

Глядя на новый прокат через стол, я глубоко вздохнул и начал. «Позвольте мне рассказать вам о времени, когда у нас было 15 000 прямых подключений к нашей базе данных…»


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

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

Как и GitHub, Shopify и Airbnb, DigitalOcean была запущена как приложение Rails в 2011 году. Приложение Rails, внутренне известное как Cloud, управляло всеми взаимодействиями пользователей как в пользовательском интерфейсе, так и в открытом API. В оказании помощи Rails работали две службы Perl: планировщик и DOBE (DigitalOcean BackEnd). Планировщик планировал и назначал Droplets гипервизорам, а DOBE отвечал за создание реальных виртуальных машин Droplet. В то время как облако и планировщик работали как отдельные службы, DOBE работал на каждом сервере в парке.

Ни Cloud, ни Scheduler, ни DOBE не общались напрямую друг с другом. Они общались через базу данных MySQL. Эта база данных выполняла две функции: хранение данных и посредничество в общении. Все три службы использовали одну таблицу базы данных в качестве очереди сообщений для передачи информации.

Каждый раз, когда пользователь создавал новую каплю, Cloud вставлял новую запись события в очередь. Планировщик непрерывно опрашивает базу данных каждую секунду на предмет новых событий Droplet и планирует их создание на доступном гипервизоре. Наконец, каждый экземпляр DOBE будет ожидать создания новых запланированных капель и выполнения задачи. Чтобы эти серверы могли обнаружить какие-либо новые изменения, каждый из них должен будет опросить базу данных на предмет новых записей в таблице.


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

В течение четырех лет очередь сообщений базы данных составляла основу технологического стека DigitalOcean. В течение этого периода мы приняли микросервисную архитектуру, заменили HTTPS на gRPC для внутреннего трафика и вытеснили Perl в пользу Golang для внутренних сервисов. Однако все дороги все еще вели к этой базе данных MySQL.

Важно отметить, что просто потому, что что-то является «наследием», не означает, что оно не функционирует и должно быть заменено. Bloomberg и IBM имеют устаревшие сервисы, написанные на Fortran и COBOL, которые приносят больший доход, чем целые компании. С другой стороны, каждая система имеет предел масштабирования. И мы собирались ударить наших.

С 2012 по 2016 год пользовательский трафик DigitalOcean вырос более чем на 10 000%. Мы добавили больше продуктов в наш каталог и услуг для нашей инфраструктуры. Это увеличило вход событий в очередь сообщений базы данных. Повышенный спрос на Droplets означал, что планировщик работал сверхурочно, чтобы назначить их всем серверам. И, к сожалению, для Планировщика, количество доступных серверов не было статичным.


Чтобы не отставать от возросшего спроса на капли, мы добавляли все больше и больше серверов для обработки трафика. Каждый новый гипервизор означал другое постоянное соединение с базой данных. К началу 2016 года база данных имела более 15 000 прямых соединений, каждое из которых запрашивало новые события каждые одну-пять секунд. Если это было не так уж плохо, SQL-запрос, который каждый гипервизор использовал для извлечения новых событий Droplet, также усложнялся. Он стал колоссом длиной более 150 строк и присоединился к 18 столам. Это было столь же внушительно, как это было ненадежно и трудно поддержать.

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

И из-за тесной связи в системе не было четкого или простого решения проблем. Облако, планировщик и DOBE — узкие места. Исправление только одного или двух компонентов только сместит нагрузку на оставшиеся узкие места. Поэтому после долгих размышлений инженерный персонал разработал трехэтапный план исправления ситуации:
  • Уменьшить количество прямых соединений с базой данных
  • Алгоритм ранжирования Refactor Scheduler для повышения доступности
  • Освободить базу данных от своих обязанностей в очереди сообщений
  • Рефакторинг начинается
Чтобы справиться с зависимостями базы данных, инженеры DigitalOcean создали Event Router. Маршрутизатор событий выполнял роль регионального прокси-сервера, который опрашивал базу данных от имени каждого экземпляра DOBE в каждом центре обработки данных. Вместо тысяч серверов, каждый из которых запрашивает базу данных, будет только несколько прокси, выполняющих запросы. Каждый прокси-сервер Event Router будет извлекать все активные события в определенном регионе и делегировать каждое событие соответствующему гипервизору. Event Router также разбил гигантский опросный запрос на те, которые были меньше и проще в обслуживании.


После запуска Event Router количество подключений к базе данных сократилось с 15 000 до менее 100.

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

Хотя это звучит достаточно просто, у Scheduler было несколько недостатков. Его логика была сложной и сложной для работы. Он был однопоточным, и его производительность пострадала во время пиковой нагрузки. Наконец, был только один экземпляр планировщика — и он должен был обслуживать весь флот. Это было неизбежное узкое место. Чтобы решить эти проблемы, команда разработчиков создала Scheduler V2.

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

Event Router и Scheduler v2 были большими достижениями, которые устраняли многие архитектурные недостатки. Несмотря на это, было явное препятствие. Централизованная очередь сообщений MySQL все еще использовалась — даже суетливо — к началу 2017 года. Она обрабатывала до 400 000 новых записей в день и 20 обновлений в секунду.

К сожалению, удаление очереди сообщений базы данных было нелегким делом. Первым шагом было предотвращение прямого доступа к сервисам. База данных нуждалась в уровне абстракции. И ему нужен API для агрегирования запросов и выполнения запросов от его имени. Если какой-либо сервис хочет создать новое событие, он должен сделать это через API. И вот, Гарпун родился.

Однако создание интерфейса для очереди событий было легкой задачей. Получить бай-ин от других команд оказалось сложнее. Интеграция с Harpoon означала, что командам придется отказаться от доступа к базе данных, переписать части своей кодовой базы и в конечном итоге изменить то, как они всегда делали что-то. Это было нелегко продать.

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

Теперь настоящая работа началась. Полный контроль над системой событий означал, что у Harpoon была возможность заново изобрести рабочий процесс Droplet.

Первая задача Гарпуна состояла в том, чтобы извлечь из базы данных обязанности очереди сообщений. Для этого Harpoon создал собственную внутреннюю очередь сообщений, состоящую из RabbitMQ и асинхронных рабочих. Когда Гарпун выдвинул новые события в очередь с одной стороны, рабочие вытянули их с другой. И так как RabbitMQ заменил очередь базы данных, работники могли свободно общаться непосредственно с Планировщиком и Маршрутизатором событий. Таким образом, вместо того, чтобы Scheduler V2 и Event Router опрашивали новые изменения в базе данных, Harpoon отправлял обновления прямо в них. На момент написания статьи в 2019 году именно здесь находится архитектура событий Droplet.


За последние семь лет DigitalOcean выросла из корней гаражных групп в признанного поставщика облачных услуг, которым она является сегодня. Как и другие переходные технологические компании, DigitalOcean регулярно занимается устаревшим кодом и техническими долгами. Независимо от того, разбиваете ли вы монолиты, создаете многорегиональные сервисы или устраняете отдельные точки отказа, мы, инженеры DigitalOcean, всегда работаем над созданием элегантных и простых решений.

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

https://www.digitalocean.com

DigitalOcean-х 2019 год в обзоре



Это было захватывающее 2019 здесь DigitalOcean, и мы хотели бы воспользоваться возможностью поделиться тем, что мы были до. Со всеми, что делает наше сообщество в виду, мы много работали в течение последнего года, чтобы обеспечить новые возможности — и запускать новые продукты, которые лучше обслуживать каждого из вас.

Как всегда, мы приветствуем любые идеи и предложения, которые Вы имеете для нашей дорожной карты 2020 продукта. Наша команда отзыв это на регулярной основе, и надеюсь на ваши идеи.
ideas.digitalocean.com/ideas

Капельки
Общее назначение Капелька с выделенной вычислительной мощностью >>
В апреле мы объявили о доступности общего назначения Капельки с выделенной вычислительной мощностью. Эти сценарии поддержки, требующих высокой производительности, таких как весьма торговли веб-серверов и серверов приложений, баз данных, серверов объявлений, игровых серверов и многое другое.
blog.digitalocean.com/general-purpose-droplets-let-you-do-more/

Память оптимизированная DROPLETS теперь вообще доступны >>
Наша память-Оптимизированные DROPLETS поддержка памяти ресурсоемких приложений, таких как базы данных, высокопроизводительных, веб — масштаба в памяти кэшей и индексов, в режиме реального времени обработки больших объемов данных и ресурсоемких бизнес — приложений.
blog.digitalocean.com/memory-optimized-droplets-generally-available/

Kubernetes и управляемые базы данных
Управляемые Kubernetes для сборки облачных родной приложений с использованием технологий с открытым исходным кодом >>
С нашей Kubernetes предложения, мы сделали это просто для создания облачных приложений с использованием родной технологии с открытым исходным кодом — все время оставляя сложность и управление Kubernetes нам. Просто определите размер и местоположение ваших рабочих узлов и пусть нам положение, управлять и оптимизировать услуги, необходимые для работы кластера.
blog.digitalocean.com/doks-in-ga/

Управляемые базы данных для MySQL, Redis и PostgreSQL >>
Многие из наших клиентов выразили удовлетворение по поводу запуска управляемых баз данных для PostgreSQL, так как это позволило им сосредоточиться на создание приложений и оставить трудоемкую конфигурацию базы данных, настройку и управление для нас. С тех пор мы добавили поддержку MySQL и Redis, а также. Теперь мы предоставляем полностью управляемый опыт для трех наиболее популярных баз данных с открытым исходным кодом в мире.
www.digitalocean.com/docs/databases/

Базарная площадь
Вводя Marketplace, нашу платформу для предварительно настроены 1-Click Программы >>
Мы запустили Marketplace в марте, чтобы сделать его легким для разработчиков, чтобы начать работу в облаке. Первоначальный запуск включал в себя набор подобранный 1-Click приложения, такие как WordPress, графана, OpenFaaS, и многое другое. Сегодня мы имеем более чем 100 1-Click Apps в вашем распоряжении.
blog.digitalocean.com/introducing-digitalocean-marketplace/

Развертывание предварительно сконфигурированные решения Kubernetes как 1-Click Программы из Marketplace >>
Мы расширили наш рынок, чтобы включить 1-Click Программы не только на каплях, но и на Kubernetes кластеров, управляемых нашей службы DigitalOcean Kubernetes. Мы также добавили поддержку кластера автомасштабирования, токенизированную аутентификацию и незначительные обновления версий в управляемых услугах.
blog.digitalocean.com/new-on-digitalocean-kubernetes/

Программы
Решения Партнерская программа позволяет компаниям сотрудничать с DigitalOcean >>
Наши решения Партнерская программа позволяет компаниям сотрудничать с нами, предоставляя облачных решений для своих клиентов. Это партнерство увеличивает количество способов разработчиков и клиентов могут взаимодействовать с DO.
blog.digitalocean.com/introducing-our-solutions-partner-program/

Hacktoberfest празднование технологий с открытым исходным кодом, заключенного с 150,000 участвующих репозиториев >>
Уже шестой год подряд наша Hacktoberfest месячного привел людей по всему миру вместе, чтобы поддерживать технологии с открытым исходным кодом. В то время как наша миссия остается неизменной, количество событий и вкладов продолжает возглавлять хит — парады с каждым годом. В этом году мы закончили в октябре месяце с 673 событий, 62000 вызов доработок, 482,000 выдвижными запросов, открытых и 150,000 участвующих хранилищ через 150 стран. Если вы не участвовали в прошлом, мы надеемся, что вы присоединитесь к нам в следующем году!
blog.digitalocean.com/recapping-hacktoberfest-6/

Memory-Optimized Droplets are Generally Available



Память оптимизированной Капельки теперь общедоступна
Производительность и стабильность ваших приложений могут сильно зависеть от характеристик инфраструктуры вы используете. Вот почему, по состоянию на сегодняшний день, еще один виртуальный тип экземпляра машины, как правило, доступны: Память оптимизированная Капелька, с памятью и выделенными вычислениями в соотношении 8GB: 1vCPU.

Почему вам может понадобиться Memory оптимизированная DROPLETS?
Памяти, оптимизированные Капельки особенно полезны для такого рода нагрузок:
  • Высокопроизводительный SQL или базы данных NoSQL
  • Веб-масштаб в памяти кэшей и индексов
  • В режиме реального времени обработки больших данных
  • Память ресурсоемкой, производство бизнес — приложения
Посмотрите на все доступные варианты цен и узнать больше о выборе правильного типа Droplet для вашего приложения, используя эти принципы.

Памяти, оптимизированные Капельки, как правило, доступны в следующих центрах обработки данных: Нью-Йорк (NYC1, nyc3), Сан-Франциско (SFO2) и Амстердам (AMS3). Мы ожидаем, чтобы добавить эти типы капелька в Сингапуре (SGP1) в течение следующих нескольких недель, и другие центры обработки данных в ближайшие месяцы.

https://www.digitalocean.com