EP02 - 配置本机虚拟机械并安装 AWS-CLI

行前准备

  1. 乾净或可任意变更的 AWS Account
  2. Virtualbox
  3. Vagrant

时常 windows 或是 mac 会安装很多开工具或是 cli
会避免与平常开发有所冲突
因此环境我会习惯在虚拟机械中操作
windows 的使用者若不习惯 powershell 或是 cmd 的介面
建议可以下载 cmder 来进行 command line 的操作

AWS

本次的挑战环境会使用到 AWS
由於 AWS 在注册时需要输入信用卡资讯以及英文地址
因此建议先准备一张信用卡
并透过网站将帐单地址翻译成英文

AWS 提供十二个月的免费方案
前三分之一的部分
主要是 EC2 的操作
价格不会太多
後三分之二开始需要建制 K8S Cluster
逐步使用越来越多 AWS 的服务
请自行衡量是否有能力负担花费

在注册时最後一步
会询问是否需要支援方案
可於日後开启
可在日後需要时再开启即可

https://ithelp.ithome.com.tw/upload/images/20210914/20141518IBbmrM1G9l.png

Virtualbox

碍於环境的差异
操作上无论 Mac 或是 Windows 都会使用 Virtualbox
在系统上安装一台虚拟机械进行操作
避免 Windows 上可能需要设定环境变数
但是 Mac 不需要的状况
因此操作上都会对齐
在虚拟机械中进行操作

https://ithelp.ithome.com.tw/upload/images/20210914/20141518WeP82n1gBK.png

Vagrant

Vagrant 是一款用於构建及配置虚拟开发环境的软件,基於 Ruby 并以命令行的方式运行。
主要使用 Oracle 的开源 VirtualBox 虚拟化系统,与Chef,Salt,Puppet等环境配置管理软件搭配使用, 可以实行快速虚拟开发环境的构建。(WIKI

以往在操作虚拟机械时
都会使用虚拟供应商提供的 GUI 软件
但是透过 UI
偶而需要按下组合键跳回原操作视窗
其实有点不方便

而 Vagrant 则实作虚拟机械的代理
透过脚本配置虚拟机械并运行
且目前常用的 Virtualbox、VMWare、Hyper-V 皆有支援
官方也有提供查询目前有支援的虚拟机械作业系统版本清单
可查看使用的作业系统更新状况

Windows 安装直接到官网下载安装即可,Mac 记得要先安装完 homebrew 再透过 homebrew 安装。


环境建置

vagrant 初始化

Windows 建议放在 D: 底下
Mac或其他Linux则切换到 ~ 目录
建立 vagrant 这个资料夹
进入 vagrant 後再建立 aws 资料夹

并在 vagrant/aws 底下下指令
以安装 ubuntu 20.04 版本

vagrant init ubuntu/focal64 

执行完後目录中会出现一个 Vagrantfile 档案
就算是初始化完成

更多参考:

  1. vagrant配置

配置文件

使用文字编辑器开启 Vagrantfile
将下面这行取消注解

config.vm.synced_folder "../data", "/vagrant_data"

这行意义是上一层目录也就是 /vagrant/data
挂载到虚拟机械中的根目录下 /vagrant_data
由於资料夹不会自动创建
记得手动创建一个名为 data 的资料夹
并放在与 vagrant 同阶层

往下找到 provider 的行数
改成下列参数

config.vm.provider "virtualbox" do |vb|
  # Display the VirtualBox GUI when booting the machine
  vb.gui = false
  
  # Customize the amount of memory on the VM:
  vb.memory = "2048"
end

这里则是将虚拟机械的 GUI 取消
并配置 2GB 记忆体

https://ithelp.ithome.com.tw/upload/images/20210914/20141518Bf02rej8Kv.png

启动虚拟机械

确认无误後输入以下指令启动虚拟机械

vagrant up

第一次启动需要下载作业系统的档案
因此需要一点时间

https://ithelp.ithome.com.tw/upload/images/20210914/20141518EJzE31bXbQ.png

https://ithelp.ithome.com.tw/upload/images/20210914/20141518Ij2wAxt9Kd.png

Mac 如果出现以下错误讯息
https://ithelp.ithome.com.tw/upload/images/20210914/20141518ljWdjVtmMO.png

需要开启官方的 Uninstall.tool 工具 (用终端机开启)
然後再重新安装一次
在最後安装完成时
需要到「系统偏好设定」中的「安全性与隐私权」
允许其他来源安装

https://ithelp.ithome.com.tw/upload/images/20210914/20141518DDuXv40tQs.png

或参考这个网址除错

安装 aws-cli

进入虚拟机械

启动後输入 vagrant ssh 便可连进虚拟机械

vagrant ssh

https://ithelp.ithome.com.tw/upload/images/20210914/20141518cejZrJ7egI.png

更新

sudo apt-get update & apt-get upgrade -y

安装unzip

sudo apt-get install unzip -y

https://ithelp.ithome.com.tw/upload/images/20210914/2014151897gkAZlTcA.png

下载 aws cli

sudo curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

https://ithelp.ithome.com.tw/upload/images/20210914/20141518QztA9vbbTy.png

解压缩 aws cli

sudo unzip awscliv2.zip

安装 aws cli

sudo ./aws/install

https://ithelp.ithome.com.tw/upload/images/20210914/20141518ZhucndMalp.png

执行指令

aws --version

https://ithelp.ithome.com.tw/upload/images/20210914/20141518mq9mwVV4SQ.png

只要能够看到版本输出讯息
表示已经成功安装好 aws 的 cli 罗


<<:  [Day 14] 资料产品生命周期管理-描述型模型

>>:  Day01 - 铁人赛我又来罗

Day20 Plugin 从零开始到上架 - 取得授权码(iOS)

接下来我们先切到iOS,换去处理iOS是如何取得权杖的 目标 与Androi 步骤一样,须先取得IN...

Day 3 - Rancher 架构与安装方式介绍

本文将於赛後同步刊登於笔者部落格 有兴趣学习更多 Kubernetes/DevOps/Linux 相...

【Day12】Git 版本控制 - git checkout 移动 head

什麽是 head? 我们在 commit 版本时,其实是将档案 commit 到一条 branch(...

Ruby on Rails 语言

https://wolkesau.medium.com/ruby-on-rails-语言-ba010...

Jquery/JS 使用Input 输入生日并限制年龄

客户需求如下 不要用datepicker点,说是手机太小不好点+老人不会点 资料库格式为西元年,但一...