2022

Защо го правиш?!?

Преди седмица ми попадна една снимка на финиширащ Ironman ,който отдавна е изразходил силите си и това, което е останало от него пресича линията. Остават му 4 секунди преди да го дисквалифицират.
И това ми донесе много спомени, от два дуатлона, от Дунав Ултра, от десетките бревети (към този момент имам малко под 19 000 км на колелото) и много кратки и откровено безразсъдни карания, карания в дъжд, сняг, на минус 6, някакви бягания, skyrunning. И всеки път, богу, ВСЕКИ ПЪТ когато отида някъде я на бревет, я на дуатлон всеки път някой ще се включи – “Защо го правиш това?”, “Защо не си стоиш вкъщи да си почиваш?”. От какво питам аз и обикновено разговора отива в друга посока.

Хората, които не са преживяли достигането на финалната точка на възможностите си и не са я прескачали в последствие никога няма да ни разберат. Не, че аз съм ебахти и атлета, ‘щото не съм, но се опитвам.

Тези хора, които предпочитат други свои дейности не ги виня и то по никакъв начин, защото и аз обичам понякога да си почивам, но да има от какво (тук си говорим във физическо измерение).

Тези хода не знаят какво е да си пред припадък и все пак да продължиш да бягаш още 10км в планините. Или да си кажеш – “Това е, повече не мога” и да се върнеш от Констанца до Варна на ход без значение, че се прибираш в един вечерта.

Моите причини за тези екстремности могат да бъдат добре определени от някой психолог, но за себе си осъзнах, че това е едно от много малкото неща, които могат да ме накарат да получа тишината в главата си, която не мога да получа по друг начин. Преди подтисках (или се борих) с някакви неща в себе си, изживявах други, сега по-скоро искам да усещам само вятър в ушите си и да знам, че единственото нещо, което ще ме накара да се прибера обратно при Златина и Борко е моята издръжливост, а това дава и перспектива и сила, тръст ми.

Не можете да си представите какво е да бъдете 40 часа на ръба на силите си, да боли почти постоянно, да не се чувствате комфортно, да не можете да спрете за повече от една бърза супа за почивка, да пиете по литър и половна вода на час, да знаете, че няма да можете да се справите (изберете си сами – с темпото, маршрута, стратегия за хранене, за каране, може да има евентуален инцидент), но да го направите.

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

Така, че следващия път когато се чудите как може някой да бяга 48 часа, да кара колело толкова, да участва на Ironman (3.8км плуване, 180 км колоездене и 42.2км бягане (класически маратон)), да излезе от вкъщи след депресивен период не го питайте защо го прави, а си представете причината да се прибира. Правим го заради това.

11.07.2022

Уикенда мина под надслов – “опит за учене с дете вкъщи”, а после имаше игри с въпросното дете, разходки, бягане и въргаляне в тревата.

Вчера, неделя, пък се видяхме с Виктор Славчев и Ирина, хапнахме по нещо (note to myself – не умрях от порция миди) и си говорихме доста. Доста, доста, доста. Покрай ковид ограничихме рязко събиранията и комуникацията с хора и това май ми е липсвало доста. Още повече да можеш да си поговориш с два остри ума, да похейтиш малко, да обсъдите има ли такова нещо като “баир надолу” и т.н. :D Беше доста приятно + се оказа, че Ирина ми чете блога (здрасти Ирка!), а когато Виктор се опита да го направи той обикновено е down :D

God of War: Ragnarok най-накрая излезе с дата за релийз

Една от основните причини да имам Playstation 5 е God of War – това е най-добрия gameplay с най-добрата графика (да не забравяме, че релийзната 2018 г.) и с най-добрата история. Нещо, което не вярвах, че ще изпитам пак. Прекарах безброй часове в обикаляне и трошене на глави с брадва, в разговори и лабиринти.

Преди 2 години тийзнаха, че ще има нова версия, но после Covid + проблемите с доставките на Playstation 5 (и не само) забавиха целия пазар.

