RSS

Комментарии

Запускали новый маркетплейс с товарами широкого профиля. Долго выбирали CMS. Нам нужна была удобная и гибкая платформа, которая будет удобна и нашим сотрудникам, и продавцам, и которую мы сможем легко перенастроить под свои потребности. DST Маркетплейс в этом плане идеально нам подошла. Ее легко установить и настроить, в ней легко разобраться даже не самому подготовленному пользователю. К тому же разработчики предлагают большое количество обучающих материалов. Это еще сильнее упрощает освоение платформы.

Огромный плюс DST Маркетплейс в том, что в коробочной версии есть весь минимально необходимый функционал для запуска сайта. А если чего-то не хватает, то можно поискать готовый модуль, который решит поставленную задачу. В крайнем случае можно найти разработчиков, которые напишут модуль именно под ваши параметры. Это позволяет быстро и удобно модифицировать систему.
Запускали новый маркетплейс с товарами широкого профиля. Долго выбирали CMS. Нам нужна была удобная и гибкая платформа, которая будет удобна и нашим сотрудникам, и продавцам, и которую мы сможем легко перенастроить под свои потребности. DST Маркетплейс в этом плане идеально нам подошла. Ее легко установить и настроить, в ней легко разобраться даже не самому подготовленному пользователю. К тому же разработчики предлагают большое количество обучающих материалов. Это еще сильнее упрощает освоение платформы.

Огромный плюс DST Маркетплейс в том, что в коробочной версии есть весь минимально необходимый функционал для запуска сайта. А если чего-то не хватает, то можно поискать готовый модуль, который решит поставленную задачу. В крайнем случае можно найти разработчиков, которые напишут модуль именно под ваши параметры. Это позволяет быстро и удобно модифицировать систему.
Для меня этот движок идеальное сочетание простоты и функциональности. Начали пользоваться это системой почитав положительные отзывы, и не пожалели. Скажу сразу, для того, чтобы в ней разобраться нужно потратить время. Особенно, если у вас мало опыта работы в такой сфере. В ДСТ Мед Центр легко сразу настроить привязку к МИС системам, выдает полную статистику и аналитику. Благодаря таким функциям легко анализировать трафик, контролировать записи на прием и менять услуги. Хороший СЕО функционал. Еще очень радует мобильная версия, все-таки сейчас большая часть трафика идет именно с мобильных устройств.
Для меня этот движок идеальное сочетание простоты и функциональности. Начали пользоваться это системой почитав положительные отзывы, и не пожалели. Скажу сразу, для того, чтобы в ней разобраться нужно потратить время. Особенно, если у вас мало опыта работы в такой сфере. В ДСТ Мед Центр легко сразу настроить привязку к МИС системам, выдает полную статистику и аналитику. Благодаря таким функциям легко анализировать трафик, контролировать записи на прием и менять услуги. Хороший СЕО функционал. Еще очень радует мобильная версия, все-таки сейчас большая часть трафика идет именно с мобильных устройств.
Для меня этот движок идеальное сочетание простоты и функциональности. Начали пользоваться это системой почитав положительные отзывы, и не пожалели. Скажу сразу, для того, чтобы в ней разобраться нужно потратить время. Особенно, если у вас мало опыта работы в такой сфере. В ДСТ Мед Центр легко сразу настроить привязку к МИС системам, выдает полную статистику и аналитику. Благодаря таким функциям легко анализировать трафик, контролировать записи на прием и менять услуги. Хороший СЕО функционал. Еще очень радует мобильная версия, все-таки сейчас большая часть трафика идет именно с мобильных устройств.
Для меня этот движок идеальное сочетание простоты и функциональности. Начали пользоваться это системой почитав положительные отзывы, и не пожалели. Скажу сразу, для того, чтобы в ней разобраться нужно потратить время. Особенно, если у вас мало опыта работы в такой сфере. В ДСТ Мед Центр легко сразу настроить привязку к МИС системам, выдает полную статистику и аналитику. Благодаря таким функциям легко анализировать трафик, контролировать записи на прием и менять услуги. Хороший СЕО функционал. Еще очень радует мобильная версия, все-таки сейчас большая часть трафика идет именно с мобильных устройств.
Очень функциональная и продвинутая система, в которой есть очень много фишек и огромный функционал для решения практически любых задач

Мы переехали на DST Интернет-магазин со старой платформы и ощущение, как пересел с жигулей на мерседес.

