Задать вопрос
  • Как траблшутить 503 ошибку?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    https://developer.mozilla.org/ru/docs/Web/HTTP/Sta...
    503, как правило, означает, что сервер/серверы к которым должен быть переадресован запрос, отсутствуют.
    Если вы получаете этот ответ от nginx (смотрим логи) - значит ваш сайт на апаче валит хелсчеки или каким-то другим образом недоступен для nginx.
    Если вы получаете этот ответ от сайта на apache - возможно, в коде есть нечто, что ожидает ответа от удаленного сервера и по той же причине генерирует 503 ошибку.
    Ответ написан
  • Как поставить timeout?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    вот странно, у вас питоновские скрипты, в питоне есть множество способов организовать контролируемый таймаут выполнения субскрипта, но вы хотите cmd\bat
    import subprocess
    try:
        r = subprocess.run(['python', 'script2'], timeout=5)
    except subprocess.TimeoutExpired as e:
        print(e)
    try:
        r = subprocess.run(['python', 'script1'], timeout=50)
    except subprocess.TimeoutExpired as e:
        print(e)


    Вот странно, у вас windows,почти в любой windows есть powershell, отлично умеющий управлять процессами, но вы хотите cmd\bat
    $p1=start 'python  script1.py' -PassThru -NoNewWindow
    $p2=start 'python  script2.py' -PassThru -NoNewWindow
    $p1 | Wait-Process -Timeout 10 -ErrorAction SilentlyContinue -ErrorVariable t1;if ($t2) { $p1 | kill}
    $p2 | Wait-Process -Timeout 500 -ErrorAction SilentlyContinue -ErrorVariable t2;if ($t2) { $p2 | kill}


    Может быть стоит прекратить разврат и закопать стюардессу?
    Ответ написан
    Комментировать
  • Не работает SketchUp. Как исправить?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    беглый гуглёж говорит, что драйвера intel в windows иногда странно работают со sketchup, пробуйте найти другие версии на сайте intel (подозреваю, что дополнительно в систему ничего не устанавливали и драйвер поставился через winupdate)
    Ответ написан
    Комментировать
  • Как узнать через Python, какие порты занимают приложения в Windows?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    можно сделать например так, про библиотеку тоже не подскажу
    netstat.ps1
    Foreach($p In (Get-Process -IncludeUserName | where {$_.UserName} | `
      select Id, ProcessName, UserName)) {
          $properties = @{ 'PID'=$p.Id;
                           'ProcessName'=$p.ProcessName;
                           'UserName'=$p.UserName;
                         }
          $psobj = New-Object -TypeName psobject -Property $properties
          $obj+=$psobj
      }
    
    Get-NetTCPConnection | where {$_.State -eq "Established"} | select `
      RemoteAddress, `
      RemotePort, `
      @{n="PID";e={$_.OwningProcess}}, @{n="ProcessName";e={($obj |? PID -eq $_.OwningProcess | select -ExpandProperty ProcessName)}}, `
      @{n="UserName";e={($obj |? PID -eq $_.OwningProcess | select -ExpandProperty UserName)}} |
      sort -Property ProcessName, UserName |
      ft -auto


    netstat.py
    import subprocess, sys
    p = subprocess.Popen(["powershell.exe", "./netstat.ps1"], stdout=sys.stdout)
    p.communicate()

    PS скрипт писать было лень, скоммуниздил
    Ответ написан
    Комментировать
  • Возможно ли найти владельца сайта?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    да, странная ситуация.
    Может быть просто не с той стороны зашли? Попросите хостера оставить сообщение владельцу сайта, что он зря тратит деньги и сайт можно закрыть. Если хостер отказывается, в принципе, вы можете пойти по вот такому пути:
    https://help.sweb.ru/entry/235/
    У вас же юрлицо, а значит контакты, адрес - все указывает на вас.
    В комментариях к другому ответу написали номер телефона, возможно, это действительно более "лайтовый" вариант начала общения
    Ответ написан
    Комментировать
  • Зависит ли формат файла 'состояния' терраформ (state) от версии aws provider?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    формат tfstate формирует терраформ, а не провайдер.
    Провайдер предоставляет вполне себе определенные записи, которые затем терраформ хранит в стейте.
    Кроме того,. апгрейд внутри одной мажорной версии 2.57 -> 2.59 вообще как правило не содержит ломающих изменений, вот если бы вы из 1.3 на 2.59 апгрейдились - действительно стоило бы беспокоиться.
    Если есть сомнения - изучайте
    https://registry.terraform.io/providers/hashicorp/...
    https://registry.terraform.io/providers/hashicorp/...
    Ответ написан
    Комментировать
  • Изменение ip адреса в EC2?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Что есть "статический публичный адрес"? При каждом создании EC2 вы получаете новый публичный адрес. Хотите менять выходной адрес вручную - велкам, Elastic IP к вашим услугам, однако, возможно, потребуется перенастройка вашего vpn решения и клиента который к нему подключается (поскольку неизвестно что за решение и как вы его настраивали).
    И, кстати говоря, в текущей формулировке никакой проблемы с aws у вас нет, ваша проблема в том что ваш трафик блокируют. Хотите решать проблему с aws - опишите проблему с aws
    Смена облака на другое, скорее всего, если и поможет, то случайно - диапазоны крупных игроков известны и могут так же как и AWS быть внесены в списки
    Ответ написан
    Комментировать
  • Как добавить удаленное хранение файла?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    ключ - это имя объекта в s3 бакете, контент которого соответствует файлу terraform.tfstate лежащему сейчас локально.
    Если у вас простой код (как на скриншоте) - можете спокойно называть ключ "terraform.tfstate"
    Если вы в одном бакете храните ключи разных частей одной инфраструктуры - сделайте логическое разделение "ec2/terraform.tfstate", "vpc/terraform.tfstate"
    вообще можете назвать хоть "123" - это просто название ключа, где терраформ будет искать стейт в будущем. Единственное ограничение - имя ключа должно соответствовать правилам именования объектов в S3
    Ответ написан
    Комментировать
  • Как правильно настроить почтовик, чтобы не попадать в спам?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    1. В области корректности настройки почтового сервера 90% работы для вас делает яндекс.
    2. Пройдитесь по чеклисту DNS настроек от яндекса - проверьте корректность настройки DNS для вашего домена.
    3. Другое дело, что спам фильтры реагируют, в том числе, на контент который вы рассылаете - тут можно только посоветовать вам ... не рассылать, простите :D
    Вот и яндекс так же пишет

    И да, использовать корпоративную почту (то есть почту, которая используется во внутренних бизнес процессах компании) для рассылки клиентам разного - чревато нарушением бизнес процессов.
    Лучше организовать для клиентов поддомен и отдельную почтовую службу, чтобы, в случае чего, не потерять возможность работать с корпоративной почтой.
    Ответ написан
    Комментировать
  • Как скрыть IP адрес при отправке почты?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    1. Если вы хотите чтобы ваша почта отправлялась - IP адрес почтового сервера с которого почта уходит (а от соединения IP вашего сервера - IP таргета вы никуда не уйдете) должен иметь достаточно много завязок в публичном DNS и известен антиспам-системам как IP с хорошей репутацией. Дмитрий об этом упомянул.
    Заголовок тут дело 10-е
    2. Скрыть "ваш" (точнее тот, который вам предоставил ваш провайдер) IP в заголовках в принципе можно - находите или настраивайте relay который будет резать заголовок и шлите вашу почту только через него. Однако тут возвращаемся к пункту 1 - теперь целевой стороне (да и всему интернету) хотите вы или нет, известен адрес этого relay и при желании его можно легко с вами ассоциировать.
    3. Можно использовать веб почту без локального клиента на каком-нибудь уже раскрученном почтовике, но как вы сами понимаете, теперь почтовик знает ваш IP.
    Если для вас и это недопустимо - договаривайтесь чтобы он его удалял =;D но даже не представляю сколько это может для вас стоить и будут ли реально выполнены договоренности. Наибольшую анонимность здесь можно достичь, регистрируя каждый раз новый email с нового IP адреса(и чистого браузера :D ) . Пользуетесь постоянным email адресом - в конце концов соберется статистика с каких адресов вы на него заходите.
    Резюмируя:
    Используя почтовый клиент вы засветите или свой IP адрес или IP адрес сервера пересылки, который будет ассоциирован с вами. Используя для работы с почтой только браузер - вы засветите ваш IP адрес провайдеру почтового сервиса, в заголовках будут фигурировать его адреса. Используя для анонимизации различные публичные прокси или тор - вас будут блокировать те самые сервера к которым вы хотите подключиться, репутация что у первых что у второго в антиспам системах не ок.
    Ответ написан
    Комментировать
  • Хотел улучшить качество подключения интернета через команды bat файла, стало только хуже, как отменить?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Не знаю при чем тут message queueing (первая строка)
    но остальное по идее может быть приведено в дефолтное состояние двумя командами:
    netsh int tcp reset
    netsh int ip reset
    Повторю: дефолтное для системы. Это не приведет состояние tcp и ip стека к тому виду которое было до внесения правок.Для пущего эффекта лучше после этого перезагрузиться

    набор команд
    ipconfig /release
    ipconfig /renew
    ipconfig /flushdns
    необходим для обновления сетевых настроек, очистки локального ДНС кеша и никак не должен влиять на качество работы вашего WiFi

    P.S. Надеюсь, вы сделаете выводы, что без понимания, что именно делают команды, запускать всякие батнички из "этих ваших интернетов", обещающие оптимизировать систему, не только глупо но и опасно
    Ответ написан
    6 комментариев
  • Из-за чего может слетать SSL на странице?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    при хождению по вашему сайту и заходе на страницу которую вы указали - она открывается просто по https и без всяких "небезопасно".
    Однако эта страница, в отличие, например, от главной gcp77.ru не делает редирект на https:// - именно поэтому она показывается небезопасной. если открыть ее напрямую по http://
    Я бы сказал, что у вас не для всех запросов настроен редирект с http на https а только для главной страницы сайта. Ваша проблема мне видится в неверной конфигурации вебсервера.

    Кроме того, (это не связанная проблема, но в общем может вызвать проблемы в будущем) у вас, возможно, возникнут проблемы с миксед контентом (которых сейчас нет) из за того. как именно вы прописываете ссылки на сайте.
    spoiler

    скриншот кода проблемной страницы сайта при открытии через http://
    5eb26941966ee119700620.png
    скриншот кода этой же страницы через https://
    5eb2697ad17c8903556100.png

    В https режиме практически все инклюды скриптов и ссылки (кроме 3) - https://
    В http режиме есть инклюды и ссылки с http:// https:// и //:
    Рекомендуется использовать относительные ссылки на своем сайте. или хотя бы //: для того чтобы при заходе с http:// Они грузились через http а с https - с https. Это уменьшит вероятность возникновения проблемы с миксед контентом в будущем
    В случае с внешними ссылками - лучше использовать https:// с той же целью
    В течение этого года chrome обещал усилить паранойю и запретить загрузку картинок c http урлов на https сайте а так же переходы на http ссылки, находящиеся на https сайте.
    Ответ написан
    Комментировать
  • Как в haproxy сделать, чтобы подставлялся для каждого домена свой сертификат?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    frontend domain.com
    bind 0.0.0.0:443 ssl crt /etc/haproxy/certs/domain.com.pem

    На 443 порту у вас все эти сайты терминейтятся, а сертификат вы указываете один.
    конкретно в вашем случае необходимо директиву crt указывать несколько раз:
    bind 0.0.0.0:443 ssl crt /etc/haproxy/certs/domain.com.pem crt  /etc/haproxy/certs/en.domain.com.pem crt  /etc/haproxy/certs/ru.domain.com.pem crt ...

    Или же - проще - указать директорию где лежат правильно приготовленные сертификаты и загрузить их все одно опцией crt /etc/haproxy/certs/
    HAProxy в алфавитном порядке будет подставлять сертификаты. Соответственно если у вас в папке лежит устаревший сертификат для en.domain.com и новый для wildcard.domain.com - загружаться будет en... пока вы его не удалите и не перезагрузите HAProxy. Сертификаты из папки подгружаются при старте HAProxy и при замене сертификатов надо перезагружать софт (особенно актуально, если вы используете загрузку из папки)
    К сожалению, вы не указали версию HAProxy и OpenSSL либы с которой собрана хапрокси.
    В зависимости от версии хапры, опенссл и наличия\отсутствия openssl либы оно может работать по разному.
    Ответ написан
    5 комментариев
  • При открытии услуги на сервере возникла ошибка в работе скрипта open.sh, в чем проблема?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    статус код 126
    tldp.org/LDP/abs/html/exitcodes.html
    Permission problem or command is not an executable
    Предположение1: у пользователя под которым на сервере выполняется программа запускающая скрипт(и пишущая указанный лог) нет доступа к файлу /usr/hosting/python/scripts/open.sh
    Предположение2: скрипту не установлен executable bit
    Это правится chmod +x /usr/hosting/python/scripts/open.sh
    Ответ написан
    Комментировать
  • Как обновить Windows 10 до 1903, если можно освободить 8 гигабайт?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    системные требования 1903 - 32Gb места на диске.
    думаю, вариант единственный который может получиться - чистая установка (и не поверх а сначала все нафиг удалить и диск форматнуть).
    Ну и в дальнейшем все равно будет проблема с местом.
    Ответ написан
    Комментировать
  • Как убрать тире в текстовом документе?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Для того чтобы дать что-то для сравнения к ответу res2001: Сами решайте где сложнее а где проще
    Posh
    (get-content old.txt -raw) -replace "-","" | set-content new.txt

    встраиваем в cmd:
    powershell.exe "(get-content old.txt -raw) -replace '-','' | set-content new.txt"
    Ответ написан
    3 комментария
  • Как загрузить локальный репозиторий на GitHub?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Как правило я локальные репы переношу проще:
    1. создаем пустую репу на гитхостинге
    2. клонируемся с пустой репы
    3. копируем из локальной репы в заклонированную с хостинга все файлы
    4. адд, коммит, пуш
    забываем про старое место хранения локальной репы и продолжаем жить в новой, связанной с хостингом
    Ответ написан
    Комментировать
  • Как переместить файлы по папкам по четности/нечетности имени?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Posh
    $folder='z:\test';$target=("$folder\a","$folder\b"); Get-ChildItem $folder -File | foreach { $p=[int]$_.BaseName % 2; Move-Item $_ $target[$p] }
    Ответ написан
    2 комментария
  • Как установить Yarn в Ubuntu WSL?

    @yellowmew
    Cloud infrastructure, monitoring engineer. SRE
    Я вот тоже загуглил, вторая строчка выдачи
    https://askubuntu.com/questions/1230172/gpg-cant-c...

    И вообще, не надейтесь что в wsl все будет работать так же как и в нормальном линуксе.
    Хотя бы дождитесь wsl2 (сейчас обещают конец мая начать дистрибьюцию апдейта с ним) - в нем wsl переписан чуть меньше чем полностью
    Ответ написан