И ето ни тук, датата е 06.07.2022 и най-накрая, след две години чакане, един тийзър и един трейлър (който съм гледал сигурно 50 пъти) излезе датата на релийза на God of War: Ragnarok – 09.11.2022. Нямам търпение да видя накъде ще се развие историята и какво ще се случи с Кратос (има много мнения по въпроса, но няма да ви тийзвам, спокич), с Atreus и с цялата посока на играта в края си.
Изчетох много фенски теории и честно казано доста от тях звучат много правдоподобно.

А да – не ме търсете на 09.11.2022 ако обичате, няма да отговарям!

Новия gameplay teaser:

И официалния трейлър, който ме държа хайпнат със седмици:

“You seem like calm and reasonable person”

Едит – сигурно си мислите – “Хм, датата не беше ли съвсем скоро? 11 Септември?!?” И ще сте прави. Моя е грешката, че не предвидих date format-а в сайта от който прочетох новината, който е MM/DD/YYYY, а не нашия DD/MM/YYYY. За мое огорчение датата е Девети Ноември, а не Единадесети Септември… Мда, и аз останах разочарован малко, но нищо – ще дебнем намаленията по празниците.

Едит 15 Август – излезе едно невероятно видео, което разказва историята на Кратос и Atreus от последната игра. Жената, която води клипа е невероятен разказвач, а art-а е супер добър. Бтв очаква се това да е най-важния релийз на игра за PS в последните години и други фирми започват да изместват датите на своите релийзи за да не се засекат с GoW: Ragnarok. Това само по себе си говори доста.

Едит 14 септември – излезе един story trailer, който е ЖЕСТОК:

Ново бебе, нова работа, нов рожден ден

В този порядък.

Злати е бременна и ще ставаме родители за втори път. Борката още няма идея какво го очаква, сигурно и ние. Последните 2 години си бяха roller coaster, но не мисля, че съм бил толкова щастлив някога. И толкова изморен. Но си струва всеки момент, всеки памперс, всяка усмивка. Мисля, че точно тези моменти са пикът в моя живот в който всичко е просто (макар и аз да го усложнявам многократно в главата си), Борко е щаслив да ме види, бяга да ме прегърне когато му щукне, Злати ме обича с цялото си сърце и наистина разчитаме мега много един на друг. Аз съм здрав. Ще чета този пост след още 8 години да видим колко съм бил прав.

In other news след три години като DevOps ще сменя работата (всъщност последния ми ден е този четвъртък) и ще продължа пътя към DevOps и Cloud Engineering с още по-голяма засилка и хъс. Освен това смятам да се пусна пак на QAChallengeAccepted като този път темата ще е свързана с връзката между QA и DevOps и вярвам, че ще е интересна на повечето. Познавам вече доста хора, които минаха доста успешно към тъмната страна и се справят повече от страхотно и вярвам, че ще посея семенцето в главите на хората. Или ще ме пребият на излизане, ще видим :D

И да – 36. И още съм жив. Йейй. Блогът стана на ОСЕМ години за бога. Когато започвах да го пиша изобщо не си представях живота си в този ред – и личния и професионалния. И мога да бъда щастлив за това как се стекоха обстоятелствата покрай мен, на Златина, че ме направи баща, за Борко, че ме прави по-добър човек и за бебе две, което нямам търпение да срещна Октомври месец и пак да се правя, че някаква муха ми е влязла в двете очи. И това, че родителите ми и най-близките ми са живи и здрави. Благодаря на тези, които го четат от време на време. Знам, че не е в тренда да имаш блог, но моя ми помогна да науча супер много за моята професия (от хостването му до писане на статии в него, особено и сега със серията за 100daysOfHomeLab).

А относно спорта – започнах пак, тази година малко по-сериозно. До този момент имам 57 часа на колелото на общо 42 карания и изминати 990 км. Мога повече, много повече, но направих своя избор. Последно време съм се съсредоточил към малко по-големи маршрути в обедните си почивки – например днес направих 40 км за малко под два часа и се чувствам изморен, но добре.

#100daysOfHomeLab – day 3

