Совух в матрице MothQuiet
18 subscribers
74 photos
1 video
18 links
📕 Записки девелопера

📱 Соц. сети:
GitHub: https://github.com/dadowl
Vk: vk.com/fayence
Download Telegram
Произошёл закуп комплектухи для третьего сервака)
👍3
Из-за появления нового сервака, основная нагрузка перешла на него с первого сервера, а это значит, что теперь почти всегда первый сервер работает максимум на 10%.

В общем то, это не выгодно, да и сервак староват уже, поэтому было принято решение перевести серваки МК на виртуальные тачки.

Пока что план такой: поднимаю гипервизор на новой тачке, делаю кластер между ней и вторым сервером, переношу все сервисы на них, параллельно деля на вирталки и первый сервак отключаю. Звучит не сильно сложно, но за этим стоит куча часов гугления) Например, с субботнего вечера и до вечера воскресенья я просто пытался установить гипервизор на сервак. Оказалось, что новая версия конфликтует с драйверами на видеокарту и фризит установку.

Поднимать буду на Proxmox, ибо это бесплатно, есть и платная версия, но она пока избыточна для меня и проекта в целом.

В общем-то, этим кейсом хочу еще закрыть пробелы в знаниях в области виртуалок, ну а так как для теста поднимать отдельно скучно, да и оборудования лишнего не имеется, то эксперементировать будем сразу в продакшене :)
❤‍🔥3
к таким пранкам жизнь меня не готовила
❤‍🔥2💩1
Спустя 3 дня, мне все таки удалось устновить гипервизор Proxmox. Переустанавливал систему раз 6 за это время, пробовал разные варианты - Proxmox позволяет как установиться из официального образа, так и установить пакеты на образ голого Debian. Однако, при установке из официального образа нельзя разметить диски, поэтому мучался со вторым вариантом установки.

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

Создал тестовую виртуалку, все работает замечательно. Теперь надо все повторить на втором сервере… но теперь, я знаю куда копать, так что сразу нвидию в блок вкину)

Подумал еще над тем, что неплохо было бы взять парочку дисков на 2-4 тб, обьединить их в рейд и туда писать бекапы, тем более, что proxmox имеет инструменты для этого, так что думаю это будет моей следующей покупкой)
❤‍🔥1👏1
Наконец-то я все закончил.. ну как все, я перенес основные сервисы МК на новую инфраструктуру, потому что нельзя уже было оттягивать.
Еще осталось перенести мониторинг и Квору, но это можно сделать, не нарушая работы сервера.

В общем то, я смог настроить сеть так, чтобы не разворачивать ВПН для серваков на каждой виртуалке, а развернуть ВПН только на гипервизорах. Для человека, который не до конца разбирается в сетях, это было сложно, но после нескольких упорных часов гугления это все же удалось.

Из того, с чем пришлось еще посидеть, я бы отметил поднятие БД 😄 Мы используем mysql как бд и при миграции было принято решение перейти на MariaDB. В общем то, бекап сделал, перекинул его на виртуалку, начинаю разворачивать. Сначала были проблемы с кодировкой, но это фиксится прогоном регулярки в файле на ее замену, ладно, с этим разобрался, идем дальше. Развернул бекап, пытаюсь залогинится - пишет ошибку, говорит плагина нужного нету. Попробовал залогинится серваком мк - работает. Полез в гугол, нигде особо про эту ошибку нет инфы. Еле нашел решение, но и оно не помогло. Гуглил по всякому - либо инфы нет, либо есть, но нифига не работает. В итоге, после наверное раз 5 переустановок базы, решил посмотреть дефортную базу пользователей и глянуть у них метод авторизации с которым все работает. После этого чекаю, что в моей бд там с авторизацией и вижу отличия, меняю регуляркой на рабочую, восстанавливаю и вуаля, оно работает! С восстановлением PostgreSQL были проблемы, но решились они быстро. Больше всего негодую по поводу того, что почти везде написано как восстановить 1 конкретную базу из бекапа, а не все.

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

