Задать вопрос
  • Docker: принято ли ставить на продакшене?

    1. принято. Если кто-то станет шикать на вас за это — это их проблемы, а у нас свободные нравы!
    2. правильно.

    С монтированием – по-разному. Как удобнее. Варианты:
    • в проекте папка /docker под ней в подпапке /docker/nginx – конфиги nginx, которые биндятся в контейнер по одному, или всей подпапкой. Удобно, если захочется по-живому редактить конфиги;
    • в контейнер при его билде, инструкциями в его Dockerfile, копируются файлы из папки;
    • прилетает уже готовый-собранный образ, из которого поднимается рабочий контейнер, не запариваясь расположением конфигов и какими-то настройками.

    Логи направляются в Stdout контейнера и хранятся Docker'ом. Посмотреть хвост: docker logs --tail 50 имя_контейнера
    Ответ написан
    Комментировать
  • Docker: принято ли ставить на продакшене?

    Griboks
    @Griboks
    Стандартный прод сейчас выглядит так: кластер серверов, поверх которых натянуто облако, в котором запускаются контейнеры. Конечный продукт, соответственно, работает как и в любом гугловском облаке - тупо запускается. Остальное - не ваши проблемы.

    p.s.
    Хотя с другой стороны очень часто встречаются бородатые дядки, которые, разумеется на Windows 10 Enterprise edition, запускают виртуалку WMVare Workstation, в которую устанавливают докер, в котором запускают ваш контейнер. Но это уже их проблемы, что всё через одно место сделано.
    Ответ написан
    4 комментария
  • Какую систему мониторинга серверов используете вы?

    @unseriously
    Систему мониторинга нужно выносить на отдельную железку. Иначе, если упадет основной сервер, на котором, собственно, и живет мониторинг, то вы об этом не узнаете.
    А на счет того, что использовать, я топлю за Prometheus - простой в установке и настройке, уведомления в телеграм, слак, почту и т.д. Графана + прометеус = любовь.
    Ответ написан
    Комментировать
  • Какую систему мониторинга серверов используете вы?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Я использую связку grafana + influxdb + (telegraf/collectd).
    1) не нужно практически ничего настраивать, ну кроме самих графиков и url подключание я influxdb
    2) все ставится за 15 минут, с раскомментированием нужных модулей в конфигах.
    3) в telegraf полно плагинов для сбора статистики с практически любого ПО, в collectd также.
    4) если нужны оповещения ставлю kapacitor из то-го же стека. вот с ним нужно немного повозиться, чтобы слал что и куда нужно.
    5) да, все можно запустить в контейнерах
    Мониторю кластер из порядка 40 вычислительных серверов и хранилище CEPH.
    Ответ написан
    Комментировать
  • Не могли бы вы разъяснить всю эту "кашу" фреймворков экосистемы .NET на 2021 год?

    .NET

    Это общее название всей экосистемы + название .net core после 5 версии.
    .NET Core

    Это название кроссплатформенного рантайма.
    ASP NET Core

    Фреймворк для разработки веб-приложений под .net core / .net 5+
    ASP NET Core 5

    Конкретно пятая версия этого фреймворка
    ASP NET Core 5 MVC

    То же самое + реализация паттерна MVC с использованием razor pages.
    Что к чему? Что самое свежее/актуальное сейчас?

    Самое свежее - .net 5, asp net core 5, asp net core 5 mvc
    Через месяц уже 6 версия выйдет.
    Ответ написан
    Комментировать
  • Что можно попробовать сделать для восстановления жёсткого диска?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    seagate 2012 года на терабайт, при подключении головка бегает туда-сюда некоторое время, затем диск отключается

    У дисков Сигейт такие симптомы (щелчки / клики, затем остановка двигателя) означают выход из строя головок. Очень часто с повреждением магнитной поверхности пластин той или иной степени.

    Фото повреждённой головки жесткого диска под микроскопом
    foto-golovok-zhestkogo-diska-pod-mikroskopom.jpg

    Диск явно подвергался пыткам во время работы: на блине есть отчётливая царапина и несколько точечных царапин.

    Seagate мог начать гробить себя и во время обычной работы, а окончательно запилиться в процессе попыток самостоятельного восстановления - подключить туда, подключить сюда, попробовать какую-нибудь программу, и т.п.

    Говоря в целом, вы очень зря вскрыли гермоблок жёсткого диска. Даже если бы на блинах не было царапин, это сделало бы ситуацию хуже, а стоимость восстановления данных - выше.

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

    Уж простите мой сарказм, но это примерно как спросить врача: "Человек на спорткаре влетел в столб на скорости 250 км/ч. Наклеили ему на лоб аж три лейкопластыря, как ещё можно попробовать его подлечить?"

    Сами вы не сделаете уже ничего. Контакты на плате здесь совершенно не при чём.
    Класть диск в холодильник и менять плату - тоже не поможет.
    Диск нужно тщательно очищать от магнитной пыли внутри и менять блок головок. Скорее всего, не один раз.
    А с учётом описания ситуации, не факт, что в таком состоянии его получится запустить вообще.

    этот диск ни в какой специализированный дорогой сервис относить не будет

    Тогда всё. Такой случай (концентрические царапины, вскрытие) требует специалиста по восстановлению информации очень высокой квалификации. А те, кто умеют работать с такими случаями, расстроят вас ценой и сроками.
    Ответ написан
    Комментировать
  • Как запретить root'у нарушать квоты других пользователей?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Просто у меня программа из под рута

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

    Причина очень проста - root обладает неограниченными правами на все. Поэтому, если ваша программа криво написана, взломана (как следствие первого) и так далее, она может сломать все на своем пути.

    Поэтому, все сервисные программы сидят исключительно под своими персональными пользователями, а уже этим пользователям выдаются права на конкретные операции.
    Ответ написан
    1 комментарий
  • Можно ли написать бота для вызова такси в ситимобил?

    @Fenix957
    1)https://habr.com/ru/post/575460/
    2)Делаете по инструкции и повторяете запросы
    3) PROFIT
    Ответ написан
  • Очень быстро лить в БД 1 млн. строк в секунду и настолько же быстро читать их. Как лучше осуществить?

    @Yury093
    Конечно может, вопрос в железе. И микроскопом можно забить гвоздь.
    Но на слова "хочу быстро вставлять и быстро читать потоком" так и хочется ответить "а зачем тебе БД?"

    Поэтому хотелось бы уточнить у автора: а вот кроме описанного "вставить миллион, считать миллион" - что предполагается делать с данными? Менять их построчно? Искать по какому-то ключу? это все надо? Если нет - я бы все же рекомендовал не использовать БД.

    Тут следует понимать что любая нормальная БД это [почти] всегда двойная запись на диск: вы пишите в таблицу И в лог базы данных. Именно поэтому файл или Kafka или иной MQ будет всегда быстрее.

    Ну а если БД все равно нужно - ну тогда BULK режимы вам в помощь. Обычно они используются для пакетной инициализирующей загрузки. В некоторых БД они на время своей работы могут отключать какие-то фичи или даже логирование в лог транзакций.
    ----------------------------
    Вообще по всем признакам в вашем случае идеальным будет вариант писать в MQ (RabbitMQ или Kafka или см аналоги), а уже из нее в БД. "Все так делают", по крайней мере в крупных компаниях это довольно типовое решение для подобных вашей задач. Причем БД в этой истории нужна только если вам потом нужно хранить и селектить. Если после первой операции данные вам более не нужны, либо нужен только бэкап, то БД не нужна - пишите в файл, пакуйте в zip (в энтерпрайзе - кидайте файлы в Hadoop в каком нибудь Parquet формате).
    Ответ написан
    1 комментарий
  • Какую страну выбрать для личного VPN сервера?

    @mrBarabas
    Вы не совсем правильный вопрос задаёте, важно не столько в какой стране сервер, сколько в чьей юрисдикции работает хостер и насколько там Ваши активности являются законными. Объясню почему так на примере, есть три сервера, все в Германии, один - диджитал оушн, второй - линод, третий - условный рег.ру. Так вот, при попытке скачать торррент первый забанят через пару минут, второй - может и никогда, третий вообще не заметит. Потому что ДО работает в американской юрисдикции и всегда выполняет запросы правообладателей, остальные могут или до поры до времени не замечать, а кому-то наплевать вообще на какие-то жалобы каких-то правообладателей (но это часто крупных хостеров не касается). Про это я лично узнал на практике - когда прислали гневный тикет, сейчас находимся на Линоде, но качания с торрентов (случайно получилось забыть выключить ВПН при скачивании какого-то фильма одним из наших сотрудников за что получил «по ушам»).

    Я бы советовал Германию и США осторожно обходить стороной при выборе сервера, где может идти раздача торрентов (а она идёт всегда при скачивании по умолчанию, если ничего специально не отключать).

    А также более подробнее спланировать для чего, кроме сёрфинга может быть использован ВПН и узнать насколько это законно там, где будете размещаться
    Ответ написан
    Комментировать
  • Почему для скриптинга в шелле используется bash а не более современный язык программирования?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Насколько я понимаю раньше шеллы использовались в качестве примитивных высокоуровневых языков. Сейчас у нас есть Perl, Python, nodejs, php...


    Ну давайте вместо рабочего стола пользователю дадим сразу Visual Studio, ведь какая разница как программу запускать - иконкой на рабочем столе, или форкать из высокоуровневого языка?

    shell - это оболочка операционной системы. То, что кроме графической есть еще и command line interface - это совершенно нормально и адекватно. И шелл позволяет пользователю и администратору работать в операционной системе гораздо удобнее, чем через язык программирования.

    То, что sh/bash и другие, настолько развиты что сами по себе являются неплохими языками программирования - это просто следствие того, что командый интерфейс и создавался тогда, когда каждый пользователь был немного программистом, и следствие того, что cmd line удобен для автоматизации просто по своей архитектуре.
    Поэтому Powershell, bash/zsh/ksh будут продолжать развиваться.

    Но ты можешь попробовать писать всю автоматизацию на любом другом языке программирования. И со временем немного столкнуться с тем, что скрипт, написанный на шелл 10 лет назад - просто работает, а скрипт написанный на питон 10 лет назад - несовместим.
    Ответ написан
    42 комментария
  • Как правильно перенести SSH ключи с клиентской машины?

    karabanov
    @karabanov Куратор тега Linux
    Системный администратор
    Никогда так не делай.
    Приватный ключ не должен покидать машину на которой он был сгенерирован.
    Сгенерируй на другом устройстве пару ключей и добавь открытый ключ на сервер, каждое устройство должно подключаться со своими ключами.
    Ответ написан
    Комментировать
  • Как настроить nginx на подстановку домена?

    Lynn
    @Lynn
    nginx, js, css
    Никак.
    Ответ написан
    Комментировать
  • Стоит ли изучать Machine Learning если хочется создавать видеоигры?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Не волнуйтесь, специалистов ML ИИ заменит первым=). А ещё раньше все машины и самолёты будут исключительно с автопилотами, потому что водителей заменить проще, чем программистов.
    Программист должен быть готов постоянно учиться, если вы не готовы, то идите лучше водителем, они тоже не скоро будут вытеснены ИИ. На наш век любой работы хватит. Даже лифтёром или телеграфистом, я уверен, еще можно где-нибудь устроиться.
    Нравится ML - занимайтесь им, вы же в индустрии, вы в одиночку пилите инди-игры? Серьёзные игры пишут большая команда. Если б вы хотели быть строителем, то вы вполне могли бы не разбираться в устройстве черепичной кровли, если достаточно хорошо кладёте кирпич или штукатурите. Все работы хороши, выбирай на вкус те, в которых интересно будет развиваться.
    Ответ написан
    3 комментария
  • Можно ли сделать файл подкачки Убунту не на системном диске ssd, а на hdd который в optibay?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Поддержу оратора из комментариев, что все эти "страдания SSD от свапа" остались где-то далеко. Сейчас ресурс дисков настолько увеличился и фирмварь настолько поумнела, что те (честно сказать, небольшие) объёмы данных, которые при своей работе гоняет браузер, приведут к выводу его из строя ещё крайне нескоро.

    А свап на чём-то медленном - это вообще изврат, поскольку всё будет люто тормозить из-за него при нехватке памяти. Оно вам надо?
    Ответ написан
    Комментировать
  • Как парсить Wildberries?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Не знаю как обстоят дела с Wildberries, но для практики я бы взял что нибудь полегче. Маркетплейсы обычно вешают много защиты, и даже если на первый взгляд ее нет - через пару (десятков) запросов просто не даст парсить.
    Ответ написан
    Комментировать
  • Не работает replace. Буду рад помощи (без "учи питон")?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Надо не в гугле искать, а учебник читать.

    P.S. Не нужно нам говорить, что нужно говорить.
    Ответ написан
    4 комментария
  • Как с prometheus мониторить максимальную пропускной способность и состояние( стабильность) локальной сети?

    @zohan1993
    devops
    для "ping" лучше использовать blackbox_exporter - icmp module
    очень хорошо вписывается в эту связку
    https://github.com/prometheus/blackbox_exporter

    скорость между серверами в данной локальной сети
    можно например так
    настройте доступ по ssh ключам между серверами
    добавьте в крон команду
    копирования файла с сервера 1 на сервер 2 через scp с нужной вам частотой

    с помощью функции rate и этих метрик можно будет видеть скорость приема/передачи на интерфейсах

    # The average network traffic received, per second, over the last minute (in bytes)
    rate(node_network_receive_bytes_total)[1m])
    # ---
    rate(node_network_transmit_bytes_total)[1m])
    Ответ написан
    Комментировать
  • Генерация случайного десятизначного числа с паузами в цикле?

    MaKvc
    @MaKvc
    Отчаянный веб-разработчик
    Рандомное число random и randomseed

    В lua из коробки нет функции задержки, вот решение:
    local clock = os.clock
    function sleep(n)  -- Секунды
      local t0 = clock()
      while clock() - t0 <= n do end
    end
    
    -- использование
    sleep(5)


    UPD: Можно так:
    local clock = os.clock
    function sleep(n)  -- Секунды
      local t0 = clock()
      while clock() - t0 <= n do end
    end
    
    sleep(5)
    print(math.random(os.time()))
    sleep(5)
    print(math.random(os.time()))
    sleep(5)
    print(math.random(os.time()))
    -- ...
    Ответ написан
    1 комментарий