Re[2]: Деплой...
От: Qulac Россия  
Дата: 08.09.21 15:19
Оценка: +1 :))) :)
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Здравствуйте, Shmj, Вы писали:


S>>Итак, стандартный способ деплоя — через непрерывную интеграцию CI/CD с помощью специального ПО или же просто через скрипты.


НС>Нет никакого такого стандартного способа.


S>>Раньше было несколько иначе — постоянно держали сервер, заходили на него по RDP, вручную удаляли файлы сайта на IIS, копировали новые.


НС>Так делали только ... цензурное слово не подбирается. Даже для совсем наколеночных проектов проще было деплоить через WebDeploy.


Полегче пожалуйста, вот тут обидно было.
Программа – это мысли спрессованные в код
Re: Деплой...
От: Ночной Смотрящий Россия  
Дата: 08.09.21 13:39
Оценка: +4
Здравствуйте, Shmj, Вы писали:

S>Итак, стандартный способ деплоя — через непрерывную интеграцию CI/CD с помощью специального ПО или же просто через скрипты.


Нет никакого такого стандартного способа.

S>Раньше было несколько иначе — постоянно держали сервер, заходили на него по RDP, вручную удаляли файлы сайта на IIS, копировали новые.


Так делали только ... цензурное слово не подбирается. Даже для совсем наколеночных проектов проще было деплоить через WebDeploy.

S>Так вот. Ранее не было нужды пересобирать все, если изменения касались одного модуля (библиотеки).


Это как? Ты раньше на проде патчил только одну сборку из проекта? Ну ты герой.

S> Даже более — можно было создать плагинную систему


Зачем плагинная система на сервере? Чтобы тормозов побольше?

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


Микросервисы это не плагины, и цель у них совершенно иная.

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


Делать без плагинов, по крайней мере пока ты не сможешь ответить на вопрос какие бенефиты тебе дают твои плагины.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[3]: Деплой...
От: rosencrantz США  
Дата: 09.09.21 17:45
Оценка: 5 (1) +1
Здравствуйте, Sharov, Вы писали:

S>Здравствуйте, Ночной Смотрящий, Вы писали:


S>>>Раньше было несколько иначе — постоянно держали сервер, заходили на него по RDP, вручную удаляли файлы сайта на IIS, копировали новые.

НС>>Так делали только ... цензурное слово не подбирается. Даже для совсем наколеночных проектов проще было деплоить через WebDeploy.

S>Мне надо было наколеночный проект закачать на машину в aws


У AWS есть родной очень клёвый тул CloudFormation для управления ресурсами AWS. Если ваш RMQ это на самом деле Amazon MQ, берём CloudFormation и вперёд с https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html . Если аппликейшн у вас докеризованный, то тем же CloudFormation здрово всё деплоится через ECS https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html .

Если вы прям ненавидите амазоновскую проприетарщину, есть прекраснейший Terraform, который умеет всё то же, что и CloudFormation (но только _немного иначе_). Умеет ещё кучу других провайдеров, и совсем "общие" вещи вроде подключиться через SSH куда-то и что-то там выполнить. Можно одним слоем развернуть инстанс EC2, а вторым навалить на него какой вам софт нужен.

Не надо прикрываться этой "наколеночностью" — сейчас много хороших инструментов с отличной документацией, которые позволяют сразу сделать хорошо.
Отредактировано 10.09.2021 18:52 rosencrantz . Предыдущая версия .
Re[17]: Деплой...
От: rosencrantz США  
Дата: 13.09.21 14:09
Оценка: 5 (1) +1
Здравствуйте, Sharov, Вы писали:

S>Я полностью согласен с тем, что задача любого программиста автоматизировать вся и все. Но вот как быть с таким

S>важнейшим компонентом как время? Ну ушло бы у меня на написание и отладку скрипта, которым я воспользуюсь 5-6 раза
S>от силы скажем не менее часа, а то и более 2-х. При этом по RDP скопировать, проверить и запустить дело от силы
S>5 минут. Автоматизация нужна для выигрыша времени в основном. Тут никакого выигрыша нет, разве что опыт, да
S>и выложить скрипт на гитхаб всяким hr показывать. Не более.

