Docker ne peut pas isoler "la lecture et l'écriture des E/S du disque dur", mais il peut isoler le système de fichiers, le réseau (réseau), la communication inter-processus, les utilisateurs et les groupes d'utilisateurs pour les autorisations, le PID au sein du processus et le PID de l'hôte. , Le nom d'hôte et le nom de domaine sont isolés.
L'environnement d'exploitation de ce tutoriel : système linux5.9.8, version docker-1.13.1, ordinateur Dell G3.
Docker peut contrôler de nombreuses ressources, mais actuellement il n'est pas possible d'isoler les ressources de « lecture et écriture des E/S du disque dur ».
Les E/S du disque dur font référence à l'entrée et à la sortie du disque dur (abréviations d'Entrée et Sortie). Il s'agit d'émettre des instructions pour lire le contenu d'un certain secteur à partir du disque. La commande informe généralement le disque de la position du secteur de départ, puis donne le nombre de secteurs consécutifs qu'il faut lire dans ce secteur initial, et indique également si l'action est une lecture ou une écriture.
Pour les ressources d'E/S disque, les paramètres à prendre en compte sont la capacité et la vitesse de lecture et d'écriture, les restrictions de disque sur les conteneurs doivent donc également être basées sur ces deux dimensions. Actuellement, Docker prend en charge la limitation de la vitesse de lecture et d'écriture du disque, mais il n'existe aucun moyen de limiter la capacité du disque que le conteneur peut utiliser (une fois le disque monté dans le conteneur, le conteneur peut utiliser toute la capacité du disque). .
Alors, quelles ressources Docker peut-il isoler ?
Docker implémente l'isolation des ressources via l'espace de noms, la limitation des ressources via les groupes de contrôle et des opérations de fichiers efficaces via la *copie sur écriture*.
Que peut-on isoler par espace de noms ? Pour éviter qu'un conteneur n'interfère avec d'autres conteneurs, il doit pouvoir :
Le système de fichiers doit être isolé
Le réseau doit également être isolé
La communication entre les processus doit également être isolée
Concernant les autorisations, les utilisateurs et les groupes d'utilisateurs doivent également être isolés
Le PID au sein du processus doit également être isolé du PID dans l'hôte
Le conteneur doit également avoir son propre nom d'hôte
Avec l'isolation ci-dessus, nous pensons qu'un conteneur peut être isolé de l'hôte et des autres conteneurs.
"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!