#029: Fall 2019 Cloud Bootcamp

· 4 min read
#029: Fall 2019 Cloud Bootcamp
2019-09-09

Topics covered:

* definition under the Cloud Fundamentals section
* key characteristics
* deployment models
* service models
    * saas
    * iaas
    * paas
2019-09-11

Topics covered:

* IaaS
  * Compute Services
    *   CPU - central processing unit
    *   GPU - graphical processing unit
    *   TPU - tensorflow processing unit
    *   FPGA - field programmable gate arrays programmed using Verilog hardware language
    *   Customized CPUs fined tuned for your specific applications

  * Storage Services
      * Disks
        * SSD
        * Magnetic
        * I.O./s optimized disks
        * Throughput optimized disks
      * Object Storage using Bucket
        * SSS = S3
      * Near line/Cold line - long term archival storage - glacier
2019-09-13

Topics covered:

* IaaS
  * Storage Services
      * Object Storage using Bucket
      * Create a static site using a bucket
      * Generate a half decent static site and deploy into a bucket
      * Map the site to a sub-domain on your domain
      * CDN introduction

2019-09-16

Topics covered:

* IaaS
  * Storage Services
      * Writing content using Markdown
      * Network Attached Storage
        * CIFS/SMB
        * AFP
        * NFS
          * Roll your own NFS using Linux
          * Google Cloud Filestore
          * Azure NetApp Files
          * AWS Elastic File System
  * Networking Services
    * Private cloud locations
      * AWS VPC
      * Azure Virtual Networks
      * Google VPC Networks
      * Just like your home is a private location
    * IPv4
      * RFC 1918 - Private Internet Address Ranges
2019-09-18

Topics covered:

* IaaS
  * Networking Services
    * VPC Introduction hands-on
2019-09-20

Topics covered:

* IaaS
  * Networking Services
    * VPC HA Scenarios
* git intro and exercise
2019-09-23

Topics covered:

* PaaS
  * Building an App
  * Ruby and Rails
  * MVC
  * Heroku
  * git push heroku master
2019-09-25

Topics covered:

* Virtualization versus Containerization
* docker intro
* images
* containers
* registry
* isolation - cgroups
* layered file system - overlay2, aufs
* Dockerfile
* port mapping
* file overrides
* docker build
* docker push
* docker pull
2019-09-27

Topics covered:

* Introduction
* Demming, Taiichi Ohno, TPS, Agile, DevOps
* Chef First Run exercise
2019-09-30

Topics covered:

* Understanding Chef concepts while using Chef in solo mode
2019-10-02

Topics covered:

* Using Chef with Chef Server
* Begin the Marathon Chef exercise and complete setting up the LAMP stack
2019-10-04

Topics covered:

* Complete the Marathon Chef exercise
* Address separation of concerns - separate machines for Wordpress and Database server
* Repeatably run the same in multiple clouds
2019-10-07

Topics covered:

* Ansible - introduction and exercises
* https://github.com/beacloudgenius/ansible-first-run
2019-10-09

Topics covered:

* hardening https://github.com/beacloudgenius/ansibleexample
* docker https://github.com/beacloudgenius/docker-ansible
2019-10-11

Topics covered:

* containers, images, data persistence, export/import, save/load, flattening, visualization of layers
2019-10-14

Topics covered:

* n-tier container orchestration - introduction and exercises
* https://github.com/beacloudgenius/dockerfiles
2019-10-16

Topics covered:

* Pet versus Cattle
* Using a pet workstation in the cloud
* Windows versus Mac ::   `\` versus `/`
* Connecting to that pet using ssh on windows and ssh on mac

* Mattermost using docker
  hardening: https://github.com/beacloudgenius/ansibleexample
  docker and docker-compose https://github.com/beacloudgenius/docker-ansible
  mattermost via docker https://github.com/beacloudgenius/mattermost-docker
2019-10-18

Topics covered:

* Mattermost using ansible
  mattermost via ansible https://github.com/beacloudgenius/mattermost-ansible

* Autoscaling live example
  https://s3-us-west-2.amazonaws.com/cloudformation-templates-us-west-2/AutoScalingMultiAZWithNotifications.template

  https://gist.github.com/lvnilesh/a1963f7a5858487c67185ad7c8fdef8f
  https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/example-templates-autoscaling.html
  https://s3.amazonaws.com/cloudformation-templates-us-east-1/AutoScalingMultiAZWithNotifications.template

* Simulate load and see the cloud scale out


    sudo yum install stress && stress --cpu 2 --timeout 660


2019-10-21

Topics covered:

* Terraform n-tier exercise  https://github.com/beacloudgenius/ntier

* VPC automated
* VPN
* Use iPhone as a VPN client to connect to automated VPC
2019-10-23

Topics covered:

* Netflix case discussion
* AWS Reference Architecture on Media sharing
* Simian Army Chaos Monkey
* Murphy's law
* Live demo on resiliency: destruction of containers in Kubernetes cluster
* Live demo on resiliency: destruction of all machines in a Kubernetes cluster
2019-10-25

Topics covered:

* Anti-Fragility
* Understanding Kubernetes
* Beginning steps: Exercise: Kubernetes The Hard Way
2019-10-28

Topics covered:

* Exercise: Kubernetes The Hard Way

https://github.com/kelseyhightower/kubernetes-the-hard-way
2019-10-30

Topics covered:

* Exercise: Putting Kubernetes to real life use - the easy way

We used gists linked below.

https://gist.github.com/lvnilesh/4ee359ba98b24f3abc41f613cecc236e

https://github.com/beacloudgenius/nfs-server

cloudgenius/nfs-server:4.1

https://gist.github.com/lvnilesh/03af9042dfbd797044c2900a0eef3e17
https://gist.github.com/lvnilesh/6a65ecf7c9b5c5960f1be60bae9b617d

https://gist.github.com/lvnilesh/65d3d802a08c7cebba02da79d118b2d3
https://gist.github.com/lvnilesh/f5673018a7bd7f90091060244fcb8387

https://gist.github.com/lvnilesh/b523befc0728cb4d7a758e23132ca2cc

`kubectl --namespace default get services -o wide -w ng-nginx-ingress-controller`

break it after you see public ip

https://gist.github.com/lvnilesh/e3f26a4da7d8561b71f684253dfe717c

ingress

https://gist.github.com/lvnilesh/a6e877d0e13b4f1c15ea20ad13287d98
svc

https://gist.github.com/lvnilesh/08388e4c4bdd1899076b8a509edb3949
deploy

https://gist.github.com/lvnilesh/cca176fd7194839bec1009f69ad9205b

messed up deployment yaml to caused conflict with wp deployment yaml

https://gist.github.com/lvnilesh/652085adb4463c9ad6713ecc4b50e3c8

scaled out mess that did not actually mess

as suggested
https://gist.github.com/lvnilesh/f262e0c155abd92fbb0cd884fc37a48a


https://gist.github.com/lvnilesh/8a9838e52a9e68a6d7ed103e12aabaf7
cert-manager

https://github.com/beacloudgenius/k8s-ingress-exercise/blob/master/ingress-nginx/cluster-issuer.yaml
issuer

`k apply -f https://raw.githubusercontent.com/beacloudgenius/k8s-ingress-exercise/master/ingress-nginx/cluster-issuer.yaml`

this was issuer

the next is ing with https

`k apply -f https://gist.githubusercontent.com/lvnilesh/6584441a4e256951bb013f2f8440c058/raw/a9f4d11374976812e6dd61f203fbbf09e9181118/ing-https.yaml`

`k apply -f https://gist.githubusercontent.com/lvnilesh/6584441a4e256951bb013f2f8440c058/raw/a9f4d11374976812e6dd61f203fbbf09e9181118/ing-https.yaml`

then I apply svc

`k apply -f https://gist.githubusercontent.com/lvnilesh/a6e877d0e13b4f1c15ea20ad13287d98/raw/0461d6a84d3959c1cdf9c9ff3d7ed0fea90b050b/svc.yaml`

then I apply deployment


`k apply -f https://gist.githubusercontent.com/lvnilesh/08388e4c4bdd1899076b8a509edb3949/raw/e65dce401e218e54342bca0909db133bd719acfc/deploy.yaml`

then I check for certificate

`k get certificates`

and then I open https://wp.cloudgeni.us


storage for mongo
https://gist.github.com/lvnilesh/d224a309d37a6e7c7901b231509abd47

mongo deployment
https://gist.github.com/lvnilesh/0616cb28ab75c37799311623cc35468e

mongo svc
https://gist.github.com/lvnilesh/d72f8806121642e64a025c4435a9a58e

`kubectl port-forward svc/coursebook-mongo 27017:27017`
2019-11-01

Topics covered:

* Study of various reference architectural patterns for implementation in any cloud
* Please look for diagrams in the cloud architecture case studies section in the index.