Вот именно из-за такой точки зрения эти подходы для многих остаются "абстрактными идеалами". Если зафиксировать все параметры и сравнивать только время, вы правы — с большой вероятностью автоматизация будет выглядеть невыгодно. Но сравнивать нужно не только время, но ещё:

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

У ручного подхода есть проблемы с предсказуемостью и воспроизводимостью — мыслящий человек после N повторений начинает оптимизировать процесс, начинает придумывать, что вот вот этот шаг не обязателен, в этот раз вот это обновлять не буду, т.к. точно знаю, что в билде оно не менялось. И в какой-то момент 5-минутный ручной деплоймент превращается в 20-минутное ковыряние "чё за фигня, почему так?"

Задокументированность — другая головная боль. Понятно, что если вы вводите процесс ("процесс ручного деплоймента"), его надо хотя бы минимально описать. Если это будет написано человеческим языком, можно очень легко забыть что-то упомянуть, или забыть что-то поправить, когда по факту процесс немного изменился. Легко получить документ, который не соответствует реальности.

Возможность захотеть большего — деплоймент скрипт можно развивать (и это будет "нормально"). Ручной деплоймент развивать некуда — с каждым усложнением он будет становиться всё менее предсказуемым и воспроизводимым.

Попробуйте на деплойменты смотреть так же как на юнит/инт тесты: "в принципе можно тестировать руками — и это позволит сэкономить время на написании тестов"
Отредактировано 13.09.2021 14:10 rosencrantz . Предыдущая версия .
Re[13]: Деплой...
От: rosencrantz США  
Дата: 10.09.21 21:06
Оценка: +2
Здравствуйте, Shmj, Вы писали:

S>Здравствуйте, rosencrantz, Вы писали:


R>>Для случая "вот у нас есть один сервер, в него надо деплоить" — берётся что там самое близкое к SSH в Windows,


S>И что же там самое близкое? Не cmd ли?


Ага, через телнет.

S>Вы лично как делали во времена IIS?


Ну например TeamCity + MS Build + WebDeploy в 2012 году. А что?

R>>через какой-нибудь Ansible или Puppet — меньше шансов налажать, какая-то диагностика, обработка ошибок. Но это типа подходы 10-летней давности.


S>Ansible появился совсем недавно а Puppet работает только через cygwin.


Ansible появился 9 лет назад, и слово "подходы" у меня там именно для того, чтобы говорить не об инструментах, а об идеях.

S>Сразу видно, что никогда в жизни вы этого не делали — только теоретизируете про чистые идеалы


Из мира .NET я довольно быстро сбежал как раз из-за чудовищной экосистемы заточенной на "кликанье мышкой через RDP". Но в нескольких .NET проектах всё-таки довелось сделать CI/CD, поэтому у меня есть (возможно немного устаревшее) представление о том, что там может или не может работать. В этот тред я пришёл потому что CI/CD занимаюсь уже лет 10, последние 5 лет это где-то половина моей работы, я думаю не будет преувеличением сказать, что у меня есть опыт, и я вобщем не вижу почему бы моя точка зрения не была интересна/полезна для коллег. Ты пришёл мне сделать какое-то замечание?

S>А сейчас совсем другая ситуация — любой дурик сделает деплой через CI/CD.


С моей точки зрения ситуация принципиально не поменялась — как 10 лет назад кто-то верил в ценность автоматизации, кто-то предпочитал руками, так и сейчас. Разве что раньше это часто было "запросить у админов виртуалку, потратить полдня на установку тимсити, и т.д.", а сейчас за 10 минут билд пайплан делается в облаках.

S>Раньше проще всего было через RDP или FTP — разница не большая. Просто нажимаете одну кнопку, подключаетесь — и копируете файлы. Это быстро.


Между RDP и FTP разница таки большая. Аплоад по FTP автоматизируется тривиально, а автоматизировать RDP — это реально лучше сразу к врачу.
Re[11]: Деплой...
От: rosencrantz США  
Дата: 10.09.21 19:29
Оценка: 5 (1)
Здравствуйте, Sharov, Вы писали:

S>Здравствуйте, Ночной Смотрящий, Вы писали:


S>>>Легаси, .net 4.* какой-нибудь.

НС>>И? Контейнеры с ним есть.

