Czasami coś nie działa i przyczyna tego za diabła nie chce dać się znaleźć. Poniżej kilka pomocnych rad w debugowaniu w środowisku chmury i kontenerów, czyli “u mnie działa, a na cudzym komputerze nie”
Szyfrowany dysk sieciowy dla potrzeb serwerowych
Poniżej przedstawiam kilka sposobów na wykorzystanie przestrzeni dyskowej zdalnej maszyny w sposób zabezpieczający w pełni nasze dane. Założenie konfiguracji jest jedno – maszyna udostępniająca swój dysk nie może mieć wglądu w nasze dane, które przechowujemy ani w klucze, którymi dane są szyfrowane. Całość komunikacji ma być w pełni bezpieczna, a jedyny dostęp do danych ma być możliwy jedynie po ich odszyfrowaniu w locie, już na komputerze klienta.
Dzięki temu przejęcie docelowej maszyny nie będzie oznaczało od razu wycieku naszych danych. Ma to być zapewnione począwszy od dostępu do samego jej dysku, aż po grzebanie w RAM’ie, gdzie mogą być przechowywane klucze szyfrujące, gdyby szyfrowanie odbywało się po zdalnej stronie. Kolejnym wymogiem jest aby sposób przechowywania danych był możliwy w środowisku serwerowym, gdzie chcemy zautomatyzować cały proces montowania i dostępu do danych, a więc bez żadnych UI oraz webowych interfejsów.
Continue reading “Szyfrowany dysk sieciowy dla potrzeb serwerowych”
Kubernetes – jak działa cluster IP
Niedawno pisałem o implementacji sieci opartej o Flannel. Zabrakło tam jednak jednej istotnej rzeczy – clusterIP. W tym poście przeczytasz jak dokładnie jest to zaimplementowane.
Kubernetes – co w sieci piszczy
Zróbmy wycieczkę pakietem od poda, aż po default gateway całego klastra Kubernetesa. Post ma na celu ułatwienie debugowania ewentualych problemów sieciowych Kubernetesa z Flannelem.
Dlaczego zawód informatyka zawsze będzie potrzebny?
Kilka lat temu usłyszałem ciekawe stwierdzenie. Jakieś 40 lat temu wszyscy szewcy chórem mówili, że ich zawód nigdy nie wymrze, ponieważ ludzie zawsze będą potrzebowali butów, a ktoś będzie musiał je przecież naprawiać. Jak wyszło? Masz dziurę w bucie, to idziesz po nową parę. Niecałe trzydzieści lat temu (tak, to już lata 90-te) tą samą pewność siebie mieli elektronicy. Coraz więcej sprzętu elektronicznego, w każdym sklepie z elektroniką części zapasowe, ktoś to przecież musiał naprawiać.
Continue reading “Dlaczego zawód informatyka zawsze będzie potrzebny?”
Na co dzień na raspberry
Raspberry PI jako desktop sprawdzało się do tej pory średnio – I/O dysku na poziomie 30MB/s bez perspektywy poprawienia jakimikolwiek rozszerzeniami przekreślała. Kilka tygodni temu sytuacja się zmieniła i mamy PI 4. Jak się na nim pracuje?
Jak trzymać hasła w pamięci i dlaczego cstringi są czasem lepsze od std::stringów?
“Poznaj sekret cstringów. Std::stringi ich za to nienawidzą”! A na serio, nie zgapiając od pomponików, będzie trochę na temat trzymania wrażliwych danych w pamięci RAM i o zapobieganiu ich zapisowi na dysk.
Pobieranie czegokolwiek z youtuba w fullhd z konsoli
Niektórzy lubią filmy, inni muzykę, a jeszcze inni po prostu potrzebują zapisać na dysk filmiki z kotami. Powód wymyślcie sobie sami 🙂
Continue reading “Pobieranie czegokolwiek z youtuba w fullhd z konsoli”
No masters, no slaves, blockchain inside – pisanie zdecentralizowanych aplikacji
Blockchain idealnie wpisuje się w ostatni trend politycznej poprawności w świecie IT. Nie ma nodów master ani slave, wszyscy są równi niezależnie od płci miejsca w sieci. Framework Dinemic jest biblioteką, która pomaga tworzyć zdecentralizowane aplikacje w C++ oparte o technologię, która jest pochodną Blockchain, X509 oraz kilku innych technologi. Służy głównie do tworzenia programów, które mają działać na wielu maszynach równocześnie zapewniając przy tym wysoką wydajność i odporność na awarie.
Chociaż dinemic jest de facto ORM’em dla C++, to spróbujmy na początek inaczej. Wyobraź sobie repozytorium Git’a. Takie, w którym to nie developerzy robią commity, a poszczególne obiekty klas, a każdy commit jest informacją na temat zmiany stanu takiego obiektu (i bazy danych pod nim), podpisaną przez niego cyfrowo. Dodatkowo pomyśl, że nie mamy jednego centralnego serwera Git’a, ale każdy komputer w sieci jest za razem repozytorium lokalnym i remote’m dla innych repozytoriów. Jeszcze tylko dodać, że nieautoryzowane zmiany są odrzucane przez inne repa i mamy obraz framework’a dinemic. To tak w skrócie. Po nieco obszerniejszy opis zapraszam dalej.
Continue reading “No masters, no slaves, blockchain inside – pisanie zdecentralizowanych aplikacji”
Fish – fajniejszy shell
Jeśli wzdryga Cię na myśl o pisaniu czegoś w konsoli, bo lubisz klikać lub chciałbyś usprawnić swoją pracę w bashu – spróbuj powłoki fish.
Continue reading “Fish – fajniejszy shell”