亚马逊云aws amazon分布式存储CDN,配置Microi吾码SaaS引擎

  • 本地工作备忘录记录到线上,以删除本地文件
  • AWS解决方案架构师,负责基于AWS的云计算方案架构咨询和设计,有超过十年以上电信行业和移动互联网行业复杂应用系统架构和设计经验,主要擅长分布式和高可用软件系统架构设计,移动互联网应用解决方案设计,研发机构DevOps最佳实施过程

S3存储桶:

  • 公共桶:
    一定要配置启用ACL,并且ACL权限配置所有人可读。
    并且策略一定要配置:
    (其中“static.microi.net”是自己存储桶的名称,其它的复制过去直接用就行
{
    "Version": "2023-08-22,
    "Id": "S3PolicyId1",
    "Statement": [
        {
            "Sid": "statement1",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::static.microi.net/*"
        }
    ]
}

注意:发来发现不需要上面的操作,桶也不需要公用,只需要创建CDN的时候选择第三个选项自动创建策略即可,所以正确的步骤是:

  • 创建存储桶,取名microi-public
  • ACL已禁用
  • 阻止所有公开访问
  • 其它全部默认,直接创建
  • 创建CloudFront CDN
  • 来源选择第二个【来源访问控制设置(推荐)】,点击复制策略,去S3策略粘贴一下。
  • 来源访问也可以选择第三个Legacy access identities,选中【是,更新存储桶策略】

以上为公有CDN配置,以下为私有CDN配置:

  • 生成一个证书,Mac上执行2个命令
# openssl genrsa -out CloudFront-Private.pem 2048
# openssl rsa -pubout -in CloudFront-Private.pem -out CloudFront-Public.pem

此时会生成2个文件在mac的根目录

  • CloudFront公有密钥创建一个,并填写CloudFront-Workshop-Public-Key.pem里面的内容
  • CloudFront密钥组一定要创建一个组
  • 编辑CloudFront分配里面的行为,【限制查看器访问】选择为【yes】,并且选择刚刚创建的密钥组。
  • 在线pem转xml:https://www.ssleye.com/ssltool/pem_xml.html
    ————————————————————————————————————

桶自定义域名配置(实际上不需要此设置,最终会使用cdn来访问文件):

大概意思就是你设置的桶的名字必须与你的CNAME相同。
比如你的自定义域名是:static.microi.net,那么你桶的名称就得是:static.microi.net,
然后再CNAME到static.microi.net.s3.Region.amazonaws.com
注意其中的Region,是区域信息,如:ap-southeast-1
这样设置后,就完成了自定义域名static.microi.net的设置。
如CNAME设置是:static.microi.net.s3.ap-southeast-1.amazonaws.com
值得注意的是,如果桶的名字带了点,不支持开启传输加速功能,如果要开启上传/下载加速,桶的名称最好还是使用常规的如microi-public、microi-private
————————————————————————————————————

相应的Microi吾码SaaS引擎配置

MinIOEndPoint:static.microi.net.s3.ap-southeast-1.amazonaws.com
MinIOPrivateBucketName:随意填写,为私有桶内第一级目录名称,建议使用OsClient值
MinIOPublicBucketName:随意填写,为公有桶内第一级目录名称,建议使用OsClient值
MinIOEndPointSSL:false
值得注意的是:如果开启了传输加速,那么MinIOEndPoint的地址为:
static.microi.net.s3-accel******.amazonaws.com
并且需要配置MinIORegion为ap-southeast-1.

CloudFront CDN

通过CloudFront来访问S3,不需要S3桶名称一定是域名
CloudFront配置好过后,备用域名一定要设置为static.microi.net
然后static.microi.net CNAME到分配域名上实现加速:d37fasdsads.cloudfront.net

域名管理在Route 53

SSL管理在Certificate Manager(ACM)
EC2服务器管理(负载均衡也在这里)

Logo

更多推荐