Line of code is a liability, not an asset

Cloud Native - System Engineering - Kubernetes Consulting

About

Kubernetes has steep learning curve, but no worries we're here to help!

In cloud or on-prem the journey is easier with experienced engineers!

Kubernetes for senior admins



Day 1

What is Kubernetes:

  • What constitutes as Kubernetes distribution: etcd, CoreDNS, Kube API, Kubelet
  • Pluggable Kubernetes components: CNI, CSI
  • Kubernetes primitives: Pod, Deployment, Service, Ingress
  • Integrating Kubernetes into existing infrastrcture: external-dns, cert-manager, MetalLB, SSO
  • Ingress controllers: Traefik, nginx, haproxy
  • Working with kubectl and Kubernetes Lens

Goal of the day: deploy a sample application

Day 2

Persistent workloads in Kubernetes:
  • Block level storage options: Longhorn, OpenEBS
  • Application level replication: MySQL, Mongo, Minio, Redis, KeyDB, Postgres
  • Quorum, primary-secondary, primary-secondary-arbiter
  • Failure modes, availability zones, node affinity, node selector
Goal of the day: package and deploy custom application

Day 3

Observability:

  • Monitoring with Prometheus
  • Notifications via Alertmanager
  • Prometheus exporters: node exporter and textfile collectors; blackbox exporter; SNMP exporter
  • Gotchas and caveats when writing own exporters
  • Logging with ECK stack: what to log, JSON usecases and caveats
  • Briefly about tracing

Goal of the day: set up logging and monitoring for your application



Homework

Take time to reflect and to play around with the Kubernetes sandbox that is prepared for the participant:
  • Get your application manifests uploaded to a Git repository
  • Attempt to define useful alerting rules for your application
  • Attempt to create histogram chart in Grafana for your application
As it's tricky to schedule 5 days in a row for training we have planned here few days break from the training to catch up with daily tasks.

Day 4

Recap homework
  • Managing applications in Kubernetes
  • Build pipelines with Drone and Kaniko
  • Hosting, distributing, caching Docker images with Harbor
  • Continuous delivery with ArgoCD
  • Helm vs Kustomize vs operators
Goal of the day: your application is managed by ArgoCD

Day 5

Final touches:
  • Planning for self-service environment for your organization
  • Writing Kubernetes operators yourself
  • Securing cluster: ACL-s, network policies, admission webhooks
  • Backing up cluster contents, preparing for disaster recovery
Goal of the day: set network policies and ACL-s for your application


This course specifically targets experienced sysadmins who would want to get quickly up to speed with Kubernetes especially in a self-hosted setting. Participant is expected to have usable GitHub user account and a laptop where they have installed Kubernetes client utilities kubectl, krew and kubelogin. Each participant is provided a Kubernetes sandbox for practicing, which continues to be available after the training for 4 weeks. The training is conducted by Certified Kubernetes Administrator Lauri Võsandi who has previously worked at Google as Senior Site Reliability Engineer.

Upcoming batches:

  • End of January in Tartu
  • March in Tallinn
  • Contact us for additional timeslots

Training price 1999EUR per person (+VAT)

Developing cloud native applications

Day 1

Introduction to containers

  • Microservices vs monolith and striking a balance between them
  • Containerization with Docker
  • Introduction to Kubernetes
  • Working with Skaffold, Kaniko
  • Hello world with Python, Go, Java, Nodejs
  • Debugging remote pods from local IDE

Day 2

Anatomy of cloud native application

  • Using databases, object storage, Redis
  • Making use of database secondaries for load distribution and high availability
  • Handling metrics, logs, tracing
  • Setting up Docker image build pipeline for your application

Day 3

Going to production

  • Deploying application with ArgoCD
  • Monitoring your application with Prometheus, Grafana
  • Declarative alerting rules with Prometheus operator CRD-s
  • Working with log aggregator such as Graylog
  • What is Platform Engineering and what the future holds

This course is designed for developers who want to get up to speed with development for cloud native and highly available applications.

Upcoming batches:

  • End of February in Tallinn
  • Contact us for additional timeslots

Training price 999EUR per person (+VAT)

Shell masterclass



Day 1

What is shell:

  • Working with shell, keyboard shortcuts, bash, zsh
  • Customizing shell, aliases, environment variables
  • Working with remote servers with OpenSSH, ssh_config, setting up keys, U2F, scp, sftp
  • UNIX filesystem hierarchy, navigating filesystem, ls, cd, cat etc
  • Basic network troubleshooting, ping, mtr, traceroute, resolv.conf, tcpdump
  • Package management, apt, yum, rpm

Goal of the day: secure access to remote server without passwords

Day 2

Working with textual data:
  • Using pipes, stdin, stdout, stderr, named pipes, zcat
  • Regular expressions, filtering data with grep, awk
  • Counting, sorting lines
  • Basic programming constructs, conditional statements, functions, arithmetic, formatting strings
  • Piping data over network connections with nc and ssh
  • Interacting with API-s, curl
  • Parsing structured data such as JSON, YAML, XML
Goal of the day: Find top URL-s, HTTP status codes, source IP-s etc from an Apache webserver logfile

Day 3

Running and scheduling scripts:

  • Using pseudographic user interfaces, dialog, whiptail
  • Working with systemd, journalctl
  • Scheduling jobs with cron and systemd timers
  • Briefly about Python and other programming languages
  • Briefly about Docker, Ansbile and their relationship to shell scripting
  • Briefly about Git

Goal of the day: Run a shell script on multiple machines


This course focuses on getting best out of using shell whether it's locally on Mac/Linux/Windows or an EC2 instance in the cloud. Over the years we've observed even seasoned developers find themselves wasting precious time while working on command line. In this course we're focusing on super-charging your engineers with command line magic! The training is conducted by Lauri Võsandi who has nearly two decades of experience working on command line and with Linux

Upcoming batches:

  • Contact us for additional timeslots

Training price 999EUR per person (+VAT)

Services provided

Going to prod

You have MVP ready but having trouble going to production? No worries we can help!

  • Evaluate production deployment options
  • Containerizing your application
  • Setting up CI/CD pipelines
  • Autoscaling your application
  • Setting up monitoring and alerting
  • Potential changes required to your app

Cluster review

You have something running but you're not sure if you're doing your best

  • Review Kubernetes components
  • Review Prometheus setup
  • Review your application setup
  • Security posture, upgrade path
  • Potential short and long term changes

Fractional devops engineer

You have something running in production but you don't have budget to hire full time DevOps Engineer or sysadmin:

  • Make sure your application runs well in prod
  • Participate in on-call rotation and incident handling
  • Keep components upgraded
  • Make sure security issues are mitigated
  • Covers classic Linux servers and Kubernetes both

Unlock success for your project with our tailored services. Whether transitioning to production, optimizing setups, or seeking cost-effective premium support, we've got you covered. From evaluating deployment options to fine-tuning components, our expertise ensures optimal performance and security. Our flexible pricing, open to negotiation, aligns seamlessly with your budget. Trust us to elevate your success with expertise and finesse.

Subscribe

To hear from us about upcoming trainings and releases please sign up here:

A name is required.
A name is required.
Form submission successful!
To activate this form, sign up at
https://startbootstrap.com/solution/contact-forms
Error sending message!