1. aws
1.1 获取 access_key_id
- 登录 AWS 管理控制台
- 点击右上角的账户名称,选择 “Security credentials” (安全凭证)
- 在安全凭证页面,找到 “Access keys” (访问密钥) 部分
- 点击 “Create New Access Key” (创建新的访问密钥)
2. ec2
2.1 修改磁盘大小
- 去终端修改大小: EC2 -> Volumes -> 修改AWS 磁盘大小
- 使用命令调整
1 | #检查扩容状态,首先,确保你已经在 AWS Console 中增加了 EBS 卷的大小。 |
3. S3
3.1 S3 加速模式
1 | obj, err := s.preSignClient.PresignPutObject(ctx, &s3.PutObjectInput{ |
先开启S3 网页加速功能,再上线代码。
先下线代码,后下线 S3 网页加速功能。
3.2 S3 私有桶配置 cloudfront 访问
S3 block all 权限
- 返回到S3控制台,选择您的Bucket。
- 点击“权限”选项卡。
- 在“Bucket策略”部分,添加以下策略以允许CloudFront的OAC访问您的Bucket:(E20SXT84JIMV9 是 CloudFront 的 ID)
1 | { |
3.3 下载和上传文件
1 | # 1. 下载 |
aws s3 cp 和 aws s3 sync 的区别
aws s3 cp
- 复制所有文件:无论目标位置是否已经存在相同的文件,
cp
都会无条件地复制文件。例如,如果目标文件已存在,cp
会直接覆盖它而不会检查文件的内容或时间戳。(learnaws.org) - 不支持删除:
cp
不会删除目标位置中多余的文件,即使这些文件在源位置中已经被删除。(learnaws.org)
- 复制所有文件:无论目标位置是否已经存在相同的文件,
aws s3 sync
- 只复制新增和更新的文件:
sync
命令会检查源和目标文件的时间戳或大小差异,只有那些在源位置中新增或更新的文件才会被复制到目标位置。(learnaws.org) - 支持删除多余文件:使用
--delete
选项时,sync
会删除目标位置中那些在源位置不存在的文件,从而确保目标和源的一致性。
- 只复制新增和更新的文件:
4. CloudFront
https://mp.weixin.qq.com/s/e-pCAT65zeLu4qxpKOiNWg
https://mp.weixin.qq.com/s/eiem8vkXLPN9RM-RgQhPAA
4.1 域名绑定 CloudFront
- 去 us-east-1(N. Virginia)区域
- 申请 cdn.aipi.com 证书
- cloudfront 在“设置”中,找到“SSL/TLS 设置”,选择刚才证书
- cloudfront 在“设置”中,增加 Alternate domain name (CNAME)
- Route S3: 创建一个CNAME cdn.aipi.com -> d8i356.cloudfront.net
4.2 让cloudfront 缓存失效
在 CloudFront 控制台中,找到并选择与您的 S3 存储桶关联的分配。
- 创建失效请求
- 在分配的详细信息页面中,选择“Invalidations”(失效)。
- 点击“Create Invalidation”(创建失效)。
- 在“Object Paths”(对象路径)字段中,输入要失效的对象路径。例如,如果您想失效整个分配,可以使用
/*
。如果只想失效特定对象,可以输入对象的具体路径,例如/path/to/your/object.jpg
。 - 点击“Invalidate”(使失效)。