@pydjango

Страница 359 из 1273
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 серверов и больше - уже есть смысл подумать и посчитать

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 чё-т уже не радует...

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 и всех пррблуд?

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
вообще, я бы не советовал через mail.ru почту отправлять ?
да мне без разницы через что оно будет отправлять

почему такой лимит? где это написано?

X
13.07.2017
09:13:30
да мне без разницы через что оно будет отправлять
до тех пор пока ты не привысишь лимиты)))

Alexander
13.07.2017
09:58:53
почему такой лимит? где это написано?
где-то в интернете нагуглил, лимит связан с тем, чтобы не отправляли письма вот как раз для сайтов

у гугла аналогично

200 в день там

serbernar
13.07.2017
10:43:41
200 в день там
А какой сервис посоветуешь?

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
О, ну, маилган еще

Страница 359 из 1273