ecs思考

VPC网络诊断,从router看起,连接公有子网路有一个默认,再新增一条指向igw路由;连接私有子网路由有一个默认,再新增一条指向NAT网关的路由,其中NAT网关一定要在公有子网中,否则,私有子网不能访问internet网络。网络都设置成公有子网

注意点:新建escInstanceRole,互信关系检测,要把Role在启动模板高级中进行设置;userdata部分要设置集群添加到集群;

ec2作业配置成brige模式;

可以先启动一个esc镜像集群,在上面做操作,已经安装docker、awscli、ecscli,用Xm工具进行连接

ecs agent日志文件在/var/log/ecs,例如, tail -f /var/log/ecs/ecs-agent.log;配置文件在/etc/ecs/ecs.config,要加入集群echo "ECS_CLUSTER=my-ec2-cluster" >> /etc/ecs/ecs.config设置这个才能让ec2实例加载到ecs集群提供服务,docker容器配置信息cat /etc/sysconfig/docker
echo "ECS_LOGLEVEL=crit" >> /etc/ecs/ecs.config  没有实验好像是设置日志级别
var/lib/docker/container是容器实例数据
ecsInstanceRole 中添加信任关系如下,否则会被认证错误   credentials-fetcher
{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "ecs.amazonaws.com",
                    "ec2.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

 5.10号测试镜像

https://www.cnblogs.com/tooroot/p/16204559.html  docker安装文档

AMI类型非常重要,否则,对应命令不能执行成功

Redis数据库本地安装

linux亚马逊服务器-安装redis_amazon linux 安装redis_土拨鼠尖叫呀的博客-CSDN博客

创建模板,主要启动ec2实例信息,包括合适esc镜像、权限角色、还有userdata数据,镜像路径参考,/aws/service/ecs/optimized-ami/amazon-linux-2/recommended/image_id,高级配置里面设置userdata设置集群信息,选择ecsInstanceRole

创建target group,ec2模式选择instance类型、farget模式选择IP类型,这里提供的端口应该是后端服务ec2实例的端口,即容器端口映射的外部端口,alb的80端口可能会转发到该target group,监控检查是lb周期性发送数据到tg检查其状态,例如http协议80端口

Asg与tg等同,只是侧重不同的方面,都是对ec2实例集合的封装,lb路由到tg本质上路由到tg注册实例上,

创建asg时,涉及到启动模板定义的镜像等信息,网络设置,实例类型可以覆盖启动模板中的设置,还要选择lb或者新创建lb(先创建lb涉及到默认路由tg信息),设置扩展策略

lb要创建到公网子网中,不同端口路由到不同tg,或者不同路径路由到不同tg

端口问题:alb 80--> tg(动态端口,因为容器服务端口采用动态端口映射,例如0),根据命名管理找到对应的容器端口,

三个端口要搞清楚,容器端口,production-port这个是alb对外暴露端口

新版本:1、TaskDefinition定义任务时间,只能设置容器端口,其中对应的主机端口为0,即采用动态映射;2、定义服务过程,没有服务发现功能,可以用旧版本定义该功能,然后再新版本看这个服务,对照出区别

对照firelens-sample:7任务在日志采集部分定义,新旧版本

alb-external.yml这个文件执行看看alb和tg之间关系

任务定义时采用动态映射,默认或者bridge两种模式,一台ec2实例可以启动多个容器实例,分别对应不同端口;服务定义时可以采用服务发现功能,把任务提供的服务对外提供为服务发现名称;

Service服务创建过程:

lb部分设置对应关系

80端口通过alb转发到tg 80 端口(tg80端口也是alb监控检查端口),采用动态映射到容器是8000端口。 farget模式容易理解,因为每个容器都有ip和端口,一一对应。同样思路来记忆ec2模式,采用动态映射把容器端口映射到ec2不同端口,这些端口再映射到tg80端口;

Autoscaling部分设置task   ec2和farget的伸缩策略

服务发现部分设置

  1. 创建tg,instance和ip两种类型,instance类型针对cp和ec2,ip类型针对farget,不创建的话系统会自动创建tg;
  2. 建立alb可以关联对应tg,端口对应或者路径对应tg,在service中可以设置对应关系,
  3. 创建启动模板,有注意点
  4. 创建asg,asg关联启动模板和目标组
  5. Cloudwatch Agent:

  6. https://blog.csdn.net/ya_shy/category_11214935.html

  7. alb 443https设置   测试https转发到tg

    https://blog.csdn.net/qq1010885678/article/details/48785505

    https://blog.csdn.net/kozazyh/article/details/89913034

    https://repost.aws/zh-Hans/knowledge-center/elb-redirect-http-to-https-using-alb

rds
https://blog.csdn.net/william_m999/article/details/94445187 
yum源常用操作
https://blog.csdn.net/focus_lyh/article/details/109402098
vpc
https://www.jianshu.com/p/83c72238ed91

https://aws.amazon.com/cn/blogs/china/easy-aws-fargate-container-log-processing-with-aws-firelens/
https://aws.amazon.com/cn/blogs/china/scheme-of-using-fluent-bit-in-eks-to-collect-application-logs-and-save-them-in-s3/
yum源常用操作
https://blog.csdn.net/focus_lyh/article/details/109402098

CP配置时不需要设置伸缩策略,系统会默认添加。

 CP创建过程会涉及到asg创建,在创建asg时可以复用创建ec2类型集群的启动配置,但是要设置启用保护功能,如下图所示:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值