Време е за сетъп на k8s, rancher и nextcloud! Юхууу!

Tip №1 – за да не теглите ISO на любимата ви дистрибуция на вашата машина и после да upload-вате към proxmox (аз съм с някакъв абсурден сетъп с рутерче за сигурно 10 лв. и wifi е болезнен) можете да го wget-нете направо на сървъра по този начин:

wget -P /var/lib/vz/template/iso  https://releases.ubuntu.com/22.04/ubuntu-22.04-live-server-amd64.iso

В първия пост по темата си говорихме за това, че искам да използвам k8s, но за тези, които просто искат инсталиран nextcloud (или и k8s + docker) просто могат да го направят от инсталатора на Ubuntu Server:

А какво правим когато не можем да спрем/рестаритраме машината заради Proxmox can’t lock file ‘/var/lock/qemu-server/lock-xxx.conf’ – got timeout? Първо опитваме с built-in инструмента на Quemu/KVM VMM:

qm unlock 100

Ако не стане ще се наложи по грозния начин – да изтриете lock файла. Първо намираме кое е VM ID-то, което ни е нужно и после трием lock файла ръчно. Това сработи при мен:

nedko@minimicro:~# ls -l /run/lock/qemu-server/

-rw-r--r-- 1 root root 0 Jun 17 16:27 lock--1.conf
-rw-r--r-- 1 root root 0 Jun 17 17:42 lock-101.conf

rm -f /var/lock/qemu-server/lock-101.conf

Днес е голяма забава. Оказа се, че при инсталацията на Ubuntu 22.04 LTS при Proxmox & VMWare спира при curtin command in-target. Разрешението, както е описано е да се инсталираме Ubuntu без networking и в последствие да си го пуснем. И понеже трябва да си напишем yaml-а на ръка и е малко пипкаво оставям тук моето решение (което е стандартно такова, не съм открил топлата вода). Първо трябва да си знаем името на интерфейса, което ще вземем от /sys/class/net/ защото по default например нямаме netstat в ubuntu server така, че горното решение ще свърши работа при всяка Debian based машина:

nedko@k8s:~$ ls /sys/class/net/
ens18  lo
 
nedko@k8s:~$ sudo vim /etc/netplan/01-network-manager-all.yaml

Приемайки, че нашата мрежа е 192.168.1.1/24 с gateway 192.168.1.1 (и използваме DNS на Cloudflare, които предпочитам по ред причини) резултата изглежда такъв:

network:
    ethernets:
        ens18:
            dhcp4: false
            addresses: [192.168.1.110/24]
            gateway4: 192.168.1.1
            nameservers:
              addresses: [8.8.8.8,8.8.4.4,192.168.1.1]
    version: 2

След това apply-ваме промените (с –debug за да видим детайли ако нещо се омаже):

nedko@k8s:~$ sudo netplan --debug apply

И от толкова греди не ми остана време да инсталирам docker, rancher & k8s. Next time!

#100daysOfHomeLab – day 2

Понеже последно време покрай ОГРОМНИЯ избор на проекти, които мога да хостна и чуденките ми кой как да свържа с другия за да ми паснат на use case-а изпаднах в нещо наречено analysis paralysis, което в същността си е “задръстването” от информация, която поемаме за да направим нещо. Обикновено е съчетно и с желание за идеален сетъп от първия път, а това освен много напрежение ни добавя и нереалистични представи понякога.
Та когато се усетих, че съм си набелязал 20-тина сървиса и гледам някакви advanced pi-hole techniques и се спрях. Първата ми цел ще бъде да тествам nextcloud – проект, който искам да тествам в production от доста време.

И понеже старото ми аз би направило нова виртуалка на която да вдигна nextcloud се спрях и си реших да приключа веднъж завинаги с това и да започна да уча по-интензивно kubernetes, защото ще ми бъде много полезно за в бъдеще. И така планът е:

kubernetes на който върви Nextcloud –> да използвам volumes за mySQL (или noSQL по възможност, ще бъда щастлив) и основните директории на nextcloud (/var/www/html{custom_apps,config, data, themes}). Този целия сетъп след някакво време като дойде време за network hardening-а ще отиде на отделен VLAN и ще му орежа доколкото мога достъпа отвън за да няма изненади в последствие.

