Skip to content

Learning to operationalize infrastructure at scale and deliver applications and services at high velocity.

Notifications You must be signed in to change notification settings

reallygooday/BertelsmannScholarship

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Start Date: November 20, 2019

End Date: March 5, 2020

DIGITAL JOURNAL

Digital Archive and Diary of the First Round Challenge

#UdacityTechScholars
#PoweredByBertelsmann

______








My name is Angela, and I am a novice in Cloud Computing. I have been selected for the first round of the Udacity technology scholarship program powered by Bertelsmann. The first round gives a chance to qualify for a full 6-month Scholarship. In the First Phase I work to complete Udacity Foundational course in the field of Cloud. I don't have access to LINUX distribution, but I use the default command line, bash version 3.2.57(1)-release in OS X on Apple system, MacBook Pro with macOS Catalina Version 10.15.1.

A little about me. Passionate about helping people, I started nursing at the edge of 18. I studied the various branches of medical science at the Klaipeda Medical School in Lithuania and was hired immediately as the youngest Oncology Nurse. After helping cancer patients for 10 years in Lithuania, I decided to take a leap of faith and moved to London on a student visa. After 19 years in the UK, I built a new technical skill set.

I work as a corporate receptionist, and I am involved in many companies. My interest in computing began while studying games programming at the University of Westminster and has grown since then. I have maintained a fascination with technology from the start. My favorite application to date has been creating style transfer by utilizing Deep Learning written in Python. I plan to contunue persuing my interest in growing technologies.

VISUAL PLANNING

Cohort begins Nov‍emb‍er 2‍0th, 2‍01‍9 (the initial 3.5-month foundational course in Cloud track)

The Initial Challenge Course "Introduction to Cloud DevOps":

  • Learning cloud computing fundamentals and the basics of the command line interface of a Linux server;
  • Getting hands-on experience deploying infrastructure using code, and an introduction to version control with Git & GitHub;
  • Exploring tools and services offered by Amazon Web Services through interactive hands-on exercises.

The Part 2 "Cloud DevOps":

  • Learning to operationalize infrastructure at scale and deliver applications and services at high velocity;
  • Learning to design and deploy infrastructure as code, build and monitor CI/CD pipelines for different deployment strategies, and deploy scaleable microservices using Kubernetes.

CORE CURRICULUM

Lesson Topic Completion Date
Lesson 1 Welcome to the Challenge November 23, 2019
Lesson 2 Shell Workshop November 23, 2019
Lesson 3 What is Version Control ? November 23, 2019
Lesson 4 Create a Git November 25, 2019
Lesson 5 Review a Repo's History November 30, 2019
Lesson 6 Add commits to a Repo November 30, 2019
Lesson 7 Tagging, Branching and Merging November 30, 2019
Lesson 8 Undoing Changes November 30, 2019
Lesson 9 Working with Remotes November 30, 2019
Lesson 10 Working on Another Developer's Repository November 30, 2019
Lesson 11 Staying in Sync with a Remote Repository November 30, 2019
Lesson 12 Cloud Computing December 7, 2019
Lesson 13 Foundational and Compute Service December 7, 2019
Lesson 14 Sorage and Content Delivery December 7, 2019
Lesson 15 Security December 7, 2019
Lesson 16 Networking and Elasticity December 7, 2019
Lesson 17 Messaging and Containers December 7, 2019
Lesson 18 AWS Management December 7, 2019
Lesson 19 Getting Started with CloudForamtion December 12, 2019
Lesson 20 Infrastructure Diagrams December 12, 2019
Lesson 21 Networking Infrastructure
Lesson 22 Servers and Security Groups
Lesson 23 Storage and Databases
Lesson 24 Challenge Course Wrap-Up

ERRATA

This Journal barely touches on complexity of the Scholarship. I have taken every care to ensure the accuracy of the content, but mistakes do happen. If you find a mistake, please let me know.


November 18, Monday 2019

STUDY NOTES

Relative Speed Numbers Every Programmer Should Know:

          |
         / \
        / | \         CPU = 0.4 ns
          |           RAM = 100 ns
          |           SSD Storage = 16 µs
          |           Network = 150 ms
          |

Orders of Size (time) [3]:

           1 ns = 0,000 001 ms
           1 ms = 1,000,000 ns
           1 000 ns = 1 µs

November 23, Friday 2019

STUDY NOTES

The Lesson 1 addresses shell scripting. The shell is directly linked to the kernel. Terminal is an interface to shell.( On the Mac the Terminal Program is in the Applications/Utilities folder.)

Shell:

  • graphical GUI;
  • text CLI.

5 Most Popular Shells for Linux[5]:

  • [1] Bash (Mac and Linux computers use the BASH shell by default);
  • [2] Tcsh;
  • [3] Ksc;
  • [4] Zsh;
  • [5] Fish

November 25, Monday 2019

STUDY NOTES

Completed:

  • 27% of the course;


November 29, Friday 2019

STUDY NOTES

