A Walk in the Clouds

Push a button and get everything in the cloud? Various Edna Mode Styles

Recently I joined Coursera’s GCP courses for helping the migration of some services to the GCP cloud. Because of past experience I had some concept of AWS, however GCP world is still pretty new for me. Thus I create a note here for myself to learn AWS, Azure and GCP.


  AWS Azure GCP
IAAS ————— ————– ————–
Server EC2 Azure Virtual Machine Compute Engine
OS images AWS Marketplace Azure Marketplace Marketplace
Object storage S3 Blob Storage Cloud Storage
Relational Database RDS Azure Database Cloud SQL/spanner
DNS Route 53 Azure DNS Cloud DNS
Serverless Lambda Azure Functions Cloud Functions
NoSQL database Document DB, Dynamo DB, Simpler DB Table Storage, CosmosDB Cloud Bigtable, DataStore
Queue MSK Kafka on HDInsight Apache Kafka, Google pub/sub
permission IAM
(by account)
Azure Active Directory
(by organization)
Cloud IAM
(by project)
monitoring Cloudwatch Azure Monitor Stackdriver
PAAS ————— ————– ————–
platform Elastic Beanstalk App Services App Engine
Container Orchestration EKS AKS GKE
Multi Cloud EKS Anywhere Azure Migrate Anthos

The major goal of my GCP course study is Kubernetes, K8. The concept of k8 can be simplified by the following drawing: objects in Kubernetes

However, deploying K8 requires some hosts. If you’d like to play your own K8 for free, other than signing up free trial AWS, one way is to enable K8 in docker desktop and install Dashboard. Or you can setup K3s (a lightweight K8 replacement, armv7 binaries available) dashboard on Raspberry Pi. Here are steps based on Anthony’s step on Debian 10:

$ sudo apt upgrade -y
$ sudo apt install -y docker.io
$ sudo docker info
$ sudo sed -i \
'$ s/$/ cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1 swapaccount=1/' \
/boot/cmdline.txt
$ sudo reboot

$ curl -sfL https://get.k3s.io | sh -

# Create a namespace and and switch to it
$ kubectl create namespace kubernetes-dashboard
$ kubens kubernetes-dashboard

# Deploy from the official source
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
$ kubectl patch deployment kubernetes-dashboard -n kubernetes-dashboard --type 'json' -p '[{"op": "add", "path": "/spec/template/spec/containers/0/args/-", "value": "--enable-skip-login"}]'
$ kubectl proxy

K3s dashboard, http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/overview?namespace=_all, on my local Raspberry Pi 3B+ is very slow, but it’s surely fun!

Published: March 08 2022

blog comments powered by Disqus