AWS实例3T磁盘初始化分区及docker环境部署
Posted 杰哥的技术杂货铺
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS实例3T磁盘初始化分区及docker环境部署相关的知识,希望对你有一定的参考价值。
文章目录
一.背景说明
AWS块存储支持的分区格式包括MBR和GPT。其中,MBR只支持处理不大于2 TB的容量,且只支持划分4个主区。如果需要使用大于2 TB的数据盘,必须采用GPT格式。
大于2 TB的数据盘请采用下表中描述的分区工具、分区格式和文件系统。
操作系统 | 分区工具 | 分区格式 | 文件系统 |
---|---|---|---|
Linux | parted | GPT | ext4 |
二.磁盘分区
此示例中说明如何在Linux实例上使用Parted工具和e2fsprogs工具分区并格式化一个大容量数据盘
- 系统:centos 7.7
- 盘空间:3T
- 设备名:/dev/nvme1n1
2.1 安装分区工具
前提条件:请确认您的Linux实例上已经安装了Parted工具和e2fsprogs工具。
- 安装Parted工具:
yum install -y parted
- 令安装e2fsprogs工具:
yum install -y e2fsprogs
2.2 查看是否存在数据盘
运行以下命令:
fdisk -l
运行结果如下所示,应包含数据盘信息。如果没有,表示未挂载数据盘。
Disk /dev/nvme1n1: 3328.6 GB, 3328599654400 bytes, 6501171200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
2.3 使用Parted工具为数据盘进行分区
- 开始分区
parted /dev/nvme1n1
- 将默认的MBR分区格式转为GPT分区格式
mklabel gpt
- 划分一个主分区,并设置分区的开始位置和结束位置
mkpart primary 1 100%
- 检查分区是否对齐
align-check optimal 1
运行结果如下所示:
1 aligned
注:如果返回的是 1 not aligned,说明分区未对齐,需要进行检查。
- 查看分区表
print
- 退出Parted工具
quit
Parted工具分区结果如下所示
# arted /dev/nvme1n1
GNU Parted 3.1
Using /dev/nvme1n1
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt //将默认的MBR分区格式转为GPT分区格式
(parted) mkpart primary 1 100% //划分一个主分区,并设置分区的开始位置和结束位置
(parted) align-check optimal 1 //检查分区是否对齐
1 aligned
(parted) print //查看分区表
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 4398GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 3329GB 3329GB primary
(parted) quit //退出Parted工具
Information: You may need to update /etc/fstab.
2.4 系统重读分区表
使系统重读分区表。
partprobe
2.5 为/dev/vdb1分区创建文件系统
- 创建一个ext4文件系统
mkfs -t ext4 /dev/nvme1n1
2.6 挂载磁盘
- 将分区/dev/nvme1n1挂载到/opt
mount /dev/nvme1n1 /opt
- 查看目前磁盘空间和使用情况
df -h
如果返回结果里出现新建文件系统的信息,说明挂载成功,可以进行使用了
/dev/nvme1n1 3.0T 89M 2.9T 1% /opt
- 设置开机自动挂载
在/etc/fstab文件中写入新分区信息,启动开机自动挂载分区
- 备份etc/fstab。
cp /etc/fstab /etc/fstab.bak
- 向/etc/fstab里写入新分区信息
echo `blkid /dev/nvme1n1 | awk 'print $2' | sed 's/\\"//g'` /opt ext4 defaults 0 0 >> /etc/fstab
- 查看/etc/fstab的信息
cat /etc/fstab
如果返回结果里出现了写入的新分区信息,说明写入成功。
至此,已经成功分区并格式化了一个3 TB数据盘。
三、安装docker
3.1 卸载旧版本
旧版本的 Docker 称为 docker 或者 docker-engine,可以使用如下命令卸载:
# yum remove docker \\
docker-client \\
docker-client-latest \\
docker-common \\
docker-latest \\
docker-latest-logrotate \\
docker-logrotate \\
docker-selinux \\
docker-engine-selinux \\
docker-engine
3.2 使用 yum 安装
- 1)安装依赖包
# yum install -y yum-utils
- 2)配置安装源
国内源:
# yum-config-manager \\
--add-repo \\
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
$ sudo sed -i 's/download.docker.com/mirrors.aliyun.com\\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
官方源:
# yum-config-manager \\
--add-repo \\
https://download.docker.com/linux/centos/docker-ce.repo
- 3)安装 Docker
# yum install docker-ce docker-ce-cli containerd.io
3.3 使用官方安装脚本自动安装
指定使用国内源进行安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
或者
curl -sSL https://get.daocloud.io/docker | sh
3.4 启动并加入开机启动
# systemctl start docker
# systemctl enable docker
以上是关于AWS实例3T磁盘初始化分区及docker环境部署的主要内容,如果未能解决你的问题,请参考以下文章
使用 Docker 在 AWS Elastic Beanstalk 上部署失败