Също така тряба да се науча да правя и къдърни графики, че това с –> ми е навик от малък и не носи никаква информация освен ако не е нещо линейно.

#100daysOfHomeLab – day 1

Днес почистих HP MicroServer gen8 машината – смених паста, почистих от прахта, малко cable management и почистих кутията. Температурите спаднаха със средно градус-два като се замислям да сложа някакъв по-тих и с по-голям дебит вентилатор, но HP-тата винаги са били ********* и си ползват свои собствени стандарти и смяната на всеки вентилатор е болезнено и рисково. Освен това възнамерявам да ъпгрейдна към Xeon E5-1225 v2, който е почти 70 вата (срещу 17вата на текущия процесор) и още един вентилатор би му дошъл меко казано добре.

Освен това ъпгрейднах и iLO4 от 2.78 към 2.80. С времето iLO ми стана неизменен помощник и е супер полезен за много неща, някои от които:

  • Мога да управлявам машината без да закачам периферия по нея, директно през iLO като най-якото е, че имам достъп до него и когато машината НЕ Е ПУСНАТА!
  • Мога да инсталирам OS директно през iLO без да има нужда да правя USB-та и CD-та, мега удобно е
  • За някои системи можете да си наблюдавате и консума
  • Хардуерен мониторинг на системата
  • Insight agent
  • SNMP съобщения при определени събития (например така разбрах, че единия ми диск е гръмнал докато нямаше още го тествах и нямах мониторинг на него)

2.80 можете да изтеглите от тук, а след като го изтеглите можете да използвате този snippet за да разархивирате:

chmod +x ilo4_2.80.scexe

./ilo4_2.80.scexe --unpack=./iLO4

И ъплоудвате ilo4_28.bin в контролния панел на ILO. след 2-3 минути и рестарт на ILO всичко си идва на мястото.

Happy labbing!

Говорих пред деца за ИТ и останах изумен

Миналата неделя бях поканен да споделя част от опита си със завършващите курса на https://kiber-one.bg с възрастова група от 6 до 14 и да раздам дипломите на най-малките. Реших да говоря за това как съм започнал аз, как любопитството ме е тласнало напред, как сме играли игри на черно-зелени екрани от дискети, как сме си писали сами игрите на BASIC и сме чели документация от хартиен носител, какво правя сега, сегментирането на сектора (често споменавам като говоря пред ученици това, че IT не е само програмиране, да им покажа част от спектъра включвайки дизайн, QA, програмиране, PM и т.н. и т.н.) съответно с опит това да звучи колкото се може по-близко до наруталния език.

Отивам в юнашкия дом във Варна и ме посрещат 50-тина деца, които си стоят по столовете и чакат, родителите бяха на втория етаж и все пак нямаше нито едно дърпане на коси, сбиване или лигавня. Повечето деца бяха в границата между 6 и 9 годишна възраст.

Започна събитието и имаше демо на 5 проекта на деца от 7 г. до 9 г. С огромен интерес наблюдавах какво правят децата и след второто демо си зачеркнах половината ключови думи по които щях да говоря. Нямаше да им кажа нищо ново. Демата бяха на Scratch и Tynker и след като едно момиченце на 7 години показа демо пред 100+ човека на имплементация на Flappy Bird в която си имаше своите условия, sprites, различни екрани и т.н. аз бях – “Чакай, чакай”, дойде друго дете, показа 3D модел на Tynker на слънчевата система с акуратни размери на планетите, орбитите и скоростта на движението им, показа кода, обясни го. Бях супер приятно изненадан.

Това, което видях са деца, които:

  • Правят неща, които им харесват
  • Могат да работят в екип
  • Имат логическо мислене
  • Разбират основите на програмирането
  • Имат презентационни умения и не изпадат в паника като говорят пред хора (за разлика от мен)
  • Разбират англисйки на ниво, което им върши работа

