---
# System prepended metadata

title: '*Part1*_Install Kubernetes in Linux OS'
tags: [Docker & Kubernetes]

---

# *Part1*_Install Kubernetes in Linux OS
###### tags: `Docker & Kubernetes`
## Setup Linux OS (雙系統_Windows & Linux)
> 此章節完全整理自 [UEFI 雙硬碟安裝 Win 10 x Ubuntu 16.04 雙系統教學](https://min-sheng.github.io/teaching/UEFI_%E9%9B%99%E7%A1%AC%E7%A2%9F%E5%AE%89%E8%A3%9D_Win-10_x_Ubuntu_16.04_%E9%9B%99%E7%B3%BB%E7%B5%B1%E6%95%99%E5%AD%B8/) by [Vincent Wu](https://min-sheng.github.io/) @ V生の日常 Vincent's Daily Life的筆記，原創內容加上操作截圖。
>
### Step 1.備份檔案
:::danger 
安裝過程要小心,若點錯就會把原有的Windows砍掉了 
:::

### Step 2.判斷原先電腦是否為 UEFI 
#### ```Windows+R```(執行)輸入```msinfo32``` 

![](https://i.imgur.com/GueYjyE.png)

:::success
若BIOS模式顯示**傳統**代表系統啟動方式為 **Legacy BIOS**
若BIOS模式顯示**UEFI** ，則系統啟動方式則為 **UEFI** 
:::

### Step 3.查看 HDD 的磁碟分區格式，必須為 GPT

#### 開啟磁碟管理
在```開始功能表```（螢幕左下方的 windows 按鈕）點擊滑鼠右鍵，選擇```磁碟管理```開啟磁碟管理工具
![](https://i.imgur.com/7th4psL.png)
#### 確認HDD磁碟為GPT
HDD 的磁碟代號上（我的是磁碟0）點擊滑鼠右鍵。
選單中若有灰色的```轉換成MBR磁碟```則表示你的磁碟目前是 GPT 格式。
![](https://i.imgur.com/YObfPBn.png)

### Step 4.在 HDD 的磁區分割出 64 GB 的空間
#### 在 HDD 的磁區點擊滑鼠右鍵，選擇壓縮磁區
![](https://i.imgur.com/4j8F2bm.png)
#### ```輸入要壓縮的空間大小```填入 65536 (MB)，並靜待電腦執行壓縮，壓縮完成後會看到空出來的 64 GB。
![](https://i.imgur.com/y6qaBMa.png)

### Step 5.關閉 Windows 的快速啟動
#### 開啟```控制台```>>```硬體和音效```>>```電源選項```>>>```選擇按下電源按鈕時的行為```>>```變更目前無法使用的設定```>>>```開啟快速啟動(建議選項)```**取消勾選**。
![](https://i.imgur.com/VDtMs1O.png)

:::danger
可能是教學文章的作業系統較舊，我的設定裡已經沒有此選項
:::
![](https://i.imgur.com/MYZ8evH.png)
:::warning
此為教學文章的方式，但我的環境為Win10，有別的方式關閉快速啟動。
:::

#### 現在Windows 有更快的方式關閉快速啟動
#### 在Windows搜尋```Windows To Go```
![](https://i.imgur.com/8pdmRLC.png)
#### 更改啟動設定，更改為```是```
![](https://i.imgur.com/kPBR29d.png)
:::success
:+1: 更改成功 !
:::

### Step 6.進入 BIOS 設置關閉 Security Boot ，否則 Ubuntu 無法寫入引導程序
#### 每一家公司的主機板設定 BIOS 的方式不盡相同，所以請針對自己的主機板自行 google 如何關閉。

我的電腦為ASUS，若跟我一樣可嘗試這篇
[Asus進入BIOS更改 Security Boot方式](https://kknews.cc/zh-tw/news/q53pxgo.html)
:::info
主要是把Secure Boot關閉(調成Disable即可)
:::

### Step 7.製作 Ubuntu 16.04 USB 開機碟
#### 我使用 Rufus 這款免費、免安裝、簡單又快速的 ISO 光碟映像檔製作軟體：

(1) 準備一個「空的」 USB 隨身碟。

(2) 首先連到 [Ubuntu 的官方網站](https://ubuntu.com/download)，可依自己需要選擇適合的版本，在此我選擇發行板為```Ubuntu桌面版本```版本為```Ubuntu-16.04.5 LTS```（最新長期支援（穩定）版），電腦架構為```64 位元版本```，並點選```開始下載```。
![](https://i.imgur.com/JPUKAh3.png)

(3) 連到[Rufus 的官方網站](https://rufus.akeo.ie/?locale=zh_TW)，下向捲動找到下載的```Rufus 2.18 (945 KB)```或```Rufus 2.18 可攜版 (945 KB)```，點選下載。
![](https://i.imgur.com/f3VAan1.png)

(4) 下載完成後，將你的 USB 隨身碟插入電腦的 USB 插槽，並對著下載的檔案雙擊滑鼠左鍵，執行 Rufus 。

(5) 開始製作：

a. 在```裝置```選擇```要製作的USB隨身碟位置```。

b. ```資料分割配置及系統類型```使用預設的```MBR可相容BIOS和UEFI-CSM之資料分割```。

c. 點選左下方的光碟機圖案以```選取映像檔```，選擇先前下載好的```Ubuntu 16.04.ISO```開機光碟映像檔，點選```開啟```。

d. 點選```執行```，若跳出```下載擴充檔案```，點選```是```；跳出```使用預設選項```，點選```OK```；跳出```此動作將完全清除此裝置上的資料```的警告，點選```確定```。

e. 等待綠色進度條跑完，製作完成後再關閉。

### Step 8.再次進入 BIOS 設定開機順序為 USB 隨身碟優先。

### Step 9.設置分區並安裝
#### 1.進入安裝介面
設置 USB 隨身碟優先啟動後，重新啟動電腦，進入 Ubuntu 安裝介面，照著上面的指示，一直到```安裝類型```步驟，選擇```其他選項```以自訂磁區安裝。
:::danger
一定要選 :fire:**其他選項**:fire:
一定要選 :fire:**其他選項**:fire:
一定要選 :fire:**其他選項**:fire:
:zap:非常重要:zap: 就是要講三遍
:::

#### 2.配置
:::danger
這裡很重要，要小心不要動到原有資料的磁區，不然可能會洗掉電腦中的資料！
:::

可以看到裝置清單中， /dev/sdb 是 SSD ， /dev/sda 是 HDD ，根據容量大小找到剛才在 Win 10 下預留的 64 GB 空磁區（找到大約是 65536 MB 即可，實際上大小可能會些微不同，這是因為壓縮時不一定恰恰好）。

在該分割出來的 64 GB 空磁區點一下滑鼠左鍵，並點選下方 “ + ” 號，依序下方說明配置：

(1) 用途為```EFI系統分區```，選擇```邏輯分區```、```此空間的開頭```、```500 MB（不要小於 256 MB ）```。

(2) 用途為```EXT4日誌式檔案系統```，選擇```邏輯分區```、```此空間的開頭```、```49152 MB（實際上填入剩下的減去預留給 swap 的 16 GB ）```、掛載點為 ```/```。

(3) 用途為```置換空間```（即為 swap ），選擇```邏輯分區```、```此空間的開頭```、```16384 MB（ 16 GB ）```。

※ 因為 EFI 是由 UEFI 引導，非傳統的 boot/grub 模式，所以不需設置 /boot。

#### 3.開始安裝
:::danger 
此步驟要格外小心不要選錯！！！
此步驟要格外小心不要選錯！！！
此步驟要格外小心不要選錯！！！
:::
配置完後，在新建的 /dev/sda 中的 “ EFI系統分區 ” 磁區雙擊滑鼠左鍵，並於下方 “ 用來安裝開機程式的裝置 ” 選單，選擇 /dev/sda 中的 “ EFI系統分區 ”

※ 在 /dev/sdb 中的 EFI系統分區可看到原本 Win 10 的```windows Boot Manager```
/dev/sda 中的 EFI系統分區才是剛剛建立的，記得選後者，不要選錯！不然會悲劇！
:::success
要選新建的/dev/sda EFI系統分區 :+1: :100: 
:::

#### 4.調整開機順序
進入 BIOS 調整開機順序為新建立的 windows Boot Manager ，就大功告成啦
![](https://i.imgur.com/17EbVuL.png)

:::success 
※ 最後可以把先前關閉的 BIOS 的 Security Boot 再次設定開啟。
:::

## Kubernetes 安裝
### Kubernetes 基本原理介紹
此篇文章寫得非常好，仔細又有條理，直接參考這位作者的文章
[胡程維｜Cheng-Wei Hu](https://medium.com/@C.W.Hu?source=post_page-----e033e3504ec0----------------------)

#### Docker
>[Docker 基礎教學與介紹 101](https://medium.com/unorthodox-paranoid/docker-tutorial-101-c3808b899ac6) by [胡程維｜Cheng-Wei Hu](https://medium.com/@C.W.Hu?source=post_page-----e033e3504ec0----------------------)
>
#### Kubernetes
>[Kubernetes 基礎教學（一）原理介紹](https://medium.com/@C.W.Hu/kubernetes-basic-concept-tutorial-e033e3504ec0) by [胡程維｜Cheng-Wei Hu](https://medium.com/@C.W.Hu?source=post_page-----e033e3504ec0----------------------)
>
>[Kubernetes 基礎教學（二）實作範例：Pod、Service、Deployment、Ingress](https://medium.com/@C.W.Hu/kubernetes-implement-ingress-deployment-tutorial-7431c5f96c3e) by [胡程維｜Cheng-Wei Hu](https://medium.com/@C.W.Hu?source=post_page-----e033e3504ec0----------------------)
>
>[Kubernetes 基礎教學（三）Helm 介紹與建立 Chart](https://medium.com/@C.W.Hu/kubernetes-helm-chart-tutorial-fbdad62a8b61) by [胡程維｜Cheng-Wei Hu](https://medium.com/@C.W.Hu?source=post_page-----e033e3504ec0----------------------)
>

### Kubernetes 安裝-無網路環境
