编辑推荐: |
文章主要介绍了云计算的概念、定义
,DevOps完整研发周期以及一些项目的DevOps实例,希望对您的学习有所帮助。
本文来自于csdn,由火龙果软件Anna编辑、推荐。 |
|
云计算
概念、定义
云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态的易扩展且经常是虚拟化的资源。
美国国家标准与技术研究院对于云计算的定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络、服务器、存储、应用软件和服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。
分类
公有云(AWS, 阿里云,Azure等)
云服务提供商对基础设施维护
多租户
Pay For Use
私有云(Vmware等)
自己维护云基础设施
单租户或狭义上的多租户
Pay For Cloud
混合云(Azure, Rackspace)
云服务提供商维护自己的云设施
用户范围内租户隔离
Pay For Use of Cloud
DevOps
概念
DevOps = Development + Operations
DevOps是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保证(QA)部门之间的沟通、协作与整合。它的出现时由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。其最大的特点就是极速的迭代和快速的用户反馈。
DevOps完整研发周期
下载:https://www.docker.com/docker-mac
安装:下载文件为.dmg文件,打开,拖动到Application文件夹中即可
node web项目的DevOps实例
项目准备
在本地创建一个node项目,文件目录以及文件内容如下:
1.使用 pm2 管理项目的启动,配置如下:
启动项目:npm run start
打开浏览器,访问 http://localhost:3008,即可看到web页面。
将其部署到云计算服务器上(本blog使用的是美团云。。。)
上传代码到 github 上, 地址:https://github.com/wikidson/node-web-DevOps
登陆到云服务,部署项目
通过 ssh 进入到云主机
由于我们的项目是node项目,所以需要在云主机上安装node:
下载node镜像,这里直接使用的淘宝的node镜像,不需要编译
wget -P /usr/local/
https://npm.taobao.org/mirrors/node/v8.9.4/node-v8.9.4-linux-x86.tar.gz |
解压node镜像
cd /usr/local
&& tar zxvf node-v8.9.4-linux-x86.tar.gz |
配置环境变量
vim /etc/profile
# 自文件末尾添加:export PATH="$PATH:/usr/local/node-v8.9.4-linux-x86/bin"
source /etc/profile |
从github上获取代码,并启动项目
创建目录:mkdir -p ~/webapp && cd ~/webapp 2. clone
项目:git clone https://github.com/wikidson/node-web-DevOps
启动项目: cd node-web-DevOps && npm install &&
npm run start
访问web项目对应的云主机外网IP和端口号:
实现DevOps
1.创建部署服务器:
部署脚本内容如下:
1.添加脚本命令到 package.json 文件中
将代码提交并push到github上
5.登陆云主机, 进行如下操作:
cd ~/webapp/node-web-DevOps
npm install
npm start:deploy
npm start |
打开浏览器, 依次访问如下地址:
web页面:
部署页面:
1.配置 github 的webhook
以上及实现了项目的DevOps
1.验证,修改项目代码
等待30s左右(因为在云主机上需要重新执行 npm install
)
打开浏览器,访问web页面,输出如下:
|