Ето, че има надежда, просто трябва да знаем накъде да гледаме.

Edit – Забравих да добавя, че след края на цялото нещо излизам от залата и едно момченце (7-8 да речем) се отдели от родителите си, дойде при мен и каза – “Господине, много хубава реч, хареса ми.” Прибрах се нахилен като пача. Явно е имало смисъл.

100 Days of HomeLab – The HomeLab Challenge

TechnoTim даде една страхотна идея. Сто дни биха били достатъчни човек да изгради солиден навик. И понеже той е tech youtuber на който доста се кефя се зачудих като видях заглавието на клипа. Оказа се обаче, че не е само той, а буквално ВСИЧКИ технически youtubers,които говорят зa homelabs, инфраструктура, proxmox и хардуер. Ако сте фенове ви го препоръчвам.

Та по негов пример смятам да ъпдейтвам тук в блога какво съм правил и правя по моя homelab. Ще зацапам блога с много и кратки постове, но е по-добре отколкото един огромен пост тип changelog. Мислих си и за едно git repo (или gist), но така exposure-a ще е много по-малък и няма да усещам peer pressure-а :D Понеже няма как да правя всеки ден неща в продължение на толкова време си слагам таргет от 3 пъти седмично като това може да включва целия спектър – от стратегия през provisioning, хардуер и до networking. Надявам се да ви в полезно и да надъхам някой да направи същото или поне да се зачете за контейнери/хардуер/networking и т.н.

А защо го правя ще се запитате? Ще попитате нямам ли дете, бременна жена, семейство, хоби и т.н.? И ще ви отговоря. Освен, че ми е супер интересно тези предизвикателства са и супер полезни в професионален план. Пример – всеки е разцъквал docker, но до къде? Да вдигне един hello world или както направих аз да взема един прост ruby script и да го изпълня? Хубаво ама в реални условия може да речем да вдигнете един домашен plex за да си имате библиотека с филмите и сериалите, но искате достъпа до persistent volume-а да става от друга машина? Или да се стартира автоматично при пускането на машината? Или да се вдига наново ако нещо се строши? Това са елементарни примери, но са извън обикновеното – “Я да разгледам тоя docker” и всичко да приключи след 2 примера от нета. А кога сте правили конфигурирали VLAN за да сегментирате трафика между устройства? Това са все неща, които всеки е чувал как работят, някои са цъкали малко, но рядко някой е поддържал такива системи и лично е отговарял за тях поради една или друга причина. И точно тук идва моето нещо – цяла екосистема, която да е съвсем истински production за който аз да съм отговорен и да съм направил цялата архитектура и всичко около него. Това за мен би било супер близко до това, което правя на работа.

Най-накрая излезе Apple silicone M2

Версията на тази статия я има записана и в подкаста за по-голямо удобство

Чаках повече от година докато се наканя да взема Apple Air M1 като чаках основно за втората генерация на процесора, който създаде солиден buttpain на Intel и разбута доста пазара на performance ultra-low voltage процесори (демек леки, но бързи лаптопи и ултрабуци чиито батерии държат повече от един работен ден). Та бях убеден, че ще итерират нова версия след година, но се оказа, че пуснаха performance версиите Pro/Max). Малко отклонение, но се оказа, че М серията е измислена бриляантно, защото може да се закачат серийно n-брой процесори и така MAX представлява ъпгрейд по силата на два или повече М1 base процесора. Това осигурява почти безкрайни възможности за ъпгрейд. Минуса е, че използва unified memory, която е много бърза (в процесора), но до 16ГБ (при М1) така и не може да се ъпгрейдва. Може би към момента М серията не би била готова за sever grade решения (но съм убеден, че ще видим и това в някакъв момент, както виждаме Atom процесори в server grade инфраструктура).

