
Alexander
13.07.2017
04:43:52
но если прямо вот очень надо - можно сделать толстый контейнер с кучей сервисов внутри
так делают те, кто видит в контейнерах виртуалки
но вот лично мне этот подход не нравится, я так не советую делать
то есть удобно когда у нас в каждом контейнере свой демон сидит

Google


Alexander
13.07.2017
04:46:49
ну, а запускает это всё обычный systemd через rkt, то есть можно там настроить зависимости и так далее
а обновление можно делать через Ansible, он просто перезапустит systemd-сервисы, что приведёт к обновлению проекта, ну и там надо с миграциями только решить
и с тем, нужен ли нам BGD или нет
и этот Ansible плэйбук может запускать некий админ/разработчик, а может CI-система автоматически после прогона тестов, если они зелёные
допустим, мы закоммитили фичу, сделали pull request на Bitbucket'е, прошлись тесты, можно мержить, вы смержили в develop, потом вы develop мержите в master (напрямую или как-то согласно вашей системе), CI это видит, что в master'е появился некий новый коммит с тегом, тестирует его, если тесты зелёные - запускает ansible-playbook, тот лезет на сервер и перезагружает systemd-target, с которым связаны ваши systemd-сервисы (uWSGI, Caddy Server, PostgreSQL, при перезапуске uWSGI-контейнера там может быть некий скрипт-wrapper над uWSGI, который проверяет миграции и мигрирует, если нужно)
таким образом после того, как вы сделали релиз, система всё дальше делает сама автоматически
а если у вас BGD (Blue-Green Deploy), то в случае ошибок, она сама же и откатится назад
красиво же выглядит? ?
причём, если у вас контейнеры и облака, ещё круче - эти контейнеры могут стартовать на любом сервере облака (согласно вашим установкам), например, где больше свободных ресурсов
а если ресурсов нет - этот скрипт сам же по API перед деплоем может докупить нужное количество серверов
можно в часы пик докупать серверы и поднимать там контейнеры, а ночью удалять серверы
то есть днём у вас будет работать 5 серверов, ночью 2, допустим) с серверами по API и при тарифах с почасовой оплатой это удобно
и ещё - допустим, мощные серверы стоят дороже дешёвых, вы можете купить 10 дешёвых, будет дешевле, чем 1 дорогой
в итоге у вас на каждом дешёвом сервере будет по контейнеру с uWSGI

Google

Alexander
13.07.2017
05:02:45
по деньгам это будет выгоднее, чем 1 контейнер на мощном сервере
то есть осознайте, насколько большие и интересные перспективы тут открываются) благодаря контейнерам деплой занимает секунды) ввод в эксплуатацию нового сервера может занять менее 3 минут) то есть когда мы чувствуем, что нам перестало хватать ресурсов, некая система мониторинга просто докупает ещё серверов и делает там контейнеры, это всё само, без вашего участия))
поиграться можно со Scaleway, например) там серверы от 3 евро/месяц c почасовой оплатой, есть API для заказа и удаления услуг

AbdulAziz
13.07.2017
05:07:09
Звучит "Бомба" если это реально работает

Alexander
13.07.2017
05:07:14
ну и, разумеется, Amazon Web Services, Google Cloud, Azure

TyVik
13.07.2017
05:23:01
а где такой деплой реально работает?

Alexander
13.07.2017
05:29:40
чтобы его настроить, нужно время/силы инженера, то есть серверов должно быть достаточно много чтобы с экономии на этом окупить зарплаты специалистов
если у вас 1 небольшой интернет-магазин на Django, вам такая система будет избыточной и не окупится, а вот если у вас несколько сотен серверов - оно уже будет окупаться
то есть тут считается стоимость внедрения + стоимость владения системой, а так же потенциальная выгода от использования и делаются выводы
во многих крупных компаниях сейчас Kubernetes

TyVik
13.07.2017
05:33:16
не, Вы так красиво всё расписали, прям правильно на 100%, но в реальной жизни где это можно найти?

Alexander
13.07.2017
05:33:35
в крупных компаниях оно так и работает, где много серверов

TyVik
13.07.2017
05:33:55
примеры можете привести?

Alexander
13.07.2017
05:33:59
там это экономит деньги и дешевле 1 раз нанять инженера и разобраться с этим, чем терять деньги
нет, я стартапер)

TyVik
13.07.2017
05:34:20
а, ну ok

Alexander
13.07.2017
05:35:24
я сам занимаюсь поддержкой мелких проектов малого бизнеса и своим стартапом, ни там, ни там такая система, к сожалению, не окупится, стоимость поддержки будет выше, чем профит от неё
но если есть некая компания и там от 100 серверов и больше - уже есть смысл подумать и посчитать

X
13.07.2017
05:35:56
Всем времени суток!)

Google