Completed:

  • 33% of the Introduction to Cloud DevOps course.

Coded using the following Git command:

 > $git init
 > $git clone
 > $git log
 > $git status
 > $git add
 > $git commit
 > $git diff
 > $git config --global core.editor "Atom -w" [changing editor]
 > $cd ~/course-git-blog-project 
 > $git init new-git-project [creating new repository]
 > $git show 8d3ea36
 > $git log --oneline
 > $atom ~/course-git-blog-project
 > $git --stat
 > $git log -p
 > $git log -p --stat
 > $git log --stat -p
 > $git log -p -w [ignore changes to whitespace]
 > $q [quit]
 > $git commit -a
 > $git branch -a
 > $git checkout -b new-branch
 > $git checkout new-branch
 > $git fetch upstream
 > $git merge upstream/master
 > $git pull upstream master (git pull = git fletch + git merge)
 > $git rebase
 > $git rebase -i HEAD~3
 > $git log --online --graph --decorate --all
 > $git push -f


November 30, Saturday 2019

STUDY NOTES

Completed:

  • 53% of the Introduction to Cloud DevOps course.

Started working within Linux virtual machine and following guidance from "Configuring Linux Web Servers" Udacity course [2].

When visiting website browser is requesting a number of files that located on a server. Usually, that server is running Linux. Linux is the most popular OS for web servers. Some estimates say 80% of public Internet servers are rumnning Linux.

Downloaded and installed VirtualBox. This is free software that will run the virtual machine. Downloaded and instaledl Vagrant. This is an command line utility that makes it easy to manage and access your virtual machines. Note: Currently (July 2018), the version of VirtualBox is 5.2. Newer versions do not yet support Vagrant.

Working from command line only. Coded using the following command:

 > $cd ~/Documents
 > $cd vm
 > $ls -a (-a flag used to list all hiden files, on a Linux system, any file that begins with a dot is considered a hidden file)
 > $ls -al (-l flag lists results in long format; d is a directory, -dash is a file)
     
➜  vm ls -al
total 8
drwxr-xr-x  4 angela  staff   128 13 Dec 09:32 .
drwx------@ 7 angela  staff   224 13 Dec 09:29 ..
drwxr-xr-x  4 angela  staff   128 13 Dec 09:32 .vagrant
-rw-r--r--  1 angela  staff  3022 13 Dec 09:32 Vagrantfile
➜  vm 

 > $vagrant init ubuntu/trusty64
 > $vagrant up
 > $vagrant status

I'm logged into a Linux virtual machine.

Current machine states:

default                   running (virtualbox)

The VM is running. To stop this VM, you can run `vagrant halt` to
shut it down forcefully, or you can run `vagrant suspend` to simply
suspend the virtual machine. In either case, to restart it again,
simply run `vagrant up`.


➜  vm cd /
➜  / ls -al
total 9
drwxr-xr-x   23 root  admin   736 12 Dec 09:09 .
drwxr-xr-x   23 root  admin   736 12 Dec 09:09 ..
-rw-rw-r--    1 root  admin     0 24 Aug 23:20 .DS_Store
lrwxr-xr-x    1 root  admin    36 20 Oct 10:50 .VolumeIcon.icns -> System/Volumes/Data/.VolumeIcon.icns
----------    1 root  admin     0 24 Aug 23:20 .file
drwx------  123 root  admin  3936 12 Dec 09:15 .fseventsd
drwxr-xr-x    2 root  wheel    64 24 Aug 23:20 .vol
drwxrwxr-x+  23 root  admin   736 13 Dec 09:11 Applications
drwxr-xr-x   70 root  wheel  2240 12 Dec 09:11 Library
drwxr-xr-x@   8 root  wheel   256 13 Oct 00:17 System
drwxr-xr-x    6 root  admin   192 13 Oct 00:15 Users
drwxr-xr-x    3 root  wheel    96 13 Dec 12:30 Volumes
drwxr-xr-x@  38 root  wheel  1216 12 Dec 09:08 bin
drwxr-xr-x    3 root  wheel    96 18 Sep 18:15 com.apple.TimeMachine.localsnapshots
drwxr-xr-x    2 root  wheel    64 24 Aug 23:24 cores
dr-xr-xr-x    3 root  wheel  4529 13 Dec 07:58 dev
lrwxr-xr-x@   1 root  admin    11 20 Oct 10:44 etc -> private/etc
lrwxr-xr-x    1 root  wheel    25 13 Dec 07:58 home -> /System/Volumes/Data/home
drwxr-xr-x    3 root  wheel    96 13 Dec 09:25 opt
drwxr-xr-x    6 root  wheel   192 12 Dec 09:10 private
drwxr-xr-x@  63 root  wheel  2016 12 Dec 09:08 sbin
lrwxr-xr-x@   1 root  admin    11 20 Oct 10:50 tmp -> private/tmp
drwxr-xr-x@  11 root  wheel   352 20 Oct 10:50 usr
lrwxr-xr-x@   1 root  admin    11 20 Oct 10:50 var -> private/var
➜  / 