Из минусов данного подхода я бы отметил пинг. Например пинг от виртуалки с гипервизора 1 до виртуалки гипервизора 2 около 100мс. А почему? Пакет идет сначала до МСК, так как там стоит сервак впн, обьединяющий все вместе, и потом обратно возвращается. Грубо говоря, для серваков, которые расположены меньше метра друг от друга пакеты идут через такую петлю. В целом решения 2. Первое - переехать в МСК и перевезти туда всю инфраструктуру. Первое - в серваки добавить еще по 1 сетевому интерфейсу и на каком-нибудь мини пк с низким потреблением сделать роутер, который будет обьединять сеть виртуалок и ВПН в 1 общую, а не 2 за каждым гипервизором, как сейчас. Второй вариант - это перенести впн сервак в Новосибирск, а так как пинг в пределах города достаточно минимальный, проблема с петлей через МСК будет решена. Решена то она, конечно, будет, но есть другая сторона. Трафик у нас идет через Германию, пототому что там ближайшая точка анти ддос защиты, а значит общий пинг до сервера будет скорее всего еще выше, чем сейчас. В общем, в таком случае надо будет искать защиту от ддос где-то в России. Мда уж, эти проблемы селф хостинга…
👏4❤‍🔥1
В среду старт)
❤‍🔥2
Эх, хотел залутать JetBrains аккаунт для учебы бесплатно, зарегавшись через почту школы, но из-за кое-чего теперь это нельзя(
🤬3
Решил, что стандартная темная тема убунты достаточно темная, поэтому обновил тему на кастомную, ну и иконки заодно) балдеж)
❤1👏1
кто джуна на прод пустил?
🤣1
В общем, на моем пк была загружена линуха, а когда я пришел домой, я переключил его на винду. После перехода с линухи на винду время постоянно сбрасывается и его нужно снова синхронизировать. Пока я ехал домой, я добавил пару песен в Spotify в любимые треки, и забавно то, что из-за сбоя времени на пк, он начал показывать эти песни, как будто я добавлю их в будущем. Забавный баг однако)
👏1
А еще случился 1 интересный баг с IDEA. Обновил пару месяцев назад, активировал триал версию и начал работать. Потом срок закончился, случайно активировал еще раз, подумал, что баг, но все работало и я как-то забил. Сегодня активировал 3й раз и я уже уверен что это действительно баг)) Я даже разлогинился в аккаунте JetBrains, хотя должен быть залогинен, ибо с какой-то версии аккаунт стал обязательным для триала. В общем, приятный баг))
Ох ебать я ахуел на этой неделе, делал проект в школе, сдаю его, а херакс и автотест его не принимает. До отчисления остаётся буквально 3 дня, заебывают еще по фрилансу, но я не отчаиваюсь, спидраню фриланс, чтоб отстали, переделываю проект, все что можно и беру самые сложные тесты, что мы нашли, 2 дня лютого погружения в си и тесты проходят. Ура! Начинаю проверяться, понимаю, что мне не хватит времени и очков на последнюю проверку, проверяю челика, проверяю свой проект и финалю.
Чтож, а как прошла ваша рабочая неделя? :D

P.S. Самое забавное, что за 1 день до дедлайна, админы продлили всем его на 14 дней из-за багов на платформе, так что повезло повезло.
👏1
Решил поделиться радостной новостью)

В пятницу сдал экзамен по вождению, а вчера получил водительское удостоверение!

У меня была хорошая автошкола, где грамотно учат, поэтому все этапы(внутренний экзамен, теория в гибдд, практика в гибдд) до его получения я прошёл с первого раза)

Теперь надо купить машину...
🔥4
Под конец года сдали еще 1 групповой проект по школе 21.
Он достаточно большой по работе и сдать его на максимум практически нереально, судя по отзывам других ребят.

Но у нас получилось! Сдали на максимум. Считаю отличный подарок на нг)
👏3🎉1
Настало время подвести итоги года. Уходящий год был продуктивным для меня с точки зрения специалиста и личности.

Мои итоги года таковы:
- успешное прохождение интенсива в Школе 21 и поступление на основу;
- получение водительского удостоверения;
- нашел новую высокооплачиваемую и хорошую работу под конец года.

Однако, если абстрагироваться от этого, то этот год был тяжелым. Я столкнулся с выгоранием несколько раз. Мне все также нравится работать и писать код, но было сложнее с точки зрения того, что приходилось много писать код для кого-то, и я не про рабочие задачи, а про фриланс. А с фриланса много денег не получить, поэтому каждый заказ был как пытка с желанием бросить все и послать всех куда подальше. Одно я могу сказать точно: если я и буду продолжать работать на фрилансе, то буду брать больше денег, потому что у меня стало меньше времени, а оплата предыдущих заказов не покрывает базовые потребности.

Из-за того, что я тратил много времени на фриланс, у меня оставалось меньше или совсем не оставалось времени на свой проект. Это тоже было испытанием, потому что я хочу развивать проект и сделать его больше, чем просто сервер для minecraft, а поскольку я единственный разработчик, прогресс останавливался. Однако, благодаря новой работе, я теперь смогу отдавать некоторые части функционала на аутсорс. Так что надеюсь с этим станет проще в новом году.

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

🎄С Новым годом, друзья! Желаю вам осуществления ваших мечт, достижений и незабываемых впечатлений! 🎄
🎄3
За 2 с половиной года обучения в унике, единственный предмет, который мне реально хоть как-то пригодился и был интересен, это программирование мобилок под андроид) вот теперь думаю сделать какое-нибудь приложение для МК)
🎉3
Обновил себе инет наконец-то, забавно, что я до сих пор этого не сделал.. Думаю, что скоро буду подключать гигабит...

Сравнение до/после
❤‍🔥2👏1😱1
Начало новой регистрации положено 😲
Please open Telegram to view this post
VIEW IN TELEGRAM
👏2
Так как, регистрация на MothQuiet будет только через Квору(о чем говорит предыдущее сообщение), то начал с нее.

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

Переписывал все по итогу раза 2, если не 3, ибо первая обновленная версия хоть и работала, но по сути я просто усложнил код еще больше, чем он был))
В настоящий момент реализация командного модуля и команд меня полностью устраивает + нормальный подход и не вырвиглазно выглядит.

Я кстати, давно о ней ничего не говорил, а пост который я писал год назад я не дописал, потом забыл про него и в итоге потерял.
Так что вкратце:
- там появилась параллельная обработка N команд(раньше был только 1 поток - главный на обработку всего), теперь можно сделать столько, сколько нужно
- redis сообщения для запросов данных с сервера
- проверка беседы на спам сообщения и их репорт админам беседы
- команды для управления диалогами(кикнуть участника, удалить сообщение)
- интеграция с аптаймером МК.

#quora
3🤔22111