linux->kvm->docker->k8s->ECS
TCP->VPC->SLB
熟悉操作系统内核,网络技术;
熟悉docker, k8s, kvm, openstack;
各种工具类:minicube;
KVM
组件架构图:
KVM是内核的模块,QEMU是提供虚拟化的组件,用户操作KVM模块,libvirt提供一整套的API,用于管理KVM虚拟机,其他图形化界面(virt-manager/openstack等)可以通过libvirt管理kvm虚拟机。
kube-virt组件:
问题:不支持多网卡等;
KVM源码分析:
vcpu
KVM初始化,包括体系结构初始化,以及注册设备给到qemu使用
libvirt源码:
Docker源码分析:
docker底层原理是基于linux的namespace和cgroups机制实现。其中namespace用于实现进程的隔离;cgroup用于限制进程对特定资源如cpu的使用。
namespace:可以通过unshare命令创建namespace,相当于在运行的容器中执行 <runtime> exec -it <image> /bin/bash 命令。
cgroup:k8s使用cgroup在pod级别上限制资