您好,欢迎来到微智科技网。
搜索
您的当前位置:首页【云原生】一、基础概念-容器-Kubernets

【云原生】一、基础概念-容器-Kubernets

来源:微智科技网

云原生

云原生历程

云原生技术范畴

云原生与传统部署

云原生关键技术

传统vs微服务vsServerless

Serverless

容器

容器,是一个视图隔离、资源可、文件系统的进程集合,
视图隔离-如能看见部分进程;主机名 等等;
控制资源使用率:如2G内存大小: CPU 使用个数等等

分层复用模式

容器运行

构建镜像


## 容器生命周期
单进程模型

  • Init 进程生命周期 = 容器生命周期
  • 运行期间可运行exec 执行运维操作

数据持久化

  • 于容器的生命周期
  • 数据卷 -docker volume vs bind

容器引擎架构-moby

容器和VM之间的差异

Kubernetes

  • Kubernetes 源于希腊语,意为“舵手”或“飞行员
  • k8s 是通过将8个字母“Kubernete” 替换为8而导出的缩写
  • 工业级容器编排平台

调度

根据容器大小、计算资源、把容器分布到不同机器

自动恢复

机器故障,自动将容器分布到健康的机器上。

水平伸缩

如果黄颜色业务忙碌,自动将黄颜色容器负载均衡到其他机器上。

总架构

Master架构

  • CLI控制端命令
  • API Server:所有组建与其建立连接,用于组建间的消息的传送
  • Controller:控制水平伸缩、恢复的功能
  • Scheduler:调度器,控制容器调度
  • etcd:资源管理存储
  • Node:节点

Node架构

  • Node:包括多个Pod
  • Pod:运行一个或多个容器,最小的调度以及资源单元。由一个或者多个容器组成。定义容器运行的方式Command、环境变量等提供给容器共享的运行环境(网络、进程空间)

Pod一个kubernet架构

Volume

Deployment

Service

Namespace

API

API-Label

实验

安装MinKube

部署命令

常用命令

# 查看状态
minikube status
# 获取node
kubectl get nodes
# 获取deployments
kubectl get deployments
# 实时查看deployments
kubectl get --watch deployments
# 根据deployment.yaml部署
kubectl apply -f deployment.yaml
# 查看已经部署
kubectl describe deployment nginx-deployment
# 删除
kubectl delete deployment nginx-deployment

deployments.yml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 2 # tells deployment to run 2 pods matching the template
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务