Та чаках новия М2, чаках и накрая си взех М1, която е бру-тал-на машина, страхотно тънка, лека, по-бърза от моите така или иначе високи очаквания и невероятно тиха защото единственото подвижно нещо в нея е … копчетата на клавиатурата :D MacBook Air в комбинация с M1 или М2 процесор няма вентилатор. Toва, без да влизам в подробности, е заради двата вида ядра в процесора, подобни на тези, които имаме в телефоните – такива, които отговарят за леките операции и performance ядра, които се включват само като пуснете нещо тежко. Иначе като съпоставка можем да сравним М1 с предишния top of the line Intel i7 (използван Macbook Air от 2018г.) като М1 държи 7 вата (!!!) в idle и 39 вата максимум натоварване, докато i7 държи 20 вата в idle и 122 в максимум натоварване.

Apple Macbook Air M2

Новия Apple MacBook Air идва с новия M2 чип като освен това разликите са и:

  • Нов дизайн с по-тънка рамка (bazel), идва с notch (на който вече са му оправени голяма част от първоначалните софтуерни проблеми, а зад notch-а се крие и новата 1080Р камера. Лаптопа вече прилича повече на два iPad-а един върху друг – няма скосяване при китките, изглежда доста квадратен, но с приятен дизайн. Линията има и нови цветове – silver, space gray, starlight, midnight. Няма вече розов цвят така, че сори, Злати, но следващия лаптоп няма да ти е розов.
  • Нов порт – така желания magsafe се връща обратно в играта и така лаптопа става с два Thunderbolt/USB type-C и един аудио жак. Magsafe зарежда вече с цели 64 вата (около 50% за час) като ще има и версия с два Thunderbolt/USB type-C за да си зареждате две устройства едновременно, но с мощност до 35 вата
  • Колонките, които са абсурдно добри за такава машина вече ще са разпределени на четири части, а микрофона, който също е доста добър вече поддържа и beamforming audio
  • Дисплея по традиция е нечовешки като в новия MacBook Air M2 ще е, както написах и по-горе, с по-тънък безъл, 13.6″ размер на дисплея, по-ярък с до 500 нита (като 13″ MacBook Pro), bazel и нова 1080Р камера
  • Процесора е вече с 4 милиарда транзистора в повече, до 2 GPU ядва отгоре повече, TDP и честота още не са анонсирани в сайта на Apple, 8 TOPS повече (Trillion Operations per Second) за neural engine процесора, до 24ГБ unified RAM (преди максимума беше 16GB), memory bandwidth-а е ъпгрейднат до жестоките 100GBps (за справка преди беше 68,25GBps използвайки LPDDR4X RAM) с поддръжка на новата LPDDR5 RAM, процесора, както и предшественикът му използват 5nm процес, М2 е с около 20% по-бърз и между 30 и 35% по-бързо GPU
  • Батерията продължава да е жестока и с 18 часа живот (при video playback, 15 при браузване) и е 52.6 watt-hour
  • Разновидности на MacBook Air m2 – разликите са малки, по-скъпата версия има две GPU ядра в повече, 512GB SSD (и двете версии могат да се конфигурират до 2ТБ)
  • Цените са $1199 за базовата версия с М2 чип, 8GB RAM и 256GB SSD и $1499 за версията с повече GPU cores, 16GB RAM и 512GB SSD
  • Fun fact – MacBook Air M1 2020 ще продължи да се продава, но цената му остава същата – $999.
  • Ще има и MacBook Pro 13 М2 като разликата с MacBook Air М2 са потресаващи и на 90% в полза на Air. Същия разполага с нов дизайн, по-лек е, по-добър дисплей, има magsafe, по-бърз fast-charge, нова камера, повече портове. Toва в което Pro е по-добър е, че има вентилатор и малко по-голяма батерия…
  • Не толкова fun fact е, че М2 продължава да поддържа само един външен дисплей (до 6К резолюция).

A заслужава ли си?


Според мен – зависи. М1 е изключително адекватна машина, която има много плюсове и макар и М2 да е добра не е с порядъци за да бъде следващото нещо, което бих искал да си купя. А и с цена от $200 повече не е първото нещо, което бих избрал.

Edit – Linux Tech Tips имат стра-хот-но видео с много повече информация и по-дълбок поглед над новия MacBook Air M2, препоръчвам ви го: