zoukankan      html  css  js  c++  java
  • 3.docker基础架构

    docker是一个典型的c/s架构产品。

    dockerd :为客户端提供  RESTFUL API,响应来自客户端的请求, 采用模块化的架构, 通过专门的 Engine 模块来分发管理各 个来自客户端的任务。 可以单独升级; 

    docker-proxy :是 dockerd 的子进程, 当需要进行容器端口映射时, docker-proxy 完成网络映射配置;

    [root@master ~]# ps -ef |grep  [doc]ker-proxy
    root      6550  3875  0 21:26 ?        00:00:00 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 10000 -container-ip 172.17.0.3 -container-port 80
    [root@master ~]# ps -ef |grep  38[75]
    root      3875     1  1 2月19 ?       07:29:54 /usr/bin/dockerd -H fd://
    root      6550  3875  0 21:26 ?        00:00:00 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 10000 -container-ip 172.17.0.3 -container-port 80

    containerd :以前是dockerd 的子进程(在此版本中独立运行), 提 供 gRPC 接口响应来自 dockerd 的请 求,对下管理 runc 镜像和容器环境。 可以单独升级;

    [root@master ~]# pstree
    systemd─┬─NetworkManager─┬─dhclient
            │                └─2*[{NetworkManager}]
            ├─abrt-watch-log
            ├─abrtd
            ├─2*[agetty]
            ├─auditd───{auditd}
            ├─containerd─┬─6*[containerd-shim─┬─pause]
            │            │                    └─10*[{containerd-shim}]]
            │            ├─containerd-shim─┬─etcd───11*[{etcd}]
            │            │                 ├─sh
            │            │                 └─12*[{containerd-shim}]
            │            ├─containerd-shim─┬─kube-apiserver───11*[{kube-apiserver}]
            │            │                 └─11*[{containerd-shim}]
            │            ├─containerd-shim─┬─kube-scheduler───9*[{kube-scheduler}]
            │            │                 └─10*[{containerd-shim}]
            │            ├─containerd-shim─┬─kube-controller───9*[{kube-controller}]
            │            │                 └─10*[{containerd-shim}]
            │            ├─containerd-shim─┬─kube-proxy───8*[{kube-proxy}]
            │            │                 └─10*[{containerd-shim}]
            │            ├─3*[containerd-shim─┬─nginx───nginx]
            │            │                    └─10*[{containerd-shim}]]
            │            ├─containerd-shim─┬─flanneld───12*[{flanneld}]
            │            │                 └─10*[{containerd-shim}]
            │            ├─3*[containerd-shim─┬─pause]
            │            │                    └─9*[{containerd-shim}]]
            │            ├─2*[containerd-shim─┬─coredns───10*[{coredns}]]
            │            │                    └─10*[{containerd-shim}]]
            │            └─30*[{containerd}]
            ├─crond
            ├─dbus-daemon
            ├─dockerd─┬─docker-proxy───6*[{docker-proxy}]
            │         └─15*[{dockerd}]

    containerd-shim:是 containerd 的子进 程,为 runc 容器提供支持,同时作 为容器内进程的根进程。 runc 是从 Docker 公司开源的 libcontainer 项目演化而来

  • 相关阅读:
    【English】20190307
    【Teradata】四舍五入函数
    【Teradata】配置PE和AMP(congfig和reconfig工具、vprocmanager)
    【English】20190306
    【Teradata】数据库初始化(sysinit和dip工具)
    【Teradata】日期类型转换
    Optional常用操作
    Stream学习笔记
    拦截Restful API的三种方式
    maven之可执行jar包
  • 原文地址:https://www.cnblogs.com/leleyao/p/10498295.html
Copyright © 2011-2022 走看看