- 运行时(Runtime)
• 容器运行时:Docker Engine、containerd、CRI-O、runc、Kata、gVisor
• 容器镜像:OCI/Docker Image、Wasm(WebAssembly)
• 网络:CNI 插件(Calico、Cilium、Flannel、Weave)
• 存储:CSI 插件(Rook-Ceph、Longhorn、Portworx、OpenEBS) - 编排与管理(Orchestration & Management)
• 容器编排:Kubernetes、K3s、OpenShift、Rancher、Nomad
• 集群生命周期:kubeadm、kops、Cluster API、TKEStack
• Serverless 容器:Knative、OpenFaaS、Fission、Nuclio
• 多集群/联邦:KubeFed、Submariner、OCM(Open Cluster Management) - 应用定义与开发交付(Application Definition & Delivery)
• 镜像仓库:Harbor、Docker Hub、Quay、ACR、GCR
• 镜像构建:Dockerfile、BuildKit、Buildpacks、Ko、CNB
• 包管理/模板:Helm、Kustomize、Carvel ytt、kpt
• GitOps & CD:Argo CD、Flux CD、Tekton、Jenkins X
• 服务框架:Dapr、Spring Cloud、Quarkus、Micronaut - 服务治理(Service Mesh & API)
• 服务网格:Istio、Linkerd、Kuma、Consul Connect、AWS App Mesh
• API 网关:Envoy Gateway、Kong、APISIX、Nginx Ingress、Contour
• 流量治理:熔断、限流、灰度、A/B、金丝雀发布 - 可观测性(Observability)
• 监控:Prometheus、Thanos、VictoriaMetrics、Grafana
• 日志:Fluent Bit、Fluentd、Loki、ELK/EFK
• 分布式追踪:Jaeger、Zipkin、OpenTelemetry
• 混沌工程:Chaos Mesh、LitmusChaos - 基础设施与工具链(Infrastructure & Tooling)
• 物理/虚拟资源:裸金属、OpenStack、VMware、公有云 IaaS
• 镜像仓库与制品库:Harbor、ChartMuseum、Artifact Hub
• 供应链安全:Cosign(签名)、Falco(运行时威胁检测)、OPA/Gatekeeper(策略)
• 本地开发:Docker Desktop、Rancher Desktop、Podman、Colima、kind、k3d
• CI:GitHub Actions、GitLab CI、Jenkins、Tekton Pipelines
大部分的中间件都可以容器化,比如 tomcat,weblogic,kafka,redis,eureka 之类,但容器平台的特征比较适合无状态可扩展类型的,比较适合于占用资源相对少点的,功能单一的,如果以前部署单体应用的应用服务器 was 或者 weblogic, 本身做得功能比较全,比较重的化,容器化效果不明显。
目前看见的比较多的仍然是一些小的组件或者微服务架构的组件,比如 tomcat, springboot, springcloud, kafka, redis, eureka等等 。
容器化还是比较适合云原生的应用。