Alexander
13.07.2017
05:37:37
у меня на каждый проект работает 1 виртуальный сервер, на нём несколько контейнеров именно этого проекта, иногда хватает 1 впски за 3 бакса на всё, то есть весь проект - 3 бакса ? как вы понимаете, если я сделаю так, что оно будет стоить не 3, 1,5 бакса - я лишь потрачу кучу времени ради экономии 1,5 баксов, оно не окупится ?
но если у вас 100 серверов и компания платит по 200 баксов за каждый, то это 20 000 долларов в месяц на хостинг
и если сделать не 20 000, а 10 000, то получится экономия 10 000, из них 3 000 можно заплатить инженеру и сэкономить компании 7 000
вот так оно работает ?

TyVik
13.07.2017
05:39:04
о, кстати, а где можно взять VPS подешевле? DigitalOcean чё-т уже не радует...

Erzh
13.07.2017
05:39:54

Alexander
13.07.2017
05:41:43
самая дешёвая впска - Aruba
там $1
1Гб оперативки
но там нет API вроде
но, в общем, Kubernetes в мелкие проекты внедрять не надо

Alexander
13.07.2017
05:45:57
а вот Docker - подходит для любых
то есть даже если там Aruba за $1 и сайт школьной стенгазеты
?
то есть для облаков требуется наличие контейнеров, Kubernetes требует, чтобы у вас всё было в контейнерах и только так) и в идеале, если на нодах будет облачная операционная система, например, CoreOS)
а сами контейнеры ничего не требуют) это может быть просто Ubuntu обычная)

Vladimir
13.07.2017
06:08:43
У когонить есть мануал от и до по настройке gitlab ci и всех пррблуд?

X
13.07.2017
07:04:02

Alexander
13.07.2017
08:42:22
да, AWS молодцы
единственный минус всего этого - vendor lock

Google

X
13.07.2017
08:43:14
ну а кому-то надо systemd
)))
у каждого свои нужды под эти нужды есть решения)

Alexander
13.07.2017
08:44:06
в крупных компаниях есть свои серверы и конвергентная архитектура, то есть там есть некий свой OpenStack, у которого "заказывают" ресурсы

X
13.07.2017
08:44:10
про нужды это просто как пример разных запросов к будущей системе и соответственно выбор инструментов на всю эту кухню

Alexander
13.07.2017
08:44:38
то есть экономия будет через экономию на оплату счетов за электроэнергию
а не счетов за аренду
но суть та же

Admin
ERROR: S client not available

X
13.07.2017
08:44:55
начнем новый виток? OpenStack - почему он еще жив)))

Alexander
13.07.2017
08:45:05
они не конкурируют
это разные системы

X
13.07.2017
08:45:09
с учетом того сколько сил времени надо на то чтобы поднять это и поддерживать

Alexander
13.07.2017
08:45:12
для разных задач

X
13.07.2017
08:45:13
я знаю

Alexander
13.07.2017
08:45:31
OpenStack - это возможность сделать свой собственный AWS на своём железе

X
13.07.2017
08:45:34
но это настолько сложная и большая махина с которой трудно нормально дружить

Alexander
13.07.2017
08:46:03
это для крупных компаний
мелким стартапам OpenStack не нужен
просто иногда нет возможности зависеть от американского Amazon

Google

Alexander
13.07.2017
08:47:02
который могут выключить, из-за санкций, например
внедрение OpenStack'а укладывается в идею импортозамещения, когда используются собственные серверы и к ним нужна некая оболочка, в итоге получается некий свой AWS

Тимур
13.07.2017
08:49:04
извиняюсь, телеграм клиенты очень настойчивый в отправке стикеров

Tigran
13.07.2017
08:57:03

TyVik
13.07.2017
08:58:26
ну, идеально нигде не бывает

Maksim
13.07.2017
09:05:22
Парни подскажите с отправкой на мыло
EMAIL_HOST = 'smtp.mail.ru'
EMAIL_HOST_USER = 'max***@*****.ru'
EMAIL_HOST_PASSWORD = '*******'
EMAIL_PORT = 465
EMAIL_USE_TLS = True
from django.core.mail import send_mail
send_mail('Sdsd', 'HERE', 'max****@******.ru', ['********@gmail.com'], fail_silently=False)
просто виснет, никаких ошибок

Alexander
13.07.2017
09:10:04
вообще, я бы не советовал через mail.ru почту отправлять ?
Лимит: 1 сообщение/мин. или 200 email сообщений/день

Maksim
13.07.2017
09:12:29
почему такой лимит? где это написано?

X
13.07.2017
09:13:30

Alexander
13.07.2017
09:58:53
у гугла аналогично
200 в день там

serbernar
13.07.2017
10:43:41

Eugene
13.07.2017
10:44:41
https://www.mailgun.com вроде не плох

Alexander
13.07.2017
10:44:42
специализированные для отправки рассылок и сервисных писем

serbernar
13.07.2017
10:44:55
Amazon SES? SendGrid? MailChimp?

Alexander
13.07.2017
10:45:01
то есть НЕ почтовые сервисы а-ля mail&gmail

serbernar
13.07.2017
10:45:03
О, ну, маилган еще