コンテナとコンテナエコシステムの概要

1.コンテナとコンテナ技術プラットフォーム技術

(1)コンテナ技術:
(1.1)コンテナコア知識:何を、なぜ、どのように(アーキテクチャ、ミラーリング、コンテナ、ネットワーク、ストレージ)を行う;
(1.2)コンテナ高度な知識:マルチホスト、ネットワークコンテナ、データ管理、ログ管理、セキュリティ。
(2)コンテナプラットフォーム技術:
(2.1)コンテナオーケストレーションエンジン:ドッカー群発、Kubernetes、mesos +マラソン;
(2.2)コンテナ管理プラットフォームの:ランチャー、コンテナ船;
(2.3)コンテナのPaaS(上のプラットフォームとして-A-サービス: サービスとしてのプラットフォーム):DEIS、フリン、Dokku。
技術とインターネット技術のコンテナ船-次のように心がある:
技術とインターネット技術コンテナ船 - マインドマップ
図の生態系の心のコンテナ:
容器生态系统思维导图

1.1コンテナエコシステムの概要

1.1.1コンテナのコア技術:

容器核心技术是指能让Container(容器)在host(集群、主机)上运行起来的那些技术。
(1)容器规范:
OCI(runtime spec+image format spec)
(2)容器runtime:
runtime是容器真正运行的地方。需要跟操作系统的kernel紧密协作,为容器提供运行环境。
java程序类似容器,JVM类似runtime,JVM为java提供运行环境,容器只有在runtime才能运行
主流的容器runtime:lxc、runc、rkt。
(3)容器管理工具:
对内与runtime交互,对外为用户提供interface(界面)。
常用的容器管理工具:
lxd(是lxc对应的管理工具);
runc的管理工具是docker engine。docker engine包括后台deamon和cli两部分。通常说的Docker,就是指docker engine;
rkt的管理工具是rkt cli。
(4)容器定义工具:
容器定义工具:允许用户定义容器的内容和属性。这样容器就能够被保存、共享和重建。
常用的容器定义工具:
docker image:是docker容器的模板,runtime一句docker image创建容器;
dockerfile:是包含若干命令的文本文件,可以通过这些命令创建出docker image;
ACI(App Container Image):与docker image类似,不过它是由CoreOS开发的rkt容器的image格式。
(5)Registries:容器是通过image创建的,需要有一个仓库来统一存放image,这个仓库就叫做Registry。
Docker Registry:企业可以用Docker Registry构建私有的Registry;
Docker Hub:是docker为公众提供的托管registry,有很多现成的image;
Quay.io:也是一个公共托管registry。
(6)容器OS:是专门运行容器的操作系统。
常用:coreos、atomic、ubuntu core。

1.1.2 容器平台技术:

(1)容器编排引擎
要干的工作:用高效的方法来管理容器集群。
常用容器编排引擎:
docker swarm:是Docker开发的容器编排引擎;
kubernetes:是Google领导开发的开源容器编排引擎,同时支持Docker和CoreOS容器;
mesos:是一个通用的集群资源调度平台,mesos与marathon一起提供容器编排引擎功能。
(2)容器管理平台
是架构在容器编排引擎之上的一个更通用的平台。
通常容器管理平台支持多种编排引擎,抽象了编排引擎的底层实现细节。
典型代表:Rancher、ContainerShip。
(3)基于容器的PaaS
PaaS即(Platform-as-a-Service:平台即服务。
基于容器的PaaS为微服务应用开发人员和公司提供了开发、部署和管理应用的平台,使用户不必关心底层基础设施而专注于应用的开发。
开源容器PaaS的代表:Deis、Flynn、Dokku。

1.1.3 容器支持技术:

(1)容器ネットワーク
ドッカーネットワーク:ドッカーネイティブネットワークソリューションである
フランネル:サードパーティオープンソース溶液;
織り:サードパーティオープンソース溶液;
キャリコ:サードパーティのオープンソースソリューション。
(2)サービスディスカバリ
動的変化は、マイクロサービスアプリケーションの主要な特徴です。ときに負荷が増加すると、クラスタは自動的に新しいコンテナを作成し、負荷が減少、過剰な容器が破壊されます。
コンテナは、ホストに合わせて異なるホストのリソース使用状況に移行します。
サービス検出のための典型的な解決策:etcd、領事、飼育係。
(3)監視
ドッカーPS /トップ/統計:監視ツールドッカーネイティブコマンドラインであり、
ドッカーは、API統計:HTTPを介して容器の状態情報を要求することができる。
sysdig:プログラムを監視開放容器;
cAdvisor / Heapster:開放容器モニタリングプログラム;
織り範囲:オープンソースのコンテナ監視プログラム。
(4)データ管理
コンテナは、多くの場合、異なるホスト間で移行しています。
どのように移行、能力レックス-Rayのデータ管理ツールのこのタイプを生きることができ、データの永続性を確保するために。
(5)管理ログ
ログツールを2つの種類があります。
ドッカーは、ログに記録します。ドッカーは、ネイティブのロギング機能です。
logspout:ログルーティング機能を提供し、あなたが別のコンテナのログを収集し、転送処理のための他のツールにすることができます。
(6)セキュリティ
OpenSCAP:コンテナ・セキュリティツール。コンテナの画像をスキャンすることができ、潜在的な脆弱性を識別します。

おすすめ

転載: www.cnblogs.com/moon3/p/12191188.html