第一阶段:大数据技术(linux+Hadoop2+Storm+Spark)
Linux
1、 Linux的介绍:Linux的发展历史、Linux和Windows的对比和优势、Linux的常见版本
2、 Linux的安装:VMware Workstation虚拟软件安装过程、CentOS虚拟机安装过程
3、 Linux的常用命令:常用命令的介绍、常用命令的使用和练习
4、 VI、VIM编辑器:VI、VIM编辑器的介绍、VI、VIM扥使用和常用快捷键
5、 Linux用户和组账户管理:用户的管理、组管理
6、 Linux系统文件权限管理:文件权限介绍、文件权限的操作
7、 Linux的RPM软件包管理:RPM包的介绍、RPM安装、卸载等操作
8、Linux网络:Linux网络的介绍、Linux网络的配置和维护
9、Shell编程:Shell的介绍、Shell脚本的编写
10、Linux上常见软件的安装:安装JDK、安装Tomcat、安装Eclipse
Hadoop
1、 Hadoop基础知识:Hadoop产生背景、Hadoop在大数据、云计算中的位置和关系、国内外Hadoop应用案例介绍、国内Hadoop的就业情况分析及课程大纲介绍、分布式系统概述、Hadoop生态圈以及各组成部分的简介、Hadoop为分布式环境搭建、SSH免密码登陆的配置和原理、Hadoop核心MapReduce例子说明
2、 分布式文件系统HDFS:分布式文件系统HDFS简介、HDFS的系统组成介绍、HDFS的组成部分详解、副本存放策略及路由规则、命令行接口、Java接口、Hadoop的RPC机制、HDFS上传下载数据过程和源码分析、客户端与HDFS的数据流讲解
3、 分布式计算模型MapReduce:如何理解map、reduce计算模型、剖析伪分布式下MapReduce作业的执行过程、序列化、MapReduce的类型与格式、MapReduce简单开发环境搭建和Maven环境搭建、MapReduce应用开发、更多示例讲解,熟悉MapReduce算法原理、使用压缩分隔减少输入规模、利用Combiner减少中间数据、编写Partitioner优化负载均衡、如何自定义排序规则、如何自定义分组规则、Shuffle过程和原理、MapReduce提交过程和源码分析、MapReduce 执行过程和源码分析、MapReduce 本地debug和远程debug、MapReduce优化
4、 分布式协调框架ZooKeeper:ZooKeepe基本概念和体系结构、ZooKeeper集群的安装、操作ZooKeeper、ZooKeeper编程API
5、Hadoop2.x集群搭建:Hadoop2.x集群结构体系介绍、Hadoop2.x集群搭建、NameNode的高可用性(HA)、HDFS Federation、ResourceManager 的高可用性(HA)、Hadoop集群常见问题和解决方法、Hadoop集群管理
6、 分布式数据库Hbase:HBase定义、HBase与RDBMS的对比、数据模型、系统架构、HBase上的MapReduce、表的设计、集群的搭建过程讲解、集群的监控、集群的管理、HBase Shell以及演示、Java客户端以及代码演示
7、 数据仓库Hive(使用sql进行计算的hadoop框架):数据仓库基础知识、Hive定义、Hive体系结构简介、Hive集群、客户端简介、HiveQL定义、HiveQL与SQL的比较、数据类型、外部表和分区表、表的操作与CLI客户端演示、数据导入与CLI客户端演示、查询数据与CLI客户端演示、数据的连接与CLI客户端演示、用户自定义函数(UDF)的开发与演示
8、 Pig(hadoop计算的另一种框架):Pig概述、安装Pig、Pig的语法和常用函数、Pig的自定义函数(UDF)开发
9、 数据迁移工具Sqoop:配置Sqoop、使用Sqoop把数据从mysql导入到HDFS中、使用Sqoop把数据从HDFS导出到mysql中
10、机器学习框架Mahout:机器学习的概念和使用场景、Mahout的安装与测试、Mahout的解析聚类算法、解析分类算法、协同过滤算法等常用算法
11、Hadoop项目实战:移动运营商流量分析系统、电影点评网站推荐系统
Storm
1、 Storm基础知识:Storm的基本概念、Storm的应用场景、Storm和Hadoop的对比
2、 Storm集群的安装:linux环境准备、zookeeper集群搭建、Storm集群搭建、Storm配置文件配置项讲解、集群搭建常见问题解决
3、 Storm常用组件和编程API:Topology、 Spout、Bolt、Storm分组策略(stream groupings)、Storm项目maven环境搭建、使用Strom开发一个WordCount例子、Storm程序本地模式debug、Storm程序远程debug、Storm事物处理、Storm消息可靠性及容错原理
4、 Storm结合消息队列Kafka:消息队列基本概念(Producer、Consumer、Topic、Broker等)、消息队列Kafka使用场景、Storm结合Kafka编程API
5、 Storm Trident:Trident概念、Trident state 原理、Trident开发实例
6、 Storm DPRC:Storm DRPC(分布式远程调用)介绍、Storm DRPC实战讲解
7、 Storm和Hadoop 2.x的整合:Storm on Yarn
8、 Storm开发实战:安全事件监控系统(Kafka+Storm+Hbase)、商品推荐系统(Kafka+Storm+Mahout+Hbase)
Spark 1、 Spark介绍:Spark应用场景、Spark和Hadoop MR、Storm的比较和优势
2、 Scala编程语言快速上手(Spark是用Scala语言编写的):Scala语言与java语言的对比和优势、Scala基础、Scala面向对象编程、Scala函数式编程、Scala高级编程
3、 Spark概念和编程模型:RDD 、transformation、action、lineage等、Spark模型简介、Spark缓存策略和容错处理、宽依赖与窄依赖
4、 Spark集群部署:Spark配置讲解、Spark集群搭建、集群搭建常见问题解决
5、 Spark原理:核心组件和常用RDD、数据本地性、任务调度、DAGScheduler、TaskScheduler、Task细节、广播变量、累加器、性能调优
6、 Spark和Hadoop2.x整合:Spark on Yarn原理、JobServer配置与部署
7、 Spark Streaming:数据源和DStream、无状态transformation与有状态transformation、checkpoint和容错、性能优化
8、Spark SQL和Shark:Shark数据模型和Shark数据类型、Shark的架构和部署、Shark与Spark结合、Spark SQL架构
9、Spark编程实战:移动运营商流量分析系统
第二阶段:虚拟化技术(CloudStack)(比openstack易用)
Cloudstack
1、虚拟化技术概览和CloudStack介绍:虚拟化技术的发展历程、虚拟化技术关键组成部分、常见虚拟化技术、常见存储技术、Apache CloudStack历史和基本功能、CloudStack各种专有术语、CloudStack的架构介绍
2、CloudStack的安装:前期准备和要求(Linux环境准备、源代码的获取和编译、创建yum库)单节点CloudStack安装、多节点CloudStack(集群)安装(CloudStack配置介绍、安装和配置CloudStack MySQL数据库、配置CloudStack管理节点和工作节点)
3、CloudStack的配置和管理:CloudStack管理界面介绍、CloudStack全局配置和常用参数的调整、CloudStack的用户管理、CloudStack的应用管理、CloudStack物理资源的管理、CloudStack虚拟资源的管理
4、CloudStack网络管理:CloudStack网络介绍(物理网络、虚拟网络、虚拟路由)、高级网络技术(端口转发、NAT地址转换、VPN、负载均衡设置、VPC的基本设置)
5、CloudStack的存储:主存储配置和管理(系统要求和配置、添加主存储)、二级存储配置和管理(添加二级存储、修改二级存储IP地址、使用OpenStack Swift)、Volumes的配置和管理(volume的操作和维护)、Snapshots(快照)的配置和管理(快照的操作和维护、VM快照迁移)
6、CloudStack支持的Hypervisor:RedHat KVM(KVM的配置和实战)、Citrix XenServer(介绍)、Oracle VM(介绍)、VMware vSphere(介绍)
7、CloudStack的高可靠性(HA):CloudStack基础平台的高可靠性、CloudStack冗余虚拟路由、CloudStack存储高可靠性(主存储的高可靠性、二级存储的高可靠性)、CloudStack高可靠管理(CloudStack高可靠管理器--Queue)、CloudStack上运行高可靠应用(CloudStack存储迁移)、CloudStack的自动调整扩展(自动调整扩展策略、VM属性的自动调整扩展、VM组的自动调整扩展)
8、CloudStack的扩展和性能调优:CloudStack的扩展(CloudStack整合Citrix NetScaler、CloudStack整合Nicira NVP、CloudStack整合OpenStack Swift存储)、CloudStack优化(管理服务器内存调整、数据库连接池调整、设置和监控主机的容量、资源使用率调整、)
9、CloudStack云平台的云雾和常见问题及解决方法:CloudStack中的各种事件、日志管理方法、网络和流量管理、系统监控及告警通知、各种常见问题的解决办法
10、CloudStack上开发和部署应用:在CloudCloudStack开发一个PaaS应用、在CloudStack上部署Hadoop2.x集群
项目实战 某大型企业真实的云计算项目