一本 openstack从入门到放弃 就好了。
云计算主要是虚拟化,而虚拟化又分三个方面:计算、存储、网络
最根本,还是要了解操作系统中用的虚拟化。
你目前的状态还比较初级,先找本云计算的书看吧。如果没有技术背景,就找些泛泛的甚至科普的;如果读了偏技术的,对哪个方面感兴趣,深入研究看看自己需要哪方面的基础,再去补。比如,你对云计算中的网络结构和优化感兴趣,那你就学习一下网络体系结构的原理,比如《计算机网络》;然后再学一些实战技术,比如《Unix网络编程》什么的。其中具体用到Linux还是什么系统、用到C还是什么语言,你都得补。
首先选择 Openstack 做为云计算学习框架;
编程语言:python
中间件知识:
rabbitmq:消息中间件,Openstack 中使用 rabbitmq 做模块之间的通信
mysql: 数据库,保存各模块的元数据
zookeeper: openstack 中高可用使用
基础知识:
linux 相关知识
负载均衡
分布式及高可用
Openstack 模块相关知识:
keystone: 权限认证模块,SSL 证书相关知识,ACL 权限相关知识等
nova: 虚拟机,需要了解 KVM 等虚拟技术,其中需要了解调度算法相关,可以看看深度解析 KVM
neutron: linux 经典网络是必须要懂的,overlay network(vxlan等)等 SDN 相关知识,看看<<Huawei CloudEngine 12800 VXLAN.pdf>>等系列个人觉得非常不错的文档
swift: 需要懂对象存储,有一本<<swift对象存储>>不错
cinder: 块存储(Ceph)等,最好看看大话存储,再过渡到 <<ceph源码分析>> <<ceph设计与实现>>等
glance: 镜像服务
微服务相关知识:
docker: 需要学习 docker 的虚拟化技术,如何做资源隔离
k8s: 自动化容器部署平台
几本重要书籍:
<<OpenStack高可用集群>> 看完可以懂 openstack 涉及到的大部分技术
<<Openstack实现与分析>> 学习 openstack 实现逻辑
<<docker容器与容器云>> 学习 docker 原理
<<docker源码分析>> 学习 docker 实现原理,如何做资源隔离,如何系统调用操作网络等
<<Kubernetes权威指南>> 全面了解 Kubernetes
首先,需要对数据中心知识有一定了解,如服务器、存储、网络等
其次,对系统后端大概了解,比如电商平台web网站后端知识
再次,对照网易云等主流云厂商产品序列一一了解各个大模块有哪些产品,它们的功能是什么。(可以看帮助文档)
最后,根据自己需求,专注学习某一块的知识
1. 首先你需要学习的是云计算的概念。掌握云计算的底层逻辑会更好的帮助你使用云计算带来的便利。
2. 当你理解了云计算的底层逻辑后,就可以找到自己在云计算中的定位,你的定位会决定你要学习的基础。
比如运维:可能更多是具体的云计算平台的使用、ops 架构的建设等等。
开发可能更多的考虑的是云计算的能力如何整合进入自己的程序中。
* 版权声明 :社区问答内容由互联网用户编辑提交,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌侵权、暴力、色情、反
动等言论,欢迎发送邮件至: 进行举报并提供初步证明,一经查实,本社区将立刻删除相关内容。