S>А если нету win10, рабочая win7 и win2008 продуктовая? А как до докера люди делали?


Для случая "вот у нас есть один сервер, в него надо деплоить" — берётся что там самое близкое к SSH в Windows, пишется скрипт, который заливает новый билд и дёргает что там у IIS надо дёрнуть, чтобы он понял что произошло. Даже такая наколенка в сто раз лучше, чем руками через RDP. Более хороший вариант — примерно то же самое, только не на коленке, а хоть через какой-нибудь Ansible или Puppet — меньше шансов налажать, какая-то диагностика, обработка ошибок. Но это типа подходы 10-летней давности.

Сейчас стараются максимально разграничить "неизменную часть" (типа низкоуровневая инфраструктура вроде сервера, на котором есть чистая минимальная ОС и демон докера) и изменяемую часть (контейнеры, которые в том самом докере крутятся). Вот эту изменяемую часть не обновляют — её на каждый деплоймент убивают и создают новую с нуля.

Примерно такой же подход можно и без докера сделать — на каждый билд строить новый AMI образ с Windows, IIS и вашим софтом (вот например Packer вроде это умеет: https://learn.hashicorp.com/tutorials/packer/aws-windows-image?in=packer/integrations), поднимать новый чистый EC2 инстанс с этим образом, и убивать старый.

Даже если не Packer, точно так же делаем EC2 с голой виндой, натравливаем на него Ansible/Puppet, получаем свежий сервер со свежим билдом, старый грохаем.
Re: Деплой...
От: fmiracle  
Дата: 08.09.21 14:27
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Так вот. Ранее не было нужды пересобирать все, если изменения касались одного модуля (библиотеки). Даже более — можно было создать плагинную систему и копировать плагины просто в директорию, добавляя таким образом новый функционал, не вмешиваясь в старый, не производя компиляцию даже.


Можно но не нужно. Куда проще сделать скрипт, который все удалил и накатил новое.

И пересобрать все — какая проблема? Не вручную же ты символы пишешь, компьютер автоматом все пересоберет и не устанет. Ну, если сборка проекта целиком занимает двое суток, могу понять, но в дотнете как-то обычно сборка совсем не такая длинная...
Re[13]: Деплой...
От: Михаил Романов Удмуртия https://mihailromanov.wordpress.com/
Дата: 10.09.21 13:55
Оценка: +1
Здравствуйте, Sharov, Вы писали:

S>Ну это уход от вопроса. Т.е. таки rdp и копировать ручками.

Ну вам же ответили ранее https://rsdn.org/forum/dotnet/8087679.1
Автор: Ночной Смотрящий
Дата: 10.09.21

Есть куча решений, зависящих от конкретной инфраструктуры. У каждого оркестратора, к примеру, они свои или набор сторонних заточенных под него. Есть относительно универсальные решения типа Ansible или DSC. Есть средства управления развертывания, например Octopus. Есть решения на базе средств, напрямую не предназначенных для развертывания — svn, git, teamcity.


Как минимум Octopus, Ansible и DSC для связки .Net 4 и Server 2008R2+ работать должны.
К перечисленным решениям можно добавить еще:
— Microsoft System Center (который Operation Manager и иже с ним)
— TFS (release management там с версии 2015 вроде) / Azure DevOps / Azure Pipelines
В принципе, народ работал и на базе GPO в Active Directory, но это, скорее из серии "когда уж совсем никак, то пусть будет хоть это".

RDP + ручная установка вполне прокатывают как разовое средство, но как только речь заходит о более-менее регулярных деплоях (или деплоях на более чем один Instance, а я так думаю, в большинстве случаев деплой одного релиза идет минимум 3 раза: на тестовом окружении, на Stage и на Prod и это еще без учета того, что на скорее всего у вас кластер машин на Prod), имхо, от них нужно уходить и как можно быстрее, иначе риск операторской ошибки становится слишком большим!
Re[13]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 10.09.21 14:10
Оценка: +1
Здравствуйте, Sharov, Вы писали:

S>>> А как до докера люди делали?

НС>>А еще раньше люди огонь при помощи кремня добывали.
S>Ну это уход от вопроса. Т.е. таки rdp и копировать ручками.

Я тебе там целую пачку вариантов помимо контейнеров привел, но ты их все проигнорировал. Ну ОК, продолжайте с RDP развлекаться.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[13]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 11.09.21 08:20
Оценка: +1
Здравствуйте, Shmj, Вы писали:

R>>через какой-нибудь Ansible или Puppet — меньше шансов налажать, какая-то диагностика, обработка ошибок. Но это типа подходы 10-летней давности.

S>Ansible появился совсем недавно

9 лет назад это недавно?

S>а Puppet работает только через cygwin.


Есть еще дакая древность как Шеф. Было бы желание.

S>Сразу видно, что никогда в жизни вы этого не делали — только теоретизируете про чистые идеалы


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

S>А сейчас совсем другая ситуация — любой дурик сделает деплой через CI/CD.


CI/CD это принцип, а не конкретный софт. О чем ты сейчас?
А конкретный софт это тот же Октопус или ТимСити, которые тоже уже больше 10 лет доступны. А до этого был, в конце концов, svn и серверные хуки.

S>Раньше проще всего было через RDP или FTP — разница не большая.


Просто нет.

S>Просто нажимаете одну кнопку, подключаетесь — и копируете файлы. Это быстро.


Не одну. И куча способов накосячить, особенно если тебе не на одну машину деплоить.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[17]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 12.09.21 14:05
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>>>Раньше было на одну.

НС>>Никогда не было.
S>Для средних сайтов хватало одного мощного сервака для IIS.

High availability? Не, не слышал.

S>>>Там уже папка открыта — просто заходишь, удаляешь, вставляешь.

НС>>Это все одним нажатием кнопки, причем сразу на все инстансы, да?

S>1 инстанс.


Все равно рукопашное копирование одним нажатием в RDP у тебя никак не получится. Надо собрать локально, открыть сессию RDP, подключится к диску, найти нужный каталог, создать файлик app_offline, запустить копирование, ответить на промт о перезаписи. И так для каждого инстанса. Ошибиться — миллион возможностей. И весь этот рукопашный перфоманс — просто чтобы не напрягать моск, один раз разобравшись с какой нибудь механикой деплоймента.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[18]: Деплой...
От: Shmj Ниоткуда  
Дата: 12.09.21 14:15
Оценка: +1
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>High availability? Не, не слышал.


Раньше этим мало кто страдал. Если база была на отдельном серваке и делались регулярные бекапы раз в день — уже неплохо.

S>>1 инстанс.


НС>Все равно рукопашное копирование одним нажатием в RDP у тебя никак не получится. Надо собрать локально, открыть сессию RDP, подключится к диску, найти нужный каталог, создать файлик app_offline, запустить копирование, ответить на промт о перезаписи. И так для каждого инстанса. Ошибиться — миллион возможностей. И весь этот рукопашный перфоманс — просто чтобы не напрягать моск, один раз разобравшись с какой нибудь механикой деплоймента.


Во-первых, инстанс всегда один. Папка на RPD оставалась открытой, никто ее не закрывал. Версии новые выпускались не так часто, чтобы этим страдать.
Re[19]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 12.09.21 16:47
Оценка: +1
Здравствуйте, Shmj, Вы писали:

НС>>High availability? Не, не слышал.

S>Раньше этим мало кто страдал.

Или просто ты был не в курсе.

S>Во-первых, инстанс всегда один. Папка на RPD оставалась открытой, никто ее не закрывал. Версии новые выпускались не так часто, чтобы этим страдать.


Ну чо, продолжай в том же духе.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[17]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 13.09.21 13:58
Оценка: +1
Здравствуйте, Sharov, Вы писали:

S>Ну ушло бы у меня на написание и отладку скрипта, которым я воспользуюсь 5-6 раза


У тебя сервис 5-6 раз деплоится, а потом ты его выкидываешь на свалку?

S>Автоматизация нужна для выигрыша времени в основном.


Автоматизация в таких вещах нужна прежде всего для надежности и повторяемости, чтобы не сломать что нибудь случайно. А если лежаших полдня сервис или случайно удаленные данные клиентов твоих не беспокоят — ну ок, продолжай экономить время.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[19]: Деплой...
От: rosencrantz США  
Дата: 13.09.21 15:23
Оценка: +1
Здравствуйте, Sharov, Вы писали:

S>>>Автоматизация нужна для выигрыша времени в основном.

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

S>Сложно сломать сервис, который по сути один exe файл со справочной бд в виде файла sqlite.

S>Надо понимать, что программы\сервисы разные бывают, а не только high scalability веб сервисы.

Согласен "про разные бывают", но осуждаю эту уверенность про то, что "X никогда не случится" сервис всегда будет таким, я всегда буду единственным программистом в этом проекте, на другую инфраструктуру мы переезжать не будем, и т.д. И потом бац, бизнес такой: "а давайте в облака чтоли переедем", "т.е. как 3 месяца займёт? щас наймём тебе в помощь второго программиста"
Деплой...
От: Shmj Ниоткуда  
Дата: 08.09.21 08:24
Оценка:
Речь о серверных приложениях. Т.к. сейчас все делают через JS-фреймворки React/Vue/Angular, а вопрос касается .Net — то о WebAPI, ибо все остальное уже не актуально.

Итак, стандартный способ деплоя — через непрерывную интеграцию CI/CD с помощью специального ПО или же просто через скрипты. Чуть глубже. Сейчас многие предпочитают виртуализацию, т.е. все через Docker/Kubernetes и при каждом новом деплое — обычно создается новая вирт. среда (а старая удаляется, дабы не думать о совместимости).

Раньше было несколько иначе — постоянно держали сервер, заходили на него по RDP, вручную удаляли файлы сайта на IIS, копировали новые. Или же проделывали то же самое через sftp/ftps.

Так вот. Ранее не было нужды пересобирать все, если изменения касались одного модуля (библиотеки). Даже более — можно было создать плагинную систему и копировать плагины просто в директорию, добавляя таким образом новый функционал, не вмешиваясь в старый, не производя компиляцию даже.

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

Ну и вопрос такой. Как лучше совместить плагинную систему и современные тренды, когда принято все собирать из исходников с нуля, обычно собирают целый проект а не по частям? Или же лучше не делать плагинов а просто пересобирать все с нуля как все?
Re: Деплой...
От: vaa  
Дата: 09.09.21 02:48
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Ну и вопрос такой.


Использую следующую схему.
1. приложение монолитное(т.е. без плагинов).
2. паблиш запускает скрипт который зипует сборку app_1.0.1.42.zip без лишних артефактов.
3. либо через простейшую реализацию submit либо ручками копирую в спец папку на сервак.
4. дальше опять либо ручками, либо через filewatcher запускается процесс обновления.
в скрипт можно встроить бэкап приложения, базы. вообщем резвимся как хотим.
в IIS есть еще фишка под названием app_offline.htm(из webdeploy).
если такой файл кинуть в корень приложения, то оно останавливается(вместо него содержимое странички пользователям)
и можно спокойно обновить приложение.

по поводу вебдеплоя долго настраивали с товарищем, но в ответственный момент происходил сбой, причину которого я так и не отловил.
лечилось с трудом, шаманство и повторная настройка. подозреваю из-за отсутствия валидного сертификата на сервере. может еще что-то.
поэтому отказался.
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re[2]: Деплой...
От: Sharov Россия  
Дата: 09.09.21 12:50
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Раньше было несколько иначе — постоянно держали сервер, заходили на него по RDP, вручную удаляли файлы сайта на IIS, копировали новые.

НС>Так делали только ... цензурное слово не подбирается. Даже для совсем наколеночных проектов проще было деплоить через WebDeploy.

Мне надо было наколеночный проект закачать на машину в aws, что подцепить к RMQ для обработки задача.
Как webdeploy тут мог помочь, он же вроде только для веба (ISS,asp.net)? Я просто тот, кто копировал
файлы (папочку с ) на прод. Сейчас (net5) проще -- single_exe (а-ля го) + докер. Хотя и без докера
один exe совсем симпатично. А webdeploy для не веб приложения как?
Кодом людям нужно помогать!
Re[3]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 09.09.21 14:45
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Мне надо было наколеночный проект закачать на машину в aws


У AWS свой инструментарий.

S>один exe совсем симпатично. А webdeploy для не веб приложения как?


А где я обещал webdeploy не для веб-приложения?
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[4]: Деплой...
От: Sharov Россия  
Дата: 09.09.21 15:27
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Мне надо было наколеночный проект закачать на машину в aws

НС>У AWS свой инструментарий.

У нас своя инф-ра, в частности RMQ, так что aws тут не поможет.

S>>один exe совсем симпатично. А webdeploy для не веб приложения как?

НС>А где я обещал webdeploy не для веб-приложения?

Так делали только ... цензурное слово не подбирается. Даже для совсем наколеночных проектов проще было деплоить через WebDeploy.


Наколеночные приложения не только веб. Это может быть обработчик, который живет на отдельной машине.
Кодом людям нужно помогать!
Re[5]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 09.09.21 16:44
Оценка:
Здравствуйте, Sharov, Вы писали:

S>>>Мне надо было наколеночный проект закачать на машину в aws

НС>>У AWS свой инструментарий.
S>У нас своя инф-ра, в частности RMQ, так что aws тут не поможет.

Не очень понял при чем тут своя инфраструктура. Если речь про деплоймент самого кролика или прочей инфраструктуры, то он деплоится контейнерами или образами VM, таки через штатные средства AWS. Если же речь про деплоймент своего кода, как в стартовом сообщении, то при чем тут вообще кролик?

S>>>один exe совсем симпатично. А webdeploy для не веб приложения как?

НС>>А где я обещал webdeploy не для веб-приложения?
S>

S>Так делали только ... цензурное слово не подбирается. Даже для совсем наколеночных проектов проще было деплоить через WebDeploy.

S>Наколеночные приложения не только веб.

Ты стартовое сообщение читал?

а вопрос касается .Net — то о WebAPI, ибо все остальное уже не актуально.


Не нужно выдирать мои слова из контекста и приписывать то, что я не утверждал.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[6]: Деплой...
От: Sharov Россия  
Дата: 09.09.21 17:34
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>У нас своя инф-ра, в частности RMQ, так что aws тут не поможет.

НС>Не очень понял при чем тут своя инфраструктура. Если речь про деплоймент самого кролика или прочей инфраструктуры, то он деплоится контейнерами или образами VM, таки через штатные средства AWS. Если же речь про деплоймент своего кода, как в стартовом сообщении, то при чем тут вообще кролик?

Нету докера и вм, есть машина на которой надо запустить exe файл (или сервис).

S>>Наколеночные приложения не только веб.

НС>Ты стартовое сообщение читал?
НС>

НС>а вопрос касается .Net — то о WebAPI, ибо все остальное уже не актуально.

НС>Не нужно выдирать мои слова из контекста и приписывать то, что я не утверждал.

Если речь о развертывании веб решений, то ладно. А как не веб решения без докера развертывать не через rdp
я не знаю.
Кодом людям нужно помогать!
Re[7]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 10.09.21 04:34
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Нету докера и вм


В AWS? Так не бывает.

S>Если речь о развертывании веб решений, то ладно. А как не веб решения без докера развертывать не через rdp

S>я не знаю.

Есть куча решений, зависящих от конкретной инфраструктуры. У каждого оркестратора, к примеру, они свои или набор сторонних заточенных под него. Есть относительно универсальные решения типа Ansible или DSC. Есть средства управления развертывания, например Octopus. Есть решения на базе средств, напрямую не предназначенных для развертывания — svn, git, teamcity.
Но в 2021 году не использовать контейнеры, а вместо этого ручками копировать через RDP файлики — очень странное решение.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[8]: Деплой...
От: Sharov Россия  
Дата: 10.09.21 09:29
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Если речь о развертывании веб решений, то ладно. А как не веб решения без докера развертывать не через rdp

S>>я не знаю.
НС>Есть куча решений, зависящих от конкретной инфраструктуры. У каждого оркестратора, к примеру, они свои или набор сторонних заточенных под него. Есть относительно универсальные решения типа Ansible или DSC. Есть средства управления развертывания, например Octopus. Есть решения на базе средств, напрямую не предназначенных для развертывания — svn, git, teamcity.
НС>Но в 2021 году не использовать контейнеры, а вместо этого ручками копировать через RDP файлики — очень странное решение.

Легаси, .net 4.* какой-нибудь.
Кодом людям нужно помогать!
Re[9]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 10.09.21 10:06
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Легаси, .net 4.* какой-нибудь.


И? Контейнеры с ним есть.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[10]: Деплой...
От: Sharov Россия  
Дата: 10.09.21 11:00
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Легаси, .net 4.* какой-нибудь.

НС>И? Контейнеры с ним есть.

А если нету win10, рабочая win7 и win2008 продуктовая? А как до докера люди делали?
Кодом людям нужно помогать!
Re[11]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 10.09.21 12:01
Оценка:
Здравствуйте, Sharov, Вы писали:

S>>>Легаси, .net 4.* какой-нибудь.

НС>>И? Контейнеры с ним есть.
S>А если нету win10, рабочая win7 и win2008 продуктовая?

Поставить.

S> А как до докера люди делали?


А еще раньше люди огонь при помощи кремня добывали.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[12]: Деплой...
От: Sharov Россия  
Дата: 10.09.21 12:25
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>> А как до докера люди делали?

НС>А еще раньше люди огонь при помощи кремня добывали.

Ну это уход от вопроса. Т.е. таки rdp и копировать ручками.
Кодом людям нужно помогать!
Re[14]: Деплой...
От: vaa  
Дата: 10.09.21 14:11
Оценка:
Здравствуйте, Михаил Романов, Вы писали:

МР>RDP но как только речь заходит о более-менее регулярных деплоях


Так о том и речь. нет священной коровы. или одного единственно верного способа!
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re[15]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 10.09.21 14:13
Оценка:
Здравствуйте, vaa, Вы писали:

vaa>Так о том и речь. нет священной коровы. или одного единственно верного способа!


Это было моей первой фразой в этом топике. А речь здесь про то что ручное копирование в RDP — ну совсем уж моветон.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[14]: Деплой...
От: Sharov Россия  
Дата: 10.09.21 14:42
Оценка:
Здравствуйте, Михаил Романов, Вы писали:

МР>RDP + ручная установка вполне прокатывают как разовое средство, но как только речь заходит о более-менее регулярных деплоях (или деплоях на более чем один Instance, а я так думаю, в большинстве случаев деплой одного релиза идет минимум 3 раза: на тестовом окружении, на Stage и на Prod и это еще без учета того, что на скорее всего у вас кластер машин на Prod), имхо, от них нужно уходить и как можно быстрее, иначе риск операторской ошибки становится слишком большим!


Благодарю, я это все понял и, отчасти, знал. Просто было категорическое заявление, что RDP+ручное копирование
используют совсем нехорошие люди. В моем случае была развертка на одну машину и совершенно на нерегулярной основе.
Вот как раз для подобного RDP+ копирование самое то, поэтому меня и удивила категоричность (а-ля всегда и везде).
Кодом людям нужно помогать!
Re[15]: Деплой...
От: rosencrantz США  
Дата: 10.09.21 19:36
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Просто было категорическое заявление, что RDP+ручное копирование

S>используют совсем нехорошие люди. В моем случае была развертка на одну машину и совершенно на нерегулярной основе.
S>Вот как раз для подобного RDP+ копирование самое то, поэтому меня и удивила категоричность (а-ля всегда и везде).

А я вот плюсану категоричность, потому что нет каких-то объективных причин выделять "редко деплою" и "деплою всего на 1 машину" в отдельную категорию. Обычно если умеешь, то пофигу редко там или не редко — заскриптованный деплоймент становится таким необсуждаемым минимумом, как руки мыть после туалета. Если не умеешь, да, причины не делать нормально всегда найдутся.
Re[12]: Деплой...
От: Shmj Ниоткуда  
Дата: 10.09.21 20:13
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Для случая "вот у нас есть один сервер, в него надо деплоить" — берётся что там самое близкое к SSH в Windows,


И что же там самое близкое? Не cmd ли? Вы лично как делали во времена IIS?

R>через какой-нибудь Ansible или Puppet — меньше шансов налажать, какая-то диагностика, обработка ошибок. Но это типа подходы 10-летней давности.


Ansible появился совсем недавно а Puppet работает только через cygwin.

Сразу видно, что никогда в жизни вы этого не делали — только теоретизируете про чистые идеалы

А сейчас совсем другая ситуация — любой дурик сделает деплой через CI/CD.

Раньше проще всего было через RDP или FTP — разница не большая. Просто нажимаете одну кнопку, подключаетесь — и копируете файлы. Это быстро.
Re[14]: Деплой...
От: Shmj Ниоткуда  
Дата: 12.09.21 09:50
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>9 лет назад это недавно?


Да. Я начинал в 2004.

S>>Просто нажимаете одну кнопку, подключаетесь — и копируете файлы. Это быстро.


НС>Не одну. И куча способов накосячить, особенно если тебе не на одну машину деплоить.


Раньше было на одну. Там уже папка открыта — просто заходишь, удаляешь, вставляешь.
Re[15]: Деплой...
От: Ночной Смотрящий Россия  
Дата: 12.09.21 12:40
Оценка:
Здравствуйте, Shmj, Вы писали:

НС>>9 лет назад это недавно?

S>Да. Я начинал в 2004.

А я в 94. И 9 лет это давно по меркам подобных тулов.

S>>>Просто нажимаете одну кнопку, подключаетесь — и копируете файлы. Это быстро.

НС>>Не одну. И куча способов накосячить, особенно если тебе не на одну машину деплоить.
S>Раньше было на одну.

Никогда не было.

S>Там уже папка открыта — просто заходишь, удаляешь, вставляешь.


Это все одним нажатием кнопки, причем сразу на все инстансы, да?
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[16]: Деплой...
От: Shmj Ниоткуда  
Дата: 12.09.21 13:31
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Раньше было на одну.

НС>Никогда не было.

Для средних сайтов хватало одного мощного сервака для IIS.

S>>Там уже папка открыта — просто заходишь, удаляешь, вставляешь.

НС>Это все одним нажатием кнопки, причем сразу на все инстансы, да?

1 инстанс.
Re[20]: Деплой...
От: Shmj Ниоткуда  
Дата: 12.09.21 17:17
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Во-первых, инстанс всегда один. Папка на RPD оставалась открытой, никто ее не закрывал. Версии новые выпускались не так часто, чтобы этим страдать.


НС>Ну чо, продолжай в том же духе.


Сейчас другая ситуация, я же писал выше.
Re[16]: Деплой...
От: Sharov Россия  
Дата: 13.09.21 11:33
Оценка:
Здравствуйте, rosencrantz, Вы писали:


S>>Просто было категорическое заявление, что RDP+ручное копирование

S>>используют совсем нехорошие люди. В моем случае была развертка на одну машину и совершенно на нерегулярной основе.
S>>Вот как раз для подобного RDP+ копирование самое то, поэтому меня и удивила категоричность (а-ля всегда и везде).
R>А я вот плюсану категоричность, потому что нет каких-то объективных причин выделять "редко деплою" и "деплою всего на 1 машину" в отдельную категорию. Обычно если умеешь, то пофигу редко там или не редко — заскриптованный деплоймент становится таким необсуждаемым минимумом, как руки мыть после туалета. Если не умеешь, да, причины не делать нормально всегда найдутся.

Я полностью согласен с тем, что задача любого программиста автоматизировать вся и все. Но вот как быть с таким
важнейшим компонентом как время? Ну ушло бы у меня на написание и отладку скрипта, которым я воспользуюсь 5-6 раза
от силы скажем не менее часа, а то и более 2-х. При этом по RDP скопировать, проверить и запустить дело от силы
5 минут. Автоматизация нужна для выигрыша времени в основном. Тут никакого выигрыша нет, разве что опыт, да
и выложить скрипт на гитхаб всяким hr показывать. Не более.
Кодом людям нужно помогать!
Re[18]: Деплой...
От: Sharov Россия  
Дата: 13.09.21 14:39
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

S>>Ну ушло бы у меня на написание и отладку скрипта, которым я воспользуюсь 5-6 раза

НС>У тебя сервис 5-6 раз деплоится, а потом ты его выкидываешь на свалку?


Это исправление ошибок и новая версия. Все остальное время он просто работает.

S>>Автоматизация нужна для выигрыша времени в основном.

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

Сложно сломать сервис, который по сути один exe файл со справочной бд в виде файла sqlite.
Надо понимать, что программы\сервисы разные бывают, а не только high scalability веб сервисы.
Кодом людям нужно помогать!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.