Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Edge Computing Systems with Kubernetes

You're reading from   Edge Computing Systems with Kubernetes A use case guide for building edge systems using K3s, k3OS, and open source cloud native technologies

Arrow left icon
Product type Paperback
Published in Oct 2022
Publisher Packt
ISBN-13 9781800568594
Length 458 pages
Edition 1st Edition
Tools
Arrow right icon
Author (1):
Arrow left icon
Sergio Mendez Sergio Mendez
Author Profile Icon Sergio Mendez
Sergio Mendez
Arrow right icon
View More author details
Toc

Table of Contents (21) Chapters Close

Preface 1. Part 1: Edge Computing Basics
2. Chapter 1: Edge Computing with Kubernetes FREE CHAPTER 3. Chapter 2: K3s Installation and Configuration 4. Chapter 3: K3s Advanced Configurations and Management 5. Chapter 4: k3OS Installation and Configurations 6. Chapter 5: K3s Homelab for Edge Computing Experiments 7. Part 2: Cloud Native Applications at the Edge
8. Chapter 6: Exposing Your Applications Using Ingress Controllers and Certificates 9. Chapter 7: GitOps with Flux for Edge Applications 10. Chapter 8: Observability and Traffic Splitting Using Linkerd 11. Chapter 9: Edge Serverless and Event-Driven Architectures with Knative and Cloud Events 12. Chapter 10: SQL and NoSQL Databases at the Edge 13. Part 3: Edge Computing Use Cases in Practice
14. Chapter 11: Monitoring the Edge with Prometheus and Grafana 15. Chapter 12: Communicating with Edge Devices across Long Distances Using LoRa 16. Chapter 13: Geolocalization Applications Using GPS, NoSQL, and K3s Clusters 17. Chapter 14: Computer Vision with Python and K3s Clusters 18. Chapter 15: Designing Your Own Edge Computing System 19. Index 20. Other Books You May Enjoy

What this book covers

Chapter 1, Edge Computing with Kubernetes, explains basic concepts of Edge Computing including its components, layers, example architectures to build these kind of systems, and showing how to use cross compiling techniques for Go, Rust, Python and Java to run software at the edge that runs on devices with ARM processors.

Chapter 2, K3s Installation and Configuration, describes what K3s is, its components, and how to install K3s using different configurations such as single and multi-node, and finally explains advanced configurations for K3s clusters to use external storages to replace the use of etcd instead, expose applications outside the cluster installing and using an ingress controller, uninstalling the cluster and some useful commands to troubleshoot cluster installations.

Chapter 3, K3s Advanced Configurations and Management, introduce the reader to advanced configurations for its K3s cluster, including the installation of MetalLB a bare metal load balancer, the installation of Longhorn for storage at the edge, upgrades in the cluster and finally backing up and restoring K3s cluster configurations.

Chapter 4, k3OS Installation and Configurations, focuses on how to use k3OS a Kubernetes distribution packaged in an ISO image that could be used to be installed on edge devices. It also covers how to use overlay on ARM devices and perform installations using config files to configure a single or multi-node K3s clusters.

Chapter 5, K3s Homelab for Edge Computing Experiments, describes how to configure your own Homelab using all the previous configurations described in the previous chapters to produce a basic production ready environment to run your edge computing applications. Starting with cluster configurations, including configurations for ingress controller, persistence for applications and how to deploy a Kubernetes dashboard for your cluster at the edge.

Chapter 6, Exposing Your Applications Using Ingress Controllers and Certificates, gives an introduction about how to configure and use the ingress controllers NGINX, Traefik and Contour together with cert-manager to expose applications running on bare metal using TLS certificates.

Chapter 7, GitOps with Flux for Edge Applications, explores how to automate edge applications updates when source code changes are detected using a GitOps strategy together with Flux and GitHub Actions.

Chapter 8, Observability and Traffic Splitting Using Linkerd, describes how to use a Service Mesh to implement simple monitoring, observability, traffic splitting, and faulty traffic to improve services availability using Linkerd running at the edge.

Chapter 9, Edge Serverless and Event-Driven Architectures with Knative and Cloud Events, gives an introduction about how to implement your own serverless functions using Knative Serving. It also shows how to implement simple event-driven architectures using Knative Eventing together with Cloud Event to define and run events in your edge systems.

Chapter 10, SQL and NoSQL Databases at the Edge, explores different type of databases that can be used to record data at the edge. This chapter covers in specific the configuration and use of MySQL, Redis, MongoDB, PostgreSQL and Neo4j to cover different use cases for SQL and NoSQL databases running at the edge.

Chapter 11, Monitoring the Edge with Prometheus and Grafana, focuses on monitoring edge environments and devices using the time series database Prometheus and Grafana. In specific, this chapter focuses on creating custom real-time graphs for data coming from edge sensors that capture temperature and humidity.

Chapter 12, Communicating with Edge Devices across Long Distances Using LoRa, describes how to communicate edge devices in long distances using LoRa wireless protocol and how to visualize captured sensors edge data using MySQL and Grafana.

Chapter 13, Geolocalization Applications Using GPS, NoSQL, and K3s Clusters, describes how to implement a simple geolocalization or geo-tracking system using GPS modules and ARM devices showing vehicles moving in real-time, and reports of their tracking logs between a date range.

Chapter 14, Computer Vision with Python and K3s Clusters, describes how to create a smart traffic system to detect potential obstacles for drivers when driving in the city and give intelligent alerts and reports of the live state of traffic during rush hours. It is also described step by step how to implement this system using Redis, OpenCV, TensorFlow Lite, Scikit Learn and GPS modules running at the edge.

Chapter 15, Designing Your Own Edge Computing System, describes a basic methodology to create your own edge computing system and how you can use cloud provider managed services, complementary hardware and software and some useful recommendations while implementing your system. Finalizing with other use cases to explore for edge computing.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime