云原生技术学习

Posted 云服务圈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了云原生技术学习相关的知识,希望对你有一定的参考价值。

云原生技术学习

云原生技术学习

云原生技术学习


云原生技术学习


云原生技术学习

云原生技术学习

云原生技术学习

云原生技术学习

ASK与ACK集群的对比

云原生技术学习

虚拟节点

ASK集群中基于虚拟节点创建Pod。虚拟节点实现了Kubernetes与弹性容器实例ECI的无缝连接,让Kubernetes集群获得极大的弹性能力,而不必关心底层计算资源容量。

Pod配置

Pod基于弹性容器实例ECI创建,其支持原生的Kubernetes Pod功能,包括启动多个容器、设置环境变量、设置RestartPolicy、设置健康检查命令和挂载volumes、preStop等。同时支持执行命令kubectl logs访问容器日志和执行kubectl exec进入容器。

应用负载管理

  • 支持Deployment、StatefulSet、Job/CronJob、Pod、CRD等原生Kubernetes负载类型。

  • 不支持DaemonSet:Serverless集群中不支持节点相关的功能。

  • 网络管理

  • 集群中的ECI Pod默认使用Host网络模式,占用交换机VSwitch的一个弹性网卡ENI资源,与VPC内的ECS、RDS互联互通。

  • Service

    • 支持创建LoadBalancer类型Service。

    • 不支持NodePort类型Service:Serverless集群中不支持节点相关的功能。



服务发现

如果您的集群内部应用需要Service的服务发现功能,请在创建集群时开启Privatezone


日志管理

在ASK集群中无需部署logtail daemonset即可收集Pod的stdout和文件输出日志

apiVersion: apps/v1kind: Deploymentmetadata: labels: app: alpine name: alpinespec: replicas: 2 selector: matchLabels: app: alpine template: metadata: labels: app: alpine spec: containers: - image: alpine imagePullPolicy: Always args: - ping - 127.0.0.1 name: alpine env: ######### 配置 环境变量 ########### ######### 配置 project,如果使用k8s集群默认的project可以不填 ########### - name: aliyun_logs_test-stdout_project value: k8s-log-xxx - name: aliyun_logs_test-file_project value: k8s-log-xxx ######### 配置 机器组,如果使用k8s集群默认的project下的默认机器组可以不填 ########### - name: aliyun_logs_test-stdout_machinegroup value: k8s-group-app-alpine - name: aliyun_logs_test-file_machinegroup value: k8s-group-app-alpine ######### 设置标准输出和错误输出的logstore test-stdout########### - name: aliyun_logs_test-stdout value: stdout ######### 将/log/*.log目录下的日志收集到logstore test-file########### ######### 注:除了标准输出和错误输出,其他的自定义收集目录必须挂载emptyDirVolume,否则无法收集########### ######### 注:比如/log/目录就需要挂载emptyDirVolume,如下########### - name: aliyun_logs_test-file value: /log/*.log ######### 日志保留时间,只对单个logstore生效 ########### - name: aliyun_logs_test-stdout_ttl value: "7" ######### 日志分区数,只对单个logstore生效 ########### - name: aliyun_logs_test-stdout_shard value: "2" ################################# ######### 配置vulume mount,该volume就是为了上面的自定义的日志收集目录####### volumeMounts: - name: volume-sls mountPath: /log volumes: - name: volume-sls emptyDir: {}

Knative

社区Knative作为一款云原生、跨平台的Serverless编排引擎,您可以直接把社区Knative部署在ASK集群上,但这种方式需要付出额外的成本。ASK集成了Knative,您只需要拥有一个ASK集群并开通Knative功能,就可以基于Knative API使用云的能力。并且无需为Knative Controller付出任何成本。



Knative Gateway

社区Knative默认支持Istio、Gloo、Contour、Kourier和Ambassador等多种Gateway实现方案。在这些实现方案中Istio使用频率最高。因为Istio除了可以充当Gateway的角色还能做为ServiceMesh服务使用。Serverless服务需要有Gateway实例常驻运行,而为了保证高可用至少要有两个实例互为备份。其次这些Gateway的Controller也需要常驻运行,这些常驻实例的IaaS费用和运维都是业务需要支付的成本。

为了极致的Serverless体验,通过阿里云SLB实现了Knative Gateway。Knative Gateway具备所有需要的功能并且属于云产品级别的支撑。不需要常驻资源,不仅节省了您的IaaS成本还省去了很多运维负担。


https://help.aliyun.com/document_detail/86366.html?spm=a2c4g.11186623.6.1170.64af13c6t5ZCgk

https://help.aliyun.com/document_detail/131598.htm?spm=a2c4g.11186623.2.23.75b06f3dOhNMHP#task-1830627
https://help.aliyun.com/document_detail/184831.html?spm=a2c4g.11186623.6.1291.40d8200ansUcMu


以上是关于云原生技术学习的主要内容,如果未能解决你的问题,请参考以下文章

如何高效学习 Kubernetes 知识图谱?

如何高效学习 Kubernetes 知识图谱?

如何高效学习 Kubernetes 知识图谱?

云原生技术架构白皮书(附下载)

云原生时代一站式DevOps平台--阿里云效

云原生时代一站式DevOps平台--阿里云效