➜  / echo $PATH
usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
➜  / 

Important directories:

/etc <- configuration files;

/var <- variables files;

/bin <-executable files;

/sbin <- used by the root user for system administration, system management aps;

/lib <-libraries for support

> $vagrant suspend
> $vagrant up
> $vagrant ssh  
> $vagrant halt
> $vagrant destroy

➜  / cd ~/Documents
➜  Documents cd vm
➜  vm vagrant init ubuntu/trusty64
`Vagrantfile` already exists in this directory. Remove it before running `vagrant init`.
➜  vm vagrant ssh
Welcome to Ubuntu 14.04.6 LTS (GNU/Linux 3.13.0-170-generic x86_64)

* Documentation:  https://help.ubuntu.com/

System information as of Fri Dec 13 09:34:18 UTC 2019

System load:  0.9               Processes:           81
Usage of /:   3.6% of 39.34GB   Users logged in:     0
Memory usage: 25%               IP address for eth0: 10.0.2.15
Swap usage:   0%

Graph this data and manage this system at:
https://landscape.canonical.com/

UA Infrastructure Extended Security Maintenance (ESM) is not enabled.

0 updates can be installed immediately.
0 of these updates are security updates.

Enable UA Infrastructure ESM to receive 64 additional security updates.
See https://ubuntu.com/advantage or run: sudo ua status

New release '16.04.6 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

vagrant@vagrant-ubuntu-trusty-64:~$ sudo ls -al /home/ubuntu/.ssh
total 8
drwx------ 2 ubuntu ubuntu 4096 Dec 13 09:34 .
drwxr-xr-x 3 ubuntu ubuntu 4096 Dec 13 09:34 ..
-rw------- 1 ubuntu ubuntu    0 Dec 13 09:34 authorized_keys
vagrant@vagrant-ubuntu-trusty-64:~$ 

>$ sudo apt-get update
>$ sudo apt-get upgrade
>$ sudo man apt-get
>$ sudo apt-get autoremove
>$ sudo apt-get install finger

➜  vm finger 
Login    Name                 TTY  Idle  Login  Time   Office  Phone
angela   Andzelika Balysevie *con 13:24  Sat    10:59
angela   Andzelika Balysevien s00        Sat    11:39   

➜  vm cat /etc/passwd
##
# User Database
# 
# Note that this file is consulted directly only when the system is running
# in single-user mode.  At other times this information is provided by
# Open Directory.
#
# See the opendirectoryd(8) man page for additional information about
# Open Directory.
##
nobody:*:-2:-2:Unprivileged User:/var/empty:/usr/bin/false
root:*:0:0:System Administrator:/var/root:/bin/sh
daemon:*:1:1:System Services:/var/root:/usr/bin/false
_uucp:*:4:4:Unix to Unix Copy Protocol:/var/spool/uucp:/usr/sbin/uucico
_taskgated:*:13:13:Task Gate Daemon:/var/empty:/usr/bin/false
_networkd:*:24:24:Network Services:/var/networkd:/usr/bin/false
_installassistant:*:25:25:Install Assistant:/var/empty:/usr/bin/false
_lp:*:26:26:Printing Services:/var/spool/cups:/usr/bin/false
_postfix:*:27:27:Postfix Mail Server:/var/spool/postfix:/usr/bin/false
_scsd:*:31:31:Service Configuration Service:/var/empty:/usr/bin/false    

   ➜  vm vagrant halt 
==> default: Attempting graceful shutdown of VM...
➜  vm vagrant status
Current machine states:
default                   poweroff (virtualbox)
The VM is powered off. To restart the VM, simply run `vagrant up`
  ➜  vm 


December 14, Saturday 2019

STUDY NOTES

  • Finished Setup AWS Free Tier Account.

  • Attended London Study Group meet up at the British Library, discussed an AWS project with Mohamed Hassona and Enrico Mengotti.



December 15, Sunday 2019

STUDY NOTES

AWS Dictionary

IAM Identity & Access Management
MFA Mlti-factor Authentification
Code Pipeline Continuous Integration
Key Managemnt Service Data Encryption
Cloud9 Development Tool
SNS Simple Notification Service
Redshift Data Warehouse



BIBLIOGRAPHY, REFERENCES AND CREDITS

The list below summarizes the websites used in this Digital Diary.

[1]. Technology Scholarship Program

[2]. "Configuring Linux Web Servers" Udacity Course

[3]. Orders of magnitude (time)

[4]. Bertelsmann Will Fund 15,000 Scholarships to Learn Data, AI and Cloud Computing on Udacity

[5]. Five Most Frequently Used Open Source Shells for Linux.

[6]. Markdown Cheatsheet

[7]. Ubuntu Packages Search

[8]. AWS Free Tier

[9]. Is the Amazon Free Usage Tier really free? Are there any hidden charges?



About

Learning to operationalize infrastructure at scale and deliver applications and services at high velocity.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published