2013-09-28 3 views
11

На домашней странице AppScale есть ссылка на их Documentation page. Однако, эта страница имеет только документацию оГде находится основная документация по AppScale?

  1. Как установить раздел AppScale
  2. «Дополнительно» о том, как обрабатывать различные конкретные вещи.

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

  • Какова основная архитектура AppScale? Как это работает? (Кроме того, что он похож на GAE)
  • Как обновить AppScale после его установки в производственной среде? Могу ли я сделать это итеративно, одна машина в то время? Я думаю, что наличие кластера с несколькими версиями AppScale (и сопутствующих сервисов) может привести к проблемам.
  • Является ли AppScale «просто» (ничего отрицательного о «просто») набором программ/сервисов (DB, веб-сервер, кеш и т. Д.), В комплекте с приятным интерфейсом для веб-GUI для легкого управления? Или там больше?
  • Как его настроить, чтобы конфигурации были согласованы во всех виртуальных машинах?
  • Где я могу найти дополнительную информацию о том, как работает балансировщик нагрузки? Точно, какая загрузка сервиса балансирует? И как?
  • Как настроить, например, базу данных Cassandra? Просто настроить Кассандру, как я обычно делаю, не связан с AppScale?
  • IP-адреса, которые я указываю в конфигурации AppScale, в точности, каким образом они относятся к сервисам? Являются ли они «точными» точками доступа AppScale к соответствующим службам или они фактически направляются каким-то образом этим сервисам, чтобы стать частью их конфигурации?
  • И этот список можно продолжить ...

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

ответ

12

Документация по умолчанию, как вы упомянули, по умолчанию: github wiki.

Есть старые документы по архитектуре и AppScale в целом, что вы можете найти здесь:

Есть несколько статей, подробно особенности в AppScale

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

Какова основная архитектура AppScale? Как это работает? (Кроме того, что она напоминает GAE)

AppScale ваша основная три уровня веба-архитектура (балансировки нагрузки, сервера приложений, хранилище данных), а также дополнительные услуги для поддержки наиболее популярного GAE API (Memcache, TaskQueue, Blobstore, и т.д).

Как обновить AppScale после его установки в производственной среде? Могу ли я сделать это итеративно, одна машина в то время? Я думаю, что наличие кластера с несколькими версиями AppScale (и сопутствующих сервисов) может привести к проблемам.

У нас нет прокатных модернизаций (пока), хотя у нас была живая миграция, работающая в лаборатории (см. Статью hotcloud выше). В настоящее время вы должны удалить AppScale, обновить каждую машину и перезапустить ее.

Является AppScale «просто» (ничего негативного о «просто») сборник программ/услуг (БД, веб-сервер, кэш и т.д.), в комплекте с хорошим веб-интерфейс передней части для легкого управления?Или там больше?

AppScale склеивает множество популярных и надежных распределенных технологий для обеспечения масштабируемого клона GAE. Эти технологии включают в себя: Cassandra, memcached, ZooKeeper, RabbitMQ, сельдерей, ejabberd и другие. Он автоматически настраивает и развертывает каждую из необходимых служб, чтобы сделать так, чтобы приложения GAE работали без изменений.

Как его настроить, чтобы конфигурации были согласованы во всех виртуальных машинах?

После инициализации у нас есть флаг можно установить «УПП: ~/AppScale», где вы можете сказать AppScale инструменты, где скопировать модифицированную версию кода (отличного от того, что работает на виртуальных машинах) для все машины. Если вы хотите сделать изменения во время выполнения, я рекомендую использовать такие инструменты, как распределенный ssh, для этого. См: http://www.netfort.gr.jp/~dancer/software/dsh.html.en

Где я могу найти больше информации о том, как балансировки нагрузки работает? Точно, какая загрузка сервиса балансирует? И как?

Балансировка нагрузки происходит с использованием nginx и HAProxy. Nginx запускается на головном узле и используется для статической файловой службы, конфигурации маршрута приложения и SSL. HAProxy используется для проверок работоспособности, и его статистика используется для автомасштабирования. Путь, который принимает веб-запрос, - Nginx -> HAProxy -> Web Server.

Как настроить, например, базу данных Cassandra? Просто настроить Кассандру, как я обычно делаю, не связан с AppScale?

AppScale автоматически настраивает и развертывает Cassandra. Если вы хотите изменить значения по умолчанию, которые мы используем для Cassandra, перейдите и измените код в appscale/AppDB/cassandra.

IP-адреса, которые я указываю в конфигурации AppScale, в точности, каким образом они относятся к сервисам? Являются ли они «точными» точками доступа AppScale к соответствующим службам или они действительно каким-то образом направляются на эти службы, чтобы стать частью их конфигурации?

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

И этот список можно продолжить ...

You can email the mailing list for these questions

Или посетите наш IRC канал на #appscale в freenode.net

Исходный код открыт, так что вы можете чтобы увидеть точную внутреннюю работу.

+2

Спасибо за подробный ответ. К сожалению, это подтвердило мои опасения по поводу разбросанной и разреженной документации: при существующем уровне документации каждый должен иметь некоторые внутренние знания или делать много экспериментов. Я пропускаю уровень документации, например, Heroku (см. Https://devcenter.heroku.com/articles/quickstart и особенно https: //devcenter.heroku.com/categories/reference), и поэтому думаю, что в AppScale слишком много неизвестных, чтобы выбрать его как платформу. – someName

+0

Я полностью согласен с someName. Я бы с удовольствием переключился на AppScale - он действительно выглядит фантастически - но после большой боли, связанной с отсутствием документации Elastic Beanstalk (которая может быть лучше, чем AppScale) или сообществом в StackOverflow, я крайне не решаюсь перейти на платформу с аналогичными недостатками. Список рассылки, по-видимому, является возможной экономией. – rattray

+1

Большая часть документации, которая имеет значение, должна поступать от Google, то есть как написать приложение. Документация для AppScale находится в Github, и она равна hwo, чтобы установить ее (она есть, этого было недостаточно), и как использовать предварительно упакованные изображения (это рекомендуемый способ ее запуска, поэтому вы можете сосредоточиться на приложении). Для внутренних дел это может быть приятно, я согласен, но в таком быстро меняющемся проекте кажется немного дорогим, чтобы поддерживать его в актуальном состоянии, и это не будет сосредоточено на разработчике приложения. – graziano

Смежные вопросы