k8s 探索2:安装 Ubuntu 系统

k8s 探索2:安装 Ubuntu 系统

🎈「k8s 探索」系列:

我们现在已经购买了硬件,并把它们安装到一起,硬件准备已完成。现在开始折腾软件部分了,而软件是跑在操作系统里的,所以我们要先装一个合适的操作系统。

1 选择操作系统

可以安装进树莓派的操作系统有很多,比如官方出的 Raspbian OS,著名的 Ubuntu 系列 Ubuntu MATEUbuntu ServerUbuntu Core,以及适合做媒体服务器 LibreELECOSMC 等等。

我们需要选择一个「软件兼容性好、运行稳定、用户基数大」的操作系统,在上述这些操作系统中 Ubuntu Server 20.04 LTS 是最符合要求的,但它是个服务器操作系统,没有图形化的界面,可能对不常使用 shell 的人不太友好。

2 使用 Raspberry Pi Imager 烧录系统

Imager 是一个树莓派官方提供的一个强大工具,它不但可以「烧录镜像」还可以直接「下载常用镜像」,很好的解决了需要「下载各种软件、折腾不同版本」的问题!

Raspberry Pi Imager

点击这里就可以下载,安装软件后依次点击 CHOOSE OS -> Other general purpose OS -> Ubuntu -> Ubuntu Server 20.04.2 LTS (记得选 64-bit 那个)。

接下来把你的 MicroSD 卡插入读卡器内,然后再连接到电脑上,点击 Imager 上的 CHOOSE STORAGE 选择插入的 MicroSD 卡,最后点击 WRITE 开始烧录(可能会弹出验证身份的弹窗,输入密码确认即可)。

烧录完成后就可以把 MicroSD 卡取下来,放入树莓派上了。插上电源和网线开始启动!

上文主要参考了 How to install Ubuntu Server on your Raspberry Pi

2 设置操作系统

当树莓派启动后,它会被分配到一个局域网地址,你可以直接在路由器后台,找到「Ubuntu」或者「Linux主机」等类似名称,局域网地址类似于 192.168.2.11

如果你不方便进入后台,也可以手动扫局域网端口(这种方法可能会找不到)。

1
2
3
4
5
arp -a
# ? (192.168.2.1) at xx:xx:xx:74:42:d8 on en0 ifscope [ethernet]
# ? (192.168.2.2) at xx:xx:xx:58:ea:a0 on en0 ifscope [ethernet]
# ? (192.168.2.11) at xx:xx:xx:11:ea:a0 on en0 ifscope [ethernet]
# ...

此时我们就可以通过 SSH 连接到树莓派(不了解 SSH 点这里),操作方式如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 替换 $your_raspberry_ip 为树莓派实际的局域网地址,当前为 192.168.2.11
ssh ubuntu@$your_raspberry_ip
# 输入密码 ubuntu (这个 ubuntu server 的默认密码)
# 修改密码

passwd
# 设置当前用户密码
# 如果出现 Bad: new password is too simple
# 或者 Bad: new and old password are too similar
sudo passwd $user_name

sudo passwd
# 设置root密码

sudo apt update
sudo apt upgrade
# 如果出现 Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 2927 (unattended-upgr)
# 请等等再试,系统在自动更新中

# 修改hostname
sudo vi /etc/hostname
# 将 ubuntu 改成你想要设置的名字,假设为 server1

sudo vi /etc/hosts
# 添加 127.0.0.1 server1

# 设置时区
sudo ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
sudo bash -c "echo 'Asia/Shanghai' > /etc/timezone"

# 重启生效
sudo reboot

# 移除无效软件
sudo apt autoremove

# 锁定内核版本
sudo apt-mark hold `uname -r`

3 配置 Wi-Fi

如果不设置 Wi-Fi 就要一直插着三根网线,虽然这样很稳定,但是加上三根电源线就有六根线了。

第一个是不美观,第二是我有可能会把它移动到别的地方,带着网线一起迁移就不是很方便,所以一定要把它们设置成无线的!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# 先查看网络地址
ip addr show

# 也可以用 ifconfig
sudo apt install net-tools
ifconfig

# eth0 里面的类似于 inet 192.168.2.11/24 就是你的有线连接地址
# wlan0 中还找不到,下面我们就来设置静态的 Wi-Fi 地址,配置完成后既不用插网线,也不用找动态的 IP 地址。

sudo vi /etc/netplan/50-cloud-init.yaml
# 添加
network:
ethernets:
eth0:
dhcp4: true
optional: true
wifis:
wlan0:
dhcp4: false
dhcp6: false
addresses: [$your_static_ip/24]
gateway4: 192.168.2.1
nameservers:
addresses: [192.168.2.1, 8.8.8.8]
access-points:
"$your_wifi_name":
password: "$your_wifi_password"
version: 2
# 记得把 $your_static_ip 换成你想设置的静态 IP 比如 192.168.0.101
# $your_wifi_name$your_wifi_password 换成 Wi-Fi 的名称和密码

# 使配置生效
sudo netplan apply

# 此时你将看到 wlan0 下方会出现 inet 192.168.0.101/24,这就说明配置成功
# 下次登录时尝试 ssh ubuntu@192.168.0.101

4 关闭虚拟内存

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 查看内存
sudo free -m
# total used free shared buff/cache available
# Mem: 64213 1802 61207 32 1204 61757
# Swap: 2047 0 2047

# 临时关闭虚拟内存
sudo swapoff -a
# 再次查看内存
sudo free -m
# total used free shared buff/cache available
# Mem: 64213 1854 61154 32 1204 61705
# Swap: 0 0 0

# 永久关闭
sudo vi /etc/fstab
# 注释掉最后一行,swapfile
# /swapfile none swap sw 0 0

# 然后重启
sudo reboot

# 再次查看内存
sudo free -m
# total used free shared buff/cache available
# Mem: 64213 622 62976 3 615 62984
# Swap: 0 0 0

完成上述操作后,操作系统的准备就完成了,现在我们正式开始进入主题—— k8s

5 参考

🎈「k8s 探索」系列:

作者

Ailln

发布于

2021-08-02

更新于

2024-03-02

许可协议

评论