K8s done right Part 1: start from helm charts

K8s is a very complex beast. But it give you a very good set of security defaults, and it is also a very well done implementation of a microservice application.

After installing Docker Swarm on some Customer, we are giving up on Swarm because the Enterprise version was acquired by Mirantis and now is marketed like “K8s” engine,  so Swarm seems K8s right now.

K8s business is based on the Cloud Provider services, and it is open source. Like WordPress business model, Google is always a bit forward on K8s, but you can get it up & running also on “minor cloud” provider like Digital Ocean and Linode.

I was lucky because in the last three years my Company asked to me and my group to learn K8s to reply to surging customer demand, and also to drive customer needs.

Docker Swarm seems a losing horse right now, but I could be wrong.

To learn K8s my suggestion is to:

  1. Take some time learning K8s basic from official concept guide.
  2. Install minikube and do the examples on your local machine

To be ready to the next level you should be able to:

  • Deploy a simple workload
  • Be able to understand how to create replica sets
  • Explore some “simple” scenario like CronJobs which is a useful feature: they are simpler to understand in respect of a long running web application (i.e. you must not espose a cron job on a http port!)
  • Apply a bit to be able to develop a docker application, publish to a registry and deploy on minikube. Minikube supports a toy registry you can use on Linux too, and it is quite simple to set up

After this level you can see some k8s advantages like ability to self-recover from a pod crash and so on

The next level is to

  1. Study Go template language, and extra “sprig” http://masterminds.github.io/sprig/ library.
  2. Study Helm package manager https://helm.sh/docs/topics/charts/#templates-and-values
  3. Have a look at the source of bitnami nginx helm chart (reason below)
  4. Look at a some complex example like Grana+Loki
    https://grafana.com/docs/loki/latest/installation/helm/

Helm chart is the way you will deploy k8s stuff.

Bitnami charts use some standard to define helm variables you use in you deployment. For instance service.type, service.port and so on. These conventions are important because often you will deploy “stacks” of helm charts.

To understand what we mean, download and look at bitnami Nginx chart is very flexible and can be used to deploy complex reverse-proxy configuration. A good Nginx config can often be the first thing you will need to set up you architecture.

In Part2 we will explore further how to organize your K8s setup, how to install Grafana and so on

 

 

Posted in English Content, K8s Done Right | Tagged , , , | Leave a comment

Draghi Rules!

«L’appello a non vaccinarsi è un appello a morire»
Mario Draghi rispondendo ad una domanda diretta di un giornalista, il 22 luglio

 

Premessa: benché disprezzi le fake news e le idee deirlanti, posso comprendere chi non voglia vaccinarsi (per ragioni sue, intendiamoci, non per paura di essere “radiopilotati” da Bill Gates).
E’ una scelta che però va presa soppesando anche le conseguenze che comporta per la propria vita civile.

Mentre Giuseppe conte sta divertendo incapace di rispondere a qualsiasi domanda scomoda (DDL ZAN? Favorevole o Contrario?) Mario Draghi ha dato prova di saper guidare il paese. Salvini e Meloni di poterlo solo seguire, il paese.

Draghi ha detto quello che è la pura verità: «L’appello a non vaccinarsi è un appello a morire», mentre l’introduzione del Green Pass è stata attuata dalla Francia prima che da noi, e tutto si può dire della Francia tranne che non siano un paese con un forte DNA democratico  (hanno inventato la Rivoluzione Francese!).

Non ha aiutato che la settimana scorsa Cacciari abbia tuonato contro l’obbligo del green pass. Chiariamoci subito: nessuno è obbligato a vaccinarsi, stiamo solo cercando un modo per impedire che persone suscettibili possano esporsi al contagio e danneggiare tutta la collettività.

O preferiamo forse soluzioni come quelle attuate in altri paesi, con militari armati a chiudere le città o peggio presidenti che scoraggiano la gente a vaccinarsi con conseguenze tragiche per i cittadini?

Per cui ritengo che continuare a parlare del Green Pass sia una perdita di tempo ed energie.

Posted in CoronaVirus, Italian Content | Tagged , | Leave a comment

Open calculator (aggiornato)

Voglio raccontarvi una storia, per spiegarvi quanto è difficile conciliare la vendita di un prodotto commerciale con lo sviluppo di un software “open”. Al giorno d’oggi le calcolatrici scientifiche sono un mercato con parecchia concorrenza, e lo prenderò come esempio.

Parleremo di NumWorks: una società che ha sviluppato negli ultimi anni una calcolatrice con un sistema operativo abbastanza aperto chiamato epsilon; è notizia di questi giorni che NumWorks chiuderà progressivamente il suo sistema operativo vanificando in modo sostanziale l’aspetto che la rendeva interessante rispetto ai colossi che sono Texas Instruments, HP, Casio, e Sharp.

