Start Date: November 20, 2019
End Date: March 5, 2020
______#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.
Cohort begins November 20th, 2019 (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.
| 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 |
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 |
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
[8]. AWS Free Tier
[9]. Is the Amazon Free Usage Tier really free? Are there any hidden charges?









