SlideShare a Scribd company logo
How to manage Microsoft Azure
with open source
Taehee Jang
Ubuntu Korea Community Adviser
Microsoft MVP (Cloud and Datacenter Management)
2017-09-16
List
• Bash on Ubuntu on Windows – “grep” command
• Azure CLI 2.0 – Changed installation method & Basic usage
• Juju – What is Juju?
• Run Docker on Bash on Ubuntu on Windows
1. grep
Entire grep commands) https://www.gnu.org/software/grep/manual/grep.html
grep
Find text by using grep
grep 'some text' /etc/ssh/sshd_config
grep 'word' file1 file2 file3
Show texts except lines which contain specific characters
grep -v "#" /etc/apache2/sites-available/default-ssl.conf
Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
grep
Use with pipe
cat /etc/ssh/sshd_config | grep 'some text'
dpkg -l | grep -i python
Show with sentences before or after searched texts
ifconfig | grep -A 4 eth0
ifconfig | grep -B 2 UP
Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
grep
Search texts including subdirectories
grep –r “function” ./*
Count matched texts
ifconfig | grep –c inet6
Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
grep
Search words inside gzip file
zgrep –i error /var/log/syslog.2.gz
grep with regular expressions
grep –E → egrep
grep with simple strings
grep –F → fgrep
Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
2. Azure CLI 2.0
Azure CLI 2.0
▪ Written in JavaScript with Node.js -> Python
• Support : Ubuntu, Debian, CentOS, Redhat, OpenSUSE, and Mac
• Required : python libssl-dev libffi-dev python-dev build-essential
• Remove 1.0 before install 2.0
• curl -L https://aka.ms/InstallAzureCli | bash -> exec -l $SHELL
Install Azure CLI 2.0(Linux / WSL)
echo "deb [arch=amd64]
https://packages.microsoft.com/repos/azure-cli/ wheezy main" |
sudo tee /etc/apt/sources.list.d/azure-cli.list
sudo apt-key adv --keyserver packages.microsoft.com --recv-keys
417A0893
sudo apt-get install apt-transport-https
sudo apt-get update && sudo apt-get install azure-cli
Source) https://docs.microsoft.com/ko-kr/cli/azure/install-azure-cli?view=azure-cli-latest#install-on-windowsSource) https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest#install-on-windows
Start Azure CLI 2.0
Start Azure CLI 2.0
az group create –name <group name> --location <region>
az network vnet create –resource-group <group name> --name
<network name> --address-prefix <IP class> --subnet-name
<subnet name> --subnet-prefix <IP class>
az vm create –n <vm name> –g <group name> --image “<OS>”
–size <vm size>
Source) https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest#az_configure
3. What is Juju?
How to manage Azure with open source
How to manage Azure with open source
How to manage Azure with open source
How to manage Azure with open source
How to manage Azure with open source
Support Clouds
Model, Charm, Bundle
Charm Model
Select My Cloud and Region
See public clouds list
juju clouds
Show clouds with regions
juju regions azure or juju show-cloud azure
Set my default cloud region
juju set-default-region azure koreacentral
Add Credentials to My Device
Add my juju credential to Bash on Ubuntu on Windows
juju add-credential azure
Enter credential name: <Name as I want>
Select auth-type: <Automatically set to interactive type if vacant>
Enter subscription-id: <My subscription id when “az login”>
How to manage Azure with open source
Add Controllers to My Cloud
Create juju state server(controller) on Azure
juju bootstrap azure <My controller name>
You can make multiple controllers and add other companies’ cloud.
Remove controller
destroy-controller <Controller name I created>
How to manage Azure with open source
Execute Juju GUI and Login
Connect Juju GUI URL
juju gui
Check my username and password for Juju GUI login
juju show-controller --show-password
Deploy Charm(Service) and Relate Charms
Type CLI command or search the charm on charm store
juju deploy <service as you want>
Connect between charms(services)
juju add-relation <charm 1> <charm 2>
Expose public IP for external access
juju expose <charm name to expose>
Configure Charms
SSH
How to access a specific unit
juju ssh <application name/unit number>
User command, Relation debugging
juju debug-hooks
For more information, please visit https://cloudbase.it/juju/
Juju Charms for Windows (12 Services)
Storage Spaces Direct
Nova – Hyper-V
SQL Server Express
Cinder
Active Directory SharePoint Exchange Server
SQL Server AlwaysOn
Windows File Server
Scale-Out File Server
Virtual Desktop
Infrastructure (VDI)
Windows Server
Failover Clustering
Windows Server
Update Services
For more information, please visit https://cloudbase.it/juju/
Others
Check log for Juju charms
juju debug-log
Check deployed machine and charm status
juju status
Update cloud region changes
update-clouds
4. Docker & Bash on Ubuntu on Windows
Run Docker on Bash on Ubuntu on Windows
Install Docker for Windows
Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
Run Docker on Bash on Ubuntu on Windows
vim ~/.bashrc and add 2 lines
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
PATH="$PATH:/mnt/c/Program Files/Docker/Docker/resources/bin“
Install packages to add https repository
# apt install apt-transport-https ca-certificates curl 
software-properties-common
Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
Run Docker on Bash on Ubuntu on Windows
Add Docker’s official GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo
apt-key add –
Add repository
# add-apt-repository "deb [arch=amd64]
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable“
Install Docker
sudo apt update && sudo apt install docker-ce
Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
Run Docker on Bash on Ubuntu on Windows
Enable “Expose daemon on tcp://localhost:2375 without TLS” on Docker
Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
Run Docker on Bash on Ubuntu on Windows
Connect Docker on WSL to Docker on Windows
echo "export DOCKER_HOST='tcp://0.0.0.0:2375'" >> ~/.bashrc
source ~/.bashrc
Check Docker works
Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/

More Related Content

What's hot (20)

PPTX
Introduction to docker
Bryan Yang
 
PDF
Docker e postgresql
Fernando Ike
 
PDF
Iniciando com Docker
Emmanuel Neri
 
PPTX
First steps to docker
Guilhem Marty
 
PPTX
Vagrant
ProfessionalVMware
 
ODP
Releasing and deploying python tools
Quintagroup
 
PDF
Node Web Development 2nd Edition: Chapter2 Setup Node and NPM
Rick Chang
 
PDF
Docker deploy
Eric Ahn
 
PPTX
Installing OpenSim (Diva Distro) to Create Your Own Private Sim Sandbox
Fleep Tuque
 
PPTX
Gebruik dezelfde Docker container voor Java applicaties tijdens ontwikkelen e...
NLJUG
 
PPT
Your own minecraft server on a linode vps
Cleo Morisson
 
PDF
using Virtualbox NAT and shared folder
Yingshiuan Pan
 
PPTX
Docker orchestration
Open Source Consulting
 
PDF
Docker 101 - from 0 to Docker in 30 minutes
Luciano Fiandesio
 
PDF
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
Ruoshi Ling
 
PDF
Getting instantly up and running with Docker and Symfony
André Rømcke
 
PDF
Launching containers with fleet
충섭 김
 
PDF
12 Composer #burningkeyboards
Denis Ristic
 
PDF
CoreOS Overview
Victor S. Recio
 
PPTX
Using vagrant
Cuong Huynh
 
Introduction to docker
Bryan Yang
 
Docker e postgresql
Fernando Ike
 
Iniciando com Docker
Emmanuel Neri
 
First steps to docker
Guilhem Marty
 
Releasing and deploying python tools
Quintagroup
 
Node Web Development 2nd Edition: Chapter2 Setup Node and NPM
Rick Chang
 
Docker deploy
Eric Ahn
 
Installing OpenSim (Diva Distro) to Create Your Own Private Sim Sandbox
Fleep Tuque
 
Gebruik dezelfde Docker container voor Java applicaties tijdens ontwikkelen e...
NLJUG
 
Your own minecraft server on a linode vps
Cleo Morisson
 
using Virtualbox NAT and shared folder
Yingshiuan Pan
 
Docker orchestration
Open Source Consulting
 
Docker 101 - from 0 to Docker in 30 minutes
Luciano Fiandesio
 
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
Ruoshi Ling
 
Getting instantly up and running with Docker and Symfony
André Rømcke
 
Launching containers with fleet
충섭 김
 
12 Composer #burningkeyboards
Denis Ristic
 
CoreOS Overview
Victor S. Recio
 
Using vagrant
Cuong Huynh
 

Viewers also liked (18)

PDF
How and why we have integrated Slack and IRC
Ubuntu Korea Community
 
PDF
Ubuntu for make things
Ubuntu Korea Community
 
PDF
Linux Kernel 개발참여방법과 문화 (Contribution)
Ubuntu Korea Community
 
PDF
고등수학 스터디 결과발표
Ubuntu Korea Community
 
PPTX
DNS & Mail Server Study
Ubuntu Korea Community
 
PPTX
변태적인 터미널 사용방법
Ubuntu Korea Community
 
PPTX
런치패드를 통한 쉽고 재미있는 우분투 번역
Ubuntu Korea Community
 
PDF
Ubuntu's Unity : Birth to Death
Ubuntu Korea Community
 
PDF
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
Ubuntu Korea Community
 
PDF
300초만에 알아가는 Git 관련 꿀팁
Ubuntu Korea Community
 
PPTX
게임해킹의 관심을 끄는데 미연시만한게 없죠
Ubuntu Korea Community
 
PPTX
LTE-M 을 이용한 IoT 통신
Ubuntu Korea Community
 
PPTX
HanJP IM Project 개요
Ubuntu Korea Community
 
PPTX
FPGA 개발하면서 겪은 삽질에 대한 총 정리
Ubuntu Korea Community
 
PPTX
개발자를 위한, WINDOWS 10으로 시작하는 UBUNTU LINUX
Ubuntu Korea Community
 
PDF
Snaps on Ubuntu Desktop
Ubuntu Korea Community
 
PPT
synthetic aperture radar
Amit Rastogi
 
How and why we have integrated Slack and IRC
Ubuntu Korea Community
 
Ubuntu for make things
Ubuntu Korea Community
 
Linux Kernel 개발참여방법과 문화 (Contribution)
Ubuntu Korea Community
 
고등수학 스터디 결과발표
Ubuntu Korea Community
 
DNS & Mail Server Study
Ubuntu Korea Community
 
변태적인 터미널 사용방법
Ubuntu Korea Community
 
런치패드를 통한 쉽고 재미있는 우분투 번역
Ubuntu Korea Community
 
Ubuntu's Unity : Birth to Death
Ubuntu Korea Community
 
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
Ubuntu Korea Community
 
300초만에 알아가는 Git 관련 꿀팁
Ubuntu Korea Community
 
게임해킹의 관심을 끄는데 미연시만한게 없죠
Ubuntu Korea Community
 
LTE-M 을 이용한 IoT 통신
Ubuntu Korea Community
 
HanJP IM Project 개요
Ubuntu Korea Community
 
FPGA 개발하면서 겪은 삽질에 대한 총 정리
Ubuntu Korea Community
 
개발자를 위한, WINDOWS 10으로 시작하는 UBUNTU LINUX
Ubuntu Korea Community
 
Snaps on Ubuntu Desktop
Ubuntu Korea Community
 
synthetic aperture radar
Amit Rastogi
 
Ad

Similar to How to manage Azure with open source (20)

PDF
Informology - Introduction to juju
Khairul Aizat Kamarudzzaman
 
PPTX
Neil Peterson - Azure CLI Deep Dive
WinOps Conf
 
PDF
DevOpsMtl, Metal edition – MaaS and Juju
Leonardo Borda
 
PPTX
Kubernetes for .NET Developers
Lorenzo Barbieri
 
PDF
Docker Tips And Tricks at the Docker Beijing Meetup
Jérôme Petazzoni
 
PPTX
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
PPTX
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
PDF
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
Kumton Suttiraksiri
 
PPTX
Azure cli-azure devops
Thi Nguyen Dinh
 
PDF
k8s-on-azure
Ganesh Pol
 
PDF
MLUG Workshop January 2014 - Introducing Juju
Keith Vassallo
 
PPTX
Introduction to automated environment management with Docker Containers - for...
Lucas Jellema
 
PPT
Containers 101
Black Duck by Synopsys
 
PDF
Best Practices for Developing & Deploying Java Applications with Docker
Eric Smalling
 
PPTX
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
Alexey Bokov
 
PPTX
Making sense of containers, docker and Kubernetes on Azure.
Nills Franssens
 
PPTX
Container on azure
Vishwas N
 
PPTX
Using Azure DevOps to continuously build, test, and deploy containerized appl...
Adrian Todorov
 
PDF
Cloud Juju Primer
The World Bank
 
PDF
Introduction to Containers - From Docker to Kubernetes and everything in between
All Things Open
 
Informology - Introduction to juju
Khairul Aizat Kamarudzzaman
 
Neil Peterson - Azure CLI Deep Dive
WinOps Conf
 
DevOpsMtl, Metal edition – MaaS and Juju
Leonardo Borda
 
Kubernetes for .NET Developers
Lorenzo Barbieri
 
Docker Tips And Tricks at the Docker Beijing Meetup
Jérôme Petazzoni
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
Kumton Suttiraksiri
 
Azure cli-azure devops
Thi Nguyen Dinh
 
k8s-on-azure
Ganesh Pol
 
MLUG Workshop January 2014 - Introducing Juju
Keith Vassallo
 
Introduction to automated environment management with Docker Containers - for...
Lucas Jellema
 
Containers 101
Black Duck by Synopsys
 
Best Practices for Developing & Deploying Java Applications with Docker
Eric Smalling
 
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
Alexey Bokov
 
Making sense of containers, docker and Kubernetes on Azure.
Nills Franssens
 
Container on azure
Vishwas N
 
Using Azure DevOps to continuously build, test, and deploy containerized appl...
Adrian Todorov
 
Cloud Juju Primer
The World Bank
 
Introduction to Containers - From Docker to Kubernetes and everything in between
All Things Open
 
Ad

More from Ubuntu Korea Community (20)

PDF
권총 사격하러 우분투 써밋 참가한 썰.txt
Ubuntu Korea Community
 
PDF
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
Ubuntu Korea Community
 
PDF
우분투한국커뮤니티 2022년 활동 정리
Ubuntu Korea Community
 
PDF
우분투한국커뮤니티 2022년 신년회
Ubuntu Korea Community
 
PDF
Ubuntu Korea at FOSSASIA Summit 2022
Ubuntu Korea Community
 
PDF
Overview of the Flatpak
Ubuntu Korea Community
 
PDF
Usage of the MQTT
Ubuntu Korea Community
 
PDF
Open Source and the License
Ubuntu Korea Community
 
PDF
Memory Attack - The Memory Attack Techniques
Ubuntu Korea Community
 
PDF
Python을 이용한 Linux Desktop Application
Ubuntu Korea Community
 
PDF
나의 우분투 이야기
Ubuntu Korea Community
 
PDF
Malware Dataset & Ubuntu
Ubuntu Korea Community
 
PDF
케라스와 함께하는 재밌는 딥러닝 활용 사례들
Ubuntu Korea Community
 
PDF
딥러닝 세계에 입문하기 위반 분투
Ubuntu Korea Community
 
PDF
9월 서울지역 세미나 GPG 키사이닝 파티
Ubuntu Korea Community
 
PDF
우분투한국커뮤니티 2018년도 상반기 활동 보고
Ubuntu Korea Community
 
PDF
새로운 Libhanjp 라이브러리 구조
Ubuntu Korea Community
 
PDF
스타트업에서 하드웨어 개발 프로세스 도입하기
Ubuntu Korea Community
 
PDF
기계들의 소셜 미디어, MQTT
Ubuntu Korea Community
 
PDF
모바일에 딥러닝 심기
Ubuntu Korea Community
 
권총 사격하러 우분투 써밋 참가한 썰.txt
Ubuntu Korea Community
 
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
Ubuntu Korea Community
 
우분투한국커뮤니티 2022년 활동 정리
Ubuntu Korea Community
 
우분투한국커뮤니티 2022년 신년회
Ubuntu Korea Community
 
Ubuntu Korea at FOSSASIA Summit 2022
Ubuntu Korea Community
 
Overview of the Flatpak
Ubuntu Korea Community
 
Usage of the MQTT
Ubuntu Korea Community
 
Open Source and the License
Ubuntu Korea Community
 
Memory Attack - The Memory Attack Techniques
Ubuntu Korea Community
 
Python을 이용한 Linux Desktop Application
Ubuntu Korea Community
 
나의 우분투 이야기
Ubuntu Korea Community
 
Malware Dataset & Ubuntu
Ubuntu Korea Community
 
케라스와 함께하는 재밌는 딥러닝 활용 사례들
Ubuntu Korea Community
 
딥러닝 세계에 입문하기 위반 분투
Ubuntu Korea Community
 
9월 서울지역 세미나 GPG 키사이닝 파티
Ubuntu Korea Community
 
우분투한국커뮤니티 2018년도 상반기 활동 보고
Ubuntu Korea Community
 
새로운 Libhanjp 라이브러리 구조
Ubuntu Korea Community
 
스타트업에서 하드웨어 개발 프로세스 도입하기
Ubuntu Korea Community
 
기계들의 소셜 미디어, MQTT
Ubuntu Korea Community
 
모바일에 딥러닝 심기
Ubuntu Korea Community
 

Recently uploaded (20)

PDF
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
PDF
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
PPTX
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
PPTX
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
PPTX
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
PPTX
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
PDF
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
PDF
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
PDF
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
PDF
AOMEI Partition Assistant Crack 10.8.2 + WinPE Free Downlaod New Version 2025
bashirkhan333g
 
PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PDF
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
PDF
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
Ortus Solutions, Corp
 
PPTX
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
PPTX
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
PDF
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
PPTX
Coefficient of Variance in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
AOMEI Partition Assistant Crack 10.8.2 + WinPE Free Downlaod New Version 2025
bashirkhan333g
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
Ortus Solutions, Corp
 
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
Coefficient of Variance in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 

How to manage Azure with open source

  • 1. How to manage Microsoft Azure with open source Taehee Jang Ubuntu Korea Community Adviser Microsoft MVP (Cloud and Datacenter Management) 2017-09-16
  • 2. List • Bash on Ubuntu on Windows – “grep” command • Azure CLI 2.0 – Changed installation method & Basic usage • Juju – What is Juju? • Run Docker on Bash on Ubuntu on Windows
  • 4. Entire grep commands) https://www.gnu.org/software/grep/manual/grep.html
  • 5. grep Find text by using grep grep 'some text' /etc/ssh/sshd_config grep 'word' file1 file2 file3 Show texts except lines which contain specific characters grep -v "#" /etc/apache2/sites-available/default-ssl.conf Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
  • 6. grep Use with pipe cat /etc/ssh/sshd_config | grep 'some text' dpkg -l | grep -i python Show with sentences before or after searched texts ifconfig | grep -A 4 eth0 ifconfig | grep -B 2 UP Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
  • 7. grep Search texts including subdirectories grep –r “function” ./* Count matched texts ifconfig | grep –c inet6 Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
  • 8. grep Search words inside gzip file zgrep –i error /var/log/syslog.2.gz grep with regular expressions grep –E → egrep grep with simple strings grep –F → fgrep Source) https://www.tecmint.com/12-practical-examples-of-linux-grep-command/
  • 10. Azure CLI 2.0 ▪ Written in JavaScript with Node.js -> Python • Support : Ubuntu, Debian, CentOS, Redhat, OpenSUSE, and Mac • Required : python libssl-dev libffi-dev python-dev build-essential • Remove 1.0 before install 2.0 • curl -L https://aka.ms/InstallAzureCli | bash -> exec -l $SHELL
  • 11. Install Azure CLI 2.0(Linux / WSL) echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ wheezy main" | sudo tee /etc/apt/sources.list.d/azure-cli.list sudo apt-key adv --keyserver packages.microsoft.com --recv-keys 417A0893 sudo apt-get install apt-transport-https sudo apt-get update && sudo apt-get install azure-cli Source) https://docs.microsoft.com/ko-kr/cli/azure/install-azure-cli?view=azure-cli-latest#install-on-windowsSource) https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest#install-on-windows
  • 13. Start Azure CLI 2.0 az group create –name <group name> --location <region> az network vnet create –resource-group <group name> --name <network name> --address-prefix <IP class> --subnet-name <subnet name> --subnet-prefix <IP class> az vm create –n <vm name> –g <group name> --image “<OS>” –size <vm size>
  • 15. 3. What is Juju?
  • 23. Select My Cloud and Region See public clouds list juju clouds Show clouds with regions juju regions azure or juju show-cloud azure Set my default cloud region juju set-default-region azure koreacentral
  • 24. Add Credentials to My Device Add my juju credential to Bash on Ubuntu on Windows juju add-credential azure Enter credential name: <Name as I want> Select auth-type: <Automatically set to interactive type if vacant> Enter subscription-id: <My subscription id when “az login”>
  • 26. Add Controllers to My Cloud Create juju state server(controller) on Azure juju bootstrap azure <My controller name> You can make multiple controllers and add other companies’ cloud. Remove controller destroy-controller <Controller name I created>
  • 28. Execute Juju GUI and Login Connect Juju GUI URL juju gui Check my username and password for Juju GUI login juju show-controller --show-password
  • 29. Deploy Charm(Service) and Relate Charms Type CLI command or search the charm on charm store juju deploy <service as you want> Connect between charms(services) juju add-relation <charm 1> <charm 2> Expose public IP for external access juju expose <charm name to expose>
  • 31. SSH How to access a specific unit juju ssh <application name/unit number> User command, Relation debugging juju debug-hooks
  • 32. For more information, please visit https://cloudbase.it/juju/
  • 33. Juju Charms for Windows (12 Services) Storage Spaces Direct Nova – Hyper-V SQL Server Express Cinder Active Directory SharePoint Exchange Server SQL Server AlwaysOn Windows File Server Scale-Out File Server Virtual Desktop Infrastructure (VDI) Windows Server Failover Clustering Windows Server Update Services For more information, please visit https://cloudbase.it/juju/
  • 34. Others Check log for Juju charms juju debug-log Check deployed machine and charm status juju status Update cloud region changes update-clouds
  • 35. 4. Docker & Bash on Ubuntu on Windows
  • 36. Run Docker on Bash on Ubuntu on Windows Install Docker for Windows Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
  • 37. Run Docker on Bash on Ubuntu on Windows vim ~/.bashrc and add 2 lines PATH="$HOME/bin:$HOME/.local/bin:$PATH" PATH="$PATH:/mnt/c/Program Files/Docker/Docker/resources/bin“ Install packages to add https repository # apt install apt-transport-https ca-certificates curl software-properties-common Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
  • 38. Run Docker on Bash on Ubuntu on Windows Add Docker’s official GPG key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add – Add repository # add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable“ Install Docker sudo apt update && sudo apt install docker-ce Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
  • 39. Run Docker on Bash on Ubuntu on Windows Enable “Expose daemon on tcp://localhost:2375 without TLS” on Docker Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/
  • 40. Run Docker on Bash on Ubuntu on Windows Connect Docker on WSL to Docker on Windows echo "export DOCKER_HOST='tcp://0.0.0.0:2375'" >> ~/.bashrc source ~/.bashrc Check Docker works Source) https://blog.jayway.com/2017/04/19/running-docker-on-bash-on-windows/