Il mercato delle calcolatrici tascabili è stato “sostenuto” da Texas Instruments che riesce a vendere a più di cento dollari delle calcolatrici (come la TI84 Plus) su cui si stima faccia un margine di circa il 50%. Texas Instruments è riuscita a creare un ecosistema portando dalla sua parte gli insegnanti e diventando lo standard “de facto” in ambito scolastico. Stiamo parlando di una calcolatrice grafica B/W non touch, molto “old style”.

Detto questo, su Amazon ci sono prodotti (come la Sharp EL W50GT a fianco) che per meno di 30 € forniscono un calcolatore in grado di effettuare integrali definiti, risolvere serie di equazioni, e tutta una serie di operazioni che alla fine degli anni 90 richiedevano un calcolatore che costava circa 10 volte tanto.

Dopodiché c’è una fascia di calcolatori non-CAS (poi capiremo che cosa vuol dire) che stanno intorno ai 90-100 € e consentono di tracciare i grafici e sono programmabili. Si riconoscono perché hanno un display piuttosto grande. Uno di quelli più economici è la seguente Casio FX:

I calcolatori di fascia alta come l’Hp Prime e TI-nspire sono calcolatori CAS il cui costo si aggira oltre i 150 €

CAS sta per “Computer Algebra System” ed è in sostanza un sistema di riscrittura che consente di risolvere analiticamente le espressioni matematiche. Per esempio può calcolare i limiti o trovare la primitiva degli integrali indefiniti. Per ovvie ragioni sono proibiti in quasi tutti gli esami.

Per i calcolatori di fascia media è fondamentale essere “ammissibili” alle sessioni d’esame scolastici. Per tali ragioni molti dei modelli di fascia media hanno una modalità chiamata modalità “esame” in cui vengono disattivate alcune funzionalità avanzate; questa modalità consente il loro utilizzo durante gli esami e serve per migliorare le vendite del calcolatore.

Numworks è una società francese creata nel 2017 ed è l’unica società che offre un calcolatore programmabile dal costo contenuto ma che può essere esteso facilmente. La calcolatrice Numworks ha un display di 320×240 pixel a colori, 256KB di RAM e 8MB di FlashROM, e costa appena 80 euro, e può essre comodamente ordinata sia sul sito del produttore che su Amazon Prime.

Il sistema operativo di NumWorks si chiama Epsilon, e l’obiettivo iniziale era che potesse essere modificato dagli utenti per adattarlo alle proprie esigenze. Fino a poco tempo fa la licenza era di tipo Attribution-NonCommercial-ShareAlike (CC-BY-NC-SA), per cui era possibile modificarlo purché non venisse usato a scopi commerciali. Sono quindi nati un paio di fork migliorativi, tra cui uno che si chiama Omega che rafforza il CAS e aggiunge qualche nuova modesta funzionalità (come la tavola periodica degli elementi chimici). Purtroppo tale “apertura” è stata usata per barare agli esami, ma d’altronde sono pochi gli studenti che non provano a nascondere qualche appunto addosso o a non darsi un vantaggio sostanziale (!). La conseguenza è stata che a partire dalla versione 16 del firmware, il sistema installerà una versione “corazzata” con due copie del sistema: una “sicura” che verrà fatta partire dopo un reset, cancellando completamente la memoria ed eventuali “app”, mentre sembra che sarà possibile ancora installarne una “personalizzata” (anche se un banale rest porta alla cancellazione totale, cosa non bellissima). Per ora su Internet si sconsiglia l’aggiornamento alla versione 16.

Questo vanifica di molto l’approccio di Numworks: la calcolatrice sembra un buon prodotto, anche se ha un numero di funzioni ridotte e meno RAM delle concorrenti, che però costano anche il doppio.

Speriamo che NumWorks riesca a migliorare progressivamente il suo software ufficiale e a stare al passo con la concorrenza

Approfondimenti:

Review della calcolatrice Numworks

Come installare Omega

Posted in Freedom, Italian Content, Software | Tagged | Leave a comment

Campioni d’Europa 2021

Posted in Italian Content | Tagged | Leave a comment

Nice Vic20 Articles

Posted in English Content, Retro Computing | Tagged , | Leave a comment

Turbo Rascal rulez!

Turbo Rascal is a development environment for the Commodore computers but also for others like NES and so on.

It is a bit different from other IDE because it is based on a Pascal-like language. It is not easy to compile high level programming language on 6502, but Pascal seems to pay its bill well.

What we like

  • A huge set of example (250+) and very good examples even on tiny computer like Vic20
  • A very broad support: not only Commodors 8bit computers, but also NES, Gameboy, Amiga, Atari ST, ZX Spectrum, Atari 2600, DOS and more, even some mega65 examples (!)
    A curated list of suggested emulators is provided
  • A very good list of support library, mostly for C/64:
  • Built-in ray tracer

We tested it with VICE emulator and it worked very well. Also the project is alive and its GitHub source code is updated even on these days.

What it is weird

  • The name is quite weird
Posted in English Content, Retro Computing | Tagged , , , | Leave a comment