感谢您发送咨询!我们的团队成员将很快与您联系。
感谢您发送预订!我们的团队成员将很快与您联系。
课程大纲
第1天 – 容器和镜像管理
容器平台简介
- 传统应用部署与基于容器的部署对比
- 容器与虚拟机
- 容器运行时和容器引擎
- Docker、Kubernetes和OpenShift的角色
- 常见的容器平台架构
- 开发、测试和生产工作流
使用容器
- 运行和管理容器
- 容器生命周期
- 启动、停止和删除容器
- 在容器内执行命令
- 环境变量
- 端口映射
- 容器日志
- 资源使用和进程检查
构建容器镜像
- 镜像结构和层
- 创建Dockerfiles和Containerfiles
- 选择基础镜像
- 添加应用依赖
- 配置入口点和命令
- 镜像缓存
- 减少镜像大小
- 构建可复现的镜像
容器注册表
- 公共和私有注册表
- 镜像标记和版本控制
- 推送和拉取镜像
- 镜像认证
- 镜像保留和清理
- 基本的镜像安全考虑
容器网络和存储
- 容器网络概念
- 桥接网络
- 端口暴露
- 容器间通信
- 绑定挂载和卷
- 持久化容器数据
- 备份考虑
动手练习
- 运行和检查容器
- 构建应用镜像
- 配置端口和环境变量
- 将镜像发布到注册表
- 在容器外存储持久数据
第2天 – Kubernetes架构和工作负载
Kubernetes基础
- 容器编排的目的
- Kubernetes架构
- 控制平面组件
- 工作节点
- API服务器
- 调度器
- 控制器
- 集群状态和期望状态
- 使用kubectl与集群通信
Kubernetes资源
- Pods
- ReplicaSets
- Deployments
- 命名空间
- 标签和注解
- 选择器
- 声明式资源定义
- YAML清单
部署应用
- 创建和管理Deployments
- 扩展工作负载
- 更新容器镜像
- 滚动更新
- 回滚
- 部署历史
- 重启工作负载
- 管理应用副本
应用配置
- ConfigMaps
- Secrets
- 环境变量
- 配置文件
- 分离应用代码与配置
- 管理环境特定设置
资源管理
- CPU和内存请求
- CPU和内存限制
- 资源配额
- 限制范围
- 调度影响
- 诊断资源相关故障
动手练习
- 部署容器化应用
- 创建和更新Kubernetes清单
- 扩展应用
- 执行滚动更新和回滚
- 使用ConfigMaps和Secrets配置应用
- 应用资源请求和限制
第3天 – Kubernetes网络、存储和安全
Kubernetes网络
- 集群网络模型
- Pod间通信
- 服务发现
- 集群内DNS
- ClusterIP服务
- NodePort服务
- LoadBalancer服务
- Ingress概念
- 应用暴露模式
网络策略
- 控制工作负载间流量
- Ingress和Egress规则
- 基于命名空间的流量控制
- 测试网络连接
- 排查服务通信问题
持久存储
- 临时和持久存储
- 卷
- PersistentVolumes
- PersistentVolumeClaims
- StorageClasses
- 动态配置
- 访问模式
- 回收策略
- 有状态应用的存储
Kubernetes访问控制
- 认证和授权概念
- 基于角色的访问控制
- Roles和ClusterRoles
- RoleBindings和ClusterRoleBindings
- 服务账户
- 最小权限访问
- 检查有效权限
工作负载安全
- 安全上下文
- 以非root用户运行容器
- Linux能力
- 只读文件系统
- 密钥处理
- 镜像来源
- 常见配置风险
动手练习
- 使用Kubernetes服务暴露应用
- 配置Ingress
- 使用网络策略限制流量
- 配置持久存储
- 配置RBAC权限
- 以适当的安全上下文运行工作负载
第4天 – 使用OpenShift环境
OpenShift简介
- OpenShift作为基于Kubernetes的应用平台
- OpenShift环境中的Kubernetes资源
- OpenShift集群架构
- 项目和命名空间
- 平台用户和服务账户
- 使用Web控制台
- 使用OpenShift CLI
管理项目和访问
- 创建和管理项目
- 分配用户权限
- 项目级角色
- 管理访问
- 资源配额
- 限制范围
- 服务账户
- 审查项目资源
部署应用
- 部署容器镜像
- 创建应用工作负载
- 管理部署
- 扩展应用
- 更新应用版本
- 回滚
- 管理应用配置
- 使用密钥
应用暴露
- OpenShift中的服务
- 路由
- TLS概念
- 内部和外部应用访问
- 主机名和证书
- 诊断路由和服务问题
OpenShift中的存储
- 持久卷声明
- StorageClasses
- 将存储附加到工作负载
- 有状态工作负载
- 存储访问权限
- 排查卷挂载问题
调度和节点管理
- 标签和选择器
- 节点选择器
- 污点和容忍
- 亲和性和反亲和性概念
- 工作负载放置
- 隔离和排空节点
- 节点维护考虑
动手练习
- 访问OpenShift环境
- 创建和配置项目
- 部署并暴露应用
- 配置用户和服务账户访问
- 附加持久存储
- 扩展和更新运行中的工作负载
第5天 – 操作、监控和故障排除
平台监控
- 监控集群和应用健康状况
- 资源指标
- 节点健康状况
- 工作负载状态
- 容量和资源利用率
- 识别性能瓶颈
日志和事件
- 容器日志
- Pod日志
- 先前的容器日志
- Kubernetes事件
- 应用和平台消息
- 过滤和解释操作数据
健康检查
- 启动探针
- 就绪探针
- 存活探针
- 设计有用的健康端点
- 诊断探针失败
- 防止不必要的应用重启
排查工作负载问题
- Pending pods
- 镜像拉取失败
- 崩溃循环
- 错误配置的环境变量
- 挂载失败
- 资源不足
- 权限错误
- 服务和路由连接问题
- DNS问题
- 应用启动失败
操作安全
- 审查权限
- 服务账户使用
- 安全处理凭据
- 镜像安全实践
- 网络隔离
- 平台访问审计
- 应用最小权限原则
维护和生命周期管理
- 例行平台检查
- 节点维护
- 应用备份考虑
- 配置备份
- 更新计划
- 应变管理
- 测试更新
- 回滚计划
- 灾难恢复概念
最终实践工作坊
学员完成一个端到端的操作场景:
- 构建并标记容器镜像。
- 将镜像发布到注册表。
- 将应用部署到Kubernetes或OpenShift。
- 配置应用设置和凭据。
- 暴露应用。
- 附加持久存储。
- 配置访问权限。
- 添加健康检查。
- 扩展和更新应用。
- 诊断并解决引入的故障。
课程形式
- 互动讲座和技术讨论。
- 讲师演示。
- 大量动手练习。
- 基于场景的管理和故障排除工作坊。
- 在容器、Kubernetes和OpenShift环境中的实践操作。
课程定制选项
- 课程可根据学员现有的基础设施、云提供商和容器工具进行调整。
- Docker、Kubernetes和OpenShift主题的平衡可根据团队经验调整。
- 实践练习可根据组织的应用、部署流程和操作需求定制。
商标声明
OpenShift是Red Hat, Inc.的商标。本独立开发的培训与Red Hat无关,未经其认可或授权。
要求
学员应具备:
- 使用Linux命令行的经验。
- 基本的系统管理或DevOps知识。
- 对网络概念的一般理解。
- 熟悉软件部署流程。
有Docker、Kubernetes或OpenShift经验者更佳,但非必需。
35 小时
客户评论 (7)
Reda的解释让很多概念变得更容易理解
Eric Van Wyk
课程 - Docker, Kubernetes and OpenShift 3 for Administrators
机器翻译
实验环节是最棒的,非常实用且提供了动手实践的机会。我个人认为,这是真正理解课程内容并应用所学概念的最有效方式。
Hishaam Johnstone
课程 - Docker, Kubernetes and OpenShift 3 for Administrators
机器翻译
我喜欢他们愿意帮助和进一步解释的不确定性
Letlotlo Miffi
课程 - Docker, Kubernetes and OpenShift 3 for Administrators
机器翻译
Adriano对该主题进行了深入研究,这是我最喜欢的风格,即:少关注命令,多关注其背后的机制。讨论的场景通过实际例子得到了很好的支持,这有助于理解所呈现的内容。
Mariusz BANASZCZYK - Sopra Steria
课程 - Docker, Kubernetes and OpenShift for Administrators
机器翻译
深入了解Adriano,解释基础概念
Tomasz Szalankiewicz - LPP SA
课程 - Docker, Kubernetes and OpenShift for Administrators
机器翻译
我总体上喜欢这位演讲者。
Josif Kovacevic - ANZ
课程 - Docker, Kubernetes and OpenShift for Administrators
机器翻译
Adrian clearly knows and enjoys this technology.
Tom Edginton - National Oceanography Centre
课程 - Docker, Kubernetes and OpenShift for Administrators
机器翻译