Куча тонких настроек, отличный дизайн и проработка деталей.
Спасибо, очень полезный материал, особенно важно то что приведены примеры именно нагрузок и решения для социальных сетей, что достаточно являеться редким материалом, автору однозначно плюс
Почти всё не так. Git — это распределённая система управления версиями, но это как раз о противоположном. С точки зрения git все репозитории (клоны репозитория) равноправны. Нет выделенного «сервера», есть много репозиторииев, обычно с общей частью истории коммитов. Более того, у git почти нет сервера — это просто утилита командной строки, просто есть несколько протоколов доступа к другим (reference) репозиториям. В самом git не ни аутентификации, ни прав доступа, ни истории pull request — ничего лишнего. Собственно, операция pull request достаточно специфична именно для git и отражает примерно следующее: «Я в своём репозитории сделал вот такие коммиты (с такими-то хешами родительских). Прими их, пожалуйста в свой репозиторий в ветку nnn». Т.е. не вы отправляете коммиты в чужой репозиторий, а просите «владельца» чужого репозитория их принять.

GitHub (но не git!), собственно, оборачивает этот достаточно сложный процесс совместной работы в простые и понятные схемы с «главным сервером» и наворачивает горку удобств (типа аутентификации, авторизации, история дискуссий, поиск и т.д. и т.п.)
Насколько понимаю — Git — это распределённая система управления версиями: есть один сервер, через который разработчики обмениваются кодом. Разработчик копирует (клонирует) проект к себе на локальную машину, делает изменения и сохраняет их на удалённый сервер. При необходимости другие разработчики могут скопировать эти изменения к себе.
Спасибо автору за столь информативный и вдохновляющий материал! Обязательно рекомендую всем разработчикам и архитекторам программного обеспечения.
Спасибо автору за столь информативный и вдохновляющий материал! Обязательно рекомендую всем разработчикам и архитекторам программного обеспечения.
Спасибо автору за столь информативный и вдохновляющий материал! Обязательно рекомендую всем разработчикам и архитекторам программного обеспечения.
Спасибо автору за столь информативный и вдохновляющий материал! Обязательно рекомендую всем разработчикам и архитекторам программного обеспечения.
Мы долгое время использовали традиционные подходы к разработке, но после изучения поняли, как важны облачные практики. Особенно впечатлила информация о том, как микросервисы могут улучшить производительность приложений. Теперь мы уверенно интегрируем облачные технологии в наши проекты. Отличная статья для всех, кто хочет идти в ногу с современными тенденциями разработки!
Мой опыт подтверждает ваши слова относительно того, что Swarm — это просто абстракция, которая, на сколько это возможно, стирает границы между разными машинами. Пока что у меня на нём работает тестовый кластер, который изначально был запланирован только для внутрикорпоративнх экспериментов, так что высоких требований по uptime у него нет, так что Swarm отлично подошёл как простой способ управления всем хозяйством с одной машины.

Вообще, Docker + Swarm вытеснили весь головняк с CFEngine, который хоть и решал проблемы, но всегда происходили какие-то накладки в конфигах, вылавливание которых порой занимало больше времени чем хотелось, так что в этом смысле мне нравится эта связка для текущих задач.
Я рассматривал Docker Swarm когда выбирал систему управления контейнерами. Выбор между Kubernetes и Docker Swarm сводится к необходимому функционалу. Это связано с тем, что изначальные задачи у них различаются.

Docker Swarm — способ использовать несколько машин как единую виртуальную среду для запуска контейнеров.

