CKA/CKAD应试教程:从Docker到Kubernetes完全攻略
定 价:99 元
《CKA/CKAD应试教程:从Docker到Kubernetes完全攻略》系统地介绍了Docker和Kubernetes的相关知识,可以帮助读者快速了解并熟练配置Kubernetes。《CKA/CKAD应试教程:从Docker到Kubernetes完全攻略》共分为16章。首先介绍了Docker基础和Docker进阶;然后介绍了Kubernetes的基础操作,包括部署Kubernetes集群、升级Kubernetes、创建及管理Pod等;之后重点介绍了存储管理、密码管理、Deployment、DaemonSet及其他控制器、探针、Job、服务管理、网络管理、包管理Helm3及安全管理等;最后通过一个综合实验DevOps,全面复习《CKA/CKAD应试教程:从Docker到Kubernetes完全攻略》所有内容。《CKA/CKAD应试教程:从Docker到Kubernetes完全攻略》适合想系统学习Docker和Kubernetes,以及希望通过CKA和CKAD考试的读者学习使用。此外,《CKA/CKAD应试教程:从Docker到Kubernetes完全攻略》中的许多案例还可以直接应用于生产环境。
(1)官方推荐:Linux Foundation开源软件学园官方审校并作序推荐。(2)步骤详细:所有知识点都有详细操作步骤及实现结果,易学易懂。(3)考点剖析:涵盖CKA/CKAD考试全部核心要点、难点,轻松过关。(4)实战模拟:模拟考场 上机实操并配套模拟考题和答案解析,考点理解更透彻。(5)超值资源:免费赠送海量相关学习资料,以及作者多年一线行业经验文档。
这几年Kubernetes技术迅速发展,成为现在最火热的IT技术之一,阿里云、腾讯云、Azure等公有云厂商提供的都是基于Kubernetes的容器服务。CNCF(Cloud Native Computing Foundation,云原生计算基金会)作为孵化出Kubernetes的官方机构,顺势推出了自己的基于Kubernetes的认证:CKA和CKAD。CKA全称为Certified Kubernetes Administrator(Kubernetes管理员认证),是CNCF推出的第一个官方认证,其内容主要为Kubernetes最常用的知识点,包括安装及更新Kubernetes集群、Pod的创建及管理、各种控制器的使用、密码管理、存储管理等。CKAD全称为Certified Kubernetes Application Developer(Kubernetes应用程序开发者认证),侧重于在Kubernetes环境里部署与设计应用程序。不管是CKA还是CKAD,都侧重于实战,考试题都是上机实操题,没有任何选择题,所以要想通过CKA/CKAD考试,除了要对Kubernetes的各个知识点有深入的了解,还要经过大量的练习。如果想系统学习Kubernetes,参加CKA培训并通过CKA考试是最佳途径,而通过CKA考试,不管是对企业还是对个人都大有好处。对企业:Kubernetes认证服务供应商需要有3名通过CKA考试的人员。对个人:学习之后最好能有一个检测自己学习成果的指标,所以通过认证考试才是最好的方法。一来可以系统地学习,二来可以通过证书向企业证明自己的实力。 * 为什么写这本书现在CKA/CKAD认证越发火热,参加考试的人员日益增多,但市面上专门针对CKA/CKAD考试的辅导教材较少,写本书的主要目的就是来填补市场空缺,帮助参加CKA/CKAD考试的人员顺利通过认证。写本书的另一个原因是,笔者做了很多年的培训业务,发现不管是在线培训还是线下的企业内训,存在的一个问题就是学员在课堂上听懂了,但是在课后自己练习的时候,总是出现这样或那样的问题,并且学员记的笔记可能还会出现一些疏漏,这样不仅耽误了大量的时间,学习效率还不高。基于此,笔者总结、整理了在课堂上讲授的知识点,并详细列出了操作步骤,学员只要严格按照书中的步骤操作,就可以达到很好的学习效果。 * 这本书的特点是什么本书基于Kubernetes v1.21.1版本,不仅包括CKA/CKAD考试的所有考点,也包括了Kubernetes其他最常见的知识。章节的顺序已经过精心排列,内容由浅入深,每章的实验只会用到已经讲过的知识点,不会用到后面讲的知识,所以只要按照章节顺序依次往后做即可。本书的具体特点如下。(1)步骤详细,跟着步骤逐步操作便能快速掌握全部知识点,简单、易学。(2)内容全面,详细介绍了Kubernetes相关的基础和核心知识,是一本不可多得的系统学习Kubernetes的实战型教材。(3)配有模拟考题,帮助读者检验学习效果,遇到问题,可随时查看配套资源的详细答案解析。 * 本书的读者对象本书专门为打算通过CKA/CKAD考试的人士编写,是成功通过CKA/CKAD考试的绝佳参考书,还适用于以下读者。(1)想系统学习Kubernetes的人员。(2)从事Kubernetes工作的相关人员。 * 赠送资源为了使读者能够顺利通过CKA/CKAD考试,本书赠送安装Kubernetes高可用集群、使用Descheduler平衡Pod在Worker上的分布、使用Kuboard创建Deployment、Kubernetes集群证书过期后如何续期,以及Etcd的备份和恢复等笔者根据多年经验总结出的相关文档。另外,还赠送本书的模拟考题答案。以上资源已上传到百度网盘,供读者下载。请读者关注封底博雅读书社微信公众号,输入图书77页的资源下载码,获取下载地址及密码。 * 创作者说本书由段超飞编著。在本书的编写过程中,笔者竭尽所能呈现最好、最全的Kubernetes实用知识,但仍难免有疏漏和不妥之处,敬请广大读者指正。
段超飞----------------------------段超飞,老段工作室(网站https://www.rhce.cc)讲师,Linux Foundation授权导师(LFAI)、云计算资深培训讲师,获取过RHCA认证、CKS认证等。拥有10年以上的教学培训经历,为近30家大型企业提供过Kubernetes、Linux培训服务,出版著作《RHCSA/RHCE8红帽Linux认证学习教程》。
第1章 Docker基础11.1 容器介绍及环境准备11.2 安装并配置Docker(在vms100上)31.2.1 安装docker-ce41.2.2 解决镜像下载慢的问题41.2.3 了解Docker的架构51.3 安装并配置Containerd(在vms101上)61.3.1 安装Containerd71.3.2 安装Containerd客户端nerdctl81.4 镜像的管理101.4.1 镜像的命名111.4.2 对镜像重新做标签111.4.3 删除镜像121.4.4 查看镜像的层结构131.4.5 导出镜像131.4.6 导入镜像151.5 容器的管理161.5.1 创建容器161.5.2 容器的生命周期171.5.3 创建临时容器201.5.4 指定容器里运行的命令201.5.5 创建容器时使用变量211.5.6 把容器的端口映射到物理机上221.6 实战练习创建MySQL容器241.7 管理容器的命令251.7.1 在容器里执行指定的命令251.7.2 物理机和容器互相拷贝文件261.7.3 关闭、启动、重启容器271.7.4 查看容器里的输出281.8 数据卷的使用291.9 Docker网络321.9.1 了解Docker网络321.9.2 创建Docker网络331.10 容器互联351.10.1 方法1:通过容器IP的方式访问351.10.2 方法2:使用link的方式36模拟考题38第2章 Docker进阶402.1 自定义镜像402.2 使用Harbor搭建私有仓库482.2.1 安装Compose492.2.2 安装Harbor492.2.3 推送镜像532.2.4 拉取镜像55模拟考题57第3章 部署Kubernetes集群583.1 Kubernetes架构及组件介绍583.2 安装Kubernetes集群613.2.1 实验拓扑图及环境613.2.2 实验准备623.2.3 在Master上执行初始化643.2.4 配置Worker加入集群653.2.5 安装Calico网络663.3 安装后的设置683.3.1 删除节点及重新加入693.3.2 常见的一些命令703.4 设置metrics-server监控Pod及节点的负载713.5 命名空间namespace723.6 管理命名空间733.7 Etcd管理753.7.1 单节点Etcd基本配置753.7.2 多节点Etcd配置783.7.3 连接到Kubernetes里的Etcd82模拟考题83第4章 升级Kubernetes844.1 升级步骤844.2 升级第一台Master854.2.1 升级Kubeadm864.2.2 升级Kubernetes集群里Master上的各个组件884.2.3 升级Master上的Kubelet和Kubectl884.3 升级Worker89模拟考题91第5章 创建及管理Pod925.1 创建及删除Pod935.1.1 创建Pod945.1.2 删除Pod955.1.3 生成YAML文件创建Pod955.1.4 在Pod里使用变量1035.1.5 在Pod里指定容器的端口1045.1.6 Pod里的安全上下文1055.2 Pod的基本操作1085.3 了解Pod的生命周期,优雅地关闭Pod1115.3.1 Pod的延期删除1115.3.2 Pod Hook(钩子)1135.4 初始化Pod1155.4.1 了解初始化容器1155.4.2 初始化容器的例子1165.5 静态Pod1185.6 手动指定Pod的运行位置1205.6.1 给节点设置标签1205.6.2 创建在特定节点上运行的Pod1235.6.3 Annotations设置1255.7 节点的cordon与drain1275.7.1 节点的cordon1275.7.2 节点的drain1305.8 节点Taint及Pod的Toleration1325.8.1 给节点设置及删除Taint1335.8.2 为Pod配置Toleration136模拟考题140第6章 存储管理1426.1 emptyDir1436.2 hostPath1476.3 NFS存储1496.4 持久性存储1526.4.1 PV1536.4.2 PVC1556.4.3 storageClassName1586.4.4 使用持久性存储1616.4.5 PV回收策略1636.5 动态卷供应1636.5.1 了解制备器和存储类1636.5.2 利用NFS创建动态卷供应1646.5.3 部署NFS制备器1656.5.4 部署StorageClass166模拟考题169第7章 密码管理1707.1 Secret1707.1.1 创建Secret1717.1.2 使用Secret1777.2 ConfigMap1827.2.1 创建ConfigMap1827.2.2 使用ConfigMap185模拟考题188第8章 Deployment1898.1 创建和删除Deployment1908.1.1 通过YAML文件的方式创建Deployment1908.1.2 Deployment健壮性测试1928.2 修改Deployment副本数1938.2.1 通过命令行的方式修改1938.2.2 通过编辑Deployment的方式修改1948.2.3 通过修改YAML文件的方式修改1958.3 水平自动更新HPA1968.3.1 配置HPA1978.3.2 测试HPA1988.4 Deployment镜像的升级及回滚2018.4.1 镜像的升级2018.4.2 镜像的回滚2048.5 滚动升级205模拟考题206第9章 DaemonSet及其他控制器2079.1 创建及删除DaemonSet2089.2 指定Pod所在位置2109.3 其他控制器ReplicationController2119.4 其他控制器ReplicaSet2139.5 各控制器之间YAML文件的对比215模拟考题216第10章 探针21710.1 Liveness Probe21710.1.1 command探测方式21810.1.2 httpGet探测方式22110.1.3 tcpSocket探测方式22210.2 Readiness Probe224模拟考题228第11章 Job22911.1 Job22911.1.1 创建Job23011.1.2 在Job中指定参数23211.2 CronJob237模拟考题241第12章 服务管理24212.1 服务的基本管理24312.1.1 环境准备24312.1.2 创建SVC24412.1.3 删除SVC24612.1.4 验证SVC的负载均衡功能24712.1.5 通过YAML文件的方式创建SVC24812.2 服务发现24912.2.1 环境准备25012.2.2 通过ClusterIP的方式访问25112.2.3 通过变量的方式访问25312.2.4 通过DNS的方式访问25512.3 服务发布25812.3.1 NodePort25812.3.2 LoadBalancer25912.3.3 Ingress262模拟考题267第13章 网络管理26813.1 实验准备26813.2 创建ingress类型的网络策略27213.2.1 允许特定标签的Pod访问27213.2.2 允许特定网段的客户端访问27613.2.3 允许特定命名空间里的Pod访问28013.2.4 允许特定命名空间里特定的Pod访问28213.3 创建egress类型的网络策略28413.4 默认的策略288模拟考题289第14章 包管理Helm329114.1 安装Helm29114.2 仓库管理29314.3 部署一个简单的MySQL应用29414.4 搭建私有源29814.5 实战演示301第15章 安全管理30915.1 创建Kubeconfig文件31215.2 Kubernetes的授权31415.2.1 Role和RoleBinding31515.2.2 ClusterRole和ClusterRoleBinding32615.2.3 ServiceAccount32915.3 安装Dashboard33315.4 资源限制33715.4.1 通过Pod里的resources字段来限制33715.4.2 通过LimitRange来限制34015.4.3 通过ResourceQuota来限制343模拟考题344第16章 DevOps34516.1 实验拓扑34616.2 准备vms33并搭建仓库34616.3 安装GitLab并配置34716.4 安装Jenkins35216.5 安装Docker插件35616.6 Jenkins的安全设置35816.7 拷贝Kubeconfig文件35916.8 创建项目36116.9 配置GitLab和Jenkins的联动36416.10 验证CI/CD365