01 开发工具都在这里
01 Docker
讲到云计算工具,你很难不提一下Docker。
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中。
当你与团队中的其他人员进行代码合作时,程序员和开发者遇到的本机问题可以协作处理。
Docker通过“容器”创建隔离环境,而容器具有使软件运行所需的一切,但是,Docker仅需要少量的资源,就可保证这个软件的运行。
与虚拟机不同,容器不需要完整的操作系统,它只需要使软件工作所需的库和设置。
这意味着软件将始终运行,无论你在何处部署它。
虽然在云开发这一环,Docker并不是必要的,但从更大的角度,Docker的出现是具有极大意义的。
有了它,开发者可以轻轻松松准备一样的开发环境,不需要花时间配置环境,这样,你就能节省很多时间,做更多有意义的工作。
02 Wireshark
Wireshark是一个开源抓包工具,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息,捕获和分析网络上的流量。
当然,作为一个开源抓包工具,Wireshark 在网络排障中使用频率非常高,可用于 Windows、macOS、Linux 和 UNIX 等主要操作系统。
它可以显示网络模型中第 2 层到第 5 层(链路层、网络层、传输层、应用层)的所有状态。
并且,wireshark抓包是抓取网卡的数据包,针对计算机上的所有应用。在针对被ssl加密的报文时,wireshark只能抓取到被加密的数据包,这点和F12是有所区别的。
不管是网工、网安、还是开发者们,只要想提升效率,用到它的概率是很高的。
当然,它还有很多其他作用,比如对网络流量捕获、检查、离线分析、对不同捕获文件类型的 R/W 支持等功能。
03 Kubernetes
Kubernetes 这个单词来自于希腊语,含义是舵手或领航员 ,其词根是 governor 和 cybernetic。
K8s 是它的缩写,用 8 字替代了“ubernete”。
作为一个自动化部署、伸缩和操作应用程序容器的开源平台,Kubernetes 本身并不是构建私有云的平台,但它可以创建类似私有云的东西,通过将服务器集合绑定到单个集群中,并在它们之间部署应用程序。
除此之外,开发者也可以设置Kubernetes网络和存储服务。
Google 公司于 2014 年启动了 Kubernetes 项目,可以这么说,Kubernetes不仅仅适用于新的云原生项目,它还可以应用在对传统应用的现代化改造上。
通过对遗留应用的容器化改造,以及Kubernetes的编排,Kubernetes可以打破原有应用架构的局限性,转变为架构适应应用需求的全新模式。
经改造过的应用程序,能够充分利用诸如弹性、可扩展性等云原生优势,以及强大的路由、日志、监控和安全工具,你可以在其之上添加新的微服务来实现扩展功能。
04 OpenStack
OpenStack是Rackspace和NASA共同成立的一个开发项目,也是一个旨在为公共及私有云的建设与管理提供软件的开源项目。
它是典型的IaaS模式的云平台,所以,它的功能就显而易见,管理基础设施资源,便于用户使用。
它是由python语言编写的出来的,主要通过命令行(CLI)、程序接口(API)或基于Web界面(GUI)实现对底层的计算资源、存储资源和网络资源的集中管理功能。
它提供与公共云相同的核心云服务类型,包括计算、存储、无服务器功能和容器,这些服务背后的所有代码都为开源。
OpenStack可以免费下载和部署,它是被设计成可插拔的,这意味着用户可以根据自己的需求自由组合不同的模块,以满足其特定的IaaS需求。
05 Ansible
Ansible是一个自由开源的配置和自动化工具,使用SSH来和节点进行通信。
Python是它的代码语言,它的显著优点,就是让使用者不需要在节点中安装任何客户端,就能直接使用。
也就是说,它只需在主控端部署Ansible环境,被控端无需做任何操作。
Ansible 通过本身集成的非常丰富的模块可以实现各种管理任务,其自带模块超过上千个。
Ansible可通过Playbooks来定制强大的配置、状态管理,对云计算平台、大数据都有很好的支持作用。
可以这么说,因为Ansible的管理模式非常简单,所以,用它,一条命令可以影响上千台主机。
在使用Ansible时,开发者可以利用变量来存储值。这是非常常用的方法。
它可以帮助开发者在Ansible项目的所有文件中重复使用这些值,从而简化项目的创建及维护,并减少错误数量。
06 腾讯云 Serverless
Serverless Computing,即无服务器计算