Kubernetes же позволяет не только запустить несколько машин, но и занимается балансировкой нагрузки, контролем запущенности и обновлением контейнеров (есть функция rolling-update позволяющая без простоя обновить pod'ы внутри RC).

Морочиться стоит в случае если:

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

Возможно я ошибаюсь на счёт Swarm, буду благодарен за дополнительную информацию по опыту работы с ним.
Я нырнул в мир Docker буквально пару месяцев назад и это просто потрясающе! Кроме того, что я построил проект, который благодаря Docker стал модульным, безопасным и прекрасным, я наконец смог переехать на Arch Linux благодаря тому, что теперь я и у себя на ноуте могу с минимальными накладными расходами (виртуалка с Linux на Linux мне не нравилась совсем, а с chroot много мороки) иметь окружение идентичное с боевыми серверами.

Тема управления кластеров с Docker контейнерами сейчас особенно популярна, лично я остановился на Docker Swarm. Преимущества:
— официально поддерживается Docker
— прост в настройке и использовании

К недостаткам Docker Swarm я бы отнёс:
— возможно, слишком прост для построения изолированных инфраструктур
— возможно, команде Docker лучше было бы фокусироваться на самом Docker, а не распылять усилия и заходить на территорию kerbernetes/fleet/mesos/…

Лично мне Docker Swarm нравится и пока что я им доволен как никогда. А какие у вас мысли по этому поводу? Стоит ли морочиться с Kubernetes для кластера из 10 машин?
Нода Kubernetes

При взгляде на архитектуру системы мы можем разбить его на сервисы, которые работают на каждой ноде и сервисы уровня управления кластера. На каждой ноде Kubernetes запускаются сервисы, необходимые для управления нодой со стороны мастера и для запуска приложений. Конечно, на каждой ноде запускается Docker. Docker обеспечивает загрузку образов и запуск контейнеров.

Kubelet

Kubelet управляет pod'ами их контейнерами, образами, разделами, etc.

Kube-Proxy

Также на каждой ноде запускается простой proxy-балансировщик. Этот сервис запускается на каждой ноде и настраивается в Kubernetes API. Kube-Proxy может выполнять простейшее перенаправление потоков TCP и UDP (round robin) между набором бэкендов.

Компоненты управления Kubernetes

Система управления Kubernetes разделена на несколько компонентов. В данный момент все они запускаются на мастер-ноде, но в скором времени это будет изменено для возможности создания отказоустойчивого кластера. Эти компоненты работают вместе, чтобы обеспечить единое представление кластера.

etcd

Состояние мастера хранится в экземпляре etcd. Это обеспечивает надёжное хранение конфигурационных данных и своевременное оповещение прочих компонентов об изменении состояния.

Kubernetes API Server

Kubernetes API обеспечивает работу api-сервера. Он предназначен для того, чтобы быть CRUD сервером со встроенной бизнес-логикой, реализованной в отдельных компонентах или в плагинах. Он, в основном, обрабатывает REST операции, проверяя их и обновляя соответствующие объекты в etcd (и событийно в других хранилищах).

Scheduler

Scheduler привязывает незапущенные pod'ы к нодам через вызов /binding API. Scheduler подключаем; планируется поддержка множественных scheduler'ов и пользовательских scheduler'ов.

Kubernetes Controller Manager Server

Все остальные функции уровня кластера представлены в Controller Manager. Например, ноды обнаруживаются, управляются и контролируются средствами node controller. Эта сущность в итоге может быть разделена на отдельные компоненты, чтобы сделать их независимо подключаемыми.

ReplicationController — это механизм, основывающийся на pod API. В конечном счете планируется перевести её на общий механизм plug-in, когда он будет реализован.

Пример настройки кластера

В качестве платформы для примера настройки была выбрана Ubuntu-server 14.10 как наиболее простая для примера и, в то же время, позволяющая продемонстрировать основные параметры настройки кластера.

Для создания тестового кластера будут использованы три машины для создания нод и отдельная машина для проведения удалённой установки. Можно не выделять отдельную машину и производить установку с одной из нод.
Kubernetes является проектом с открытым исходным кодом, предназначенным для управления кластером контейнеров Linux как единой системой. Kubernetes управляет и запускает контейнеры Docker на большом количестве хостов, а так же обеспечивает совместное размещение и репликацию большого количества контейнеров. Проект был начат Google и теперь поддерживается многими компаниями, среди которых Microsoft, RedHat, IBM и Docker.

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

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

Концепции Kubernetes

Nodes (node.md): Нода это машина в кластере Kubernetes.
Pods (pods.md): Pod это группа контейнеров с общими разделами, запускаемых как единое целое.
Replication Controllers (replication-controller.md): replication controller гарантирует, что определенное количество «реплик» pod'ы будут запущены в любой момент времени.
Services (services.md): Сервис в Kubernetes это абстракция которая определяет логический объединённый набор pod и политику доступа к ним.

Volumes (volumes.md): Volume(раздел) это директория, возможно, с данными в ней, которая доступна в контейнере.

Labels (labels.md): Label'ы это пары ключ/значение которые прикрепляются к объектам, например pod'ам. Label'ы могут быть использованы для создания и выбора наборов объектов.
Kubectl Command Line Interface (kubectl.md): kubectl интерфейс командной строки для управления Kubernetes.

Архитектура Kubernetes

Работающий кластер Kubernetes включает в себя агента, запущенного на нодах (kubelet) и компоненты мастера (APIs, scheduler, etc), поверх решения с распределённым хранилищем. Приведённая схема показывает желаемое, в конечном итоге, состояние, хотя все ещё ведётся работа над некоторыми вещами, например: как сделать так, чтобы kubelet (все компоненты, на самом деле) самостоятельно запускался в контейнере, что сделает планировщик на 100% подключаемым.

Заявка на услуги DST

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

Адрес

Ижевск, ул. Воткинское шоссе, д. 170 Е, Технопарк Нобель, офис 1117

8 495 1985800
Заказать звонок

Режим работы: Пн-Пт 10:00-19:00

info@dstglobal.ru

Задать вопрос по почте

Укажите ваше имя
Укажите ваше email
Укажите ваше телефон