华为云从入门到实战 | 云服务概述与华为云搭建Web应用

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
公网NAT网关,每月750个小时 15CU
简介: 云计算在快速发展过程中逐渐形成了不同的服务模式(Service Model)。根据云计算最终服务的交付形态主要分为3种类型,软件即服务、平台即服务与基础架构即服务。从根源上来说,云计算的服务模式来源于面向服务的架构SOA(Service-Oriented Architecture)。所谓SOA,就是一种架构设计模式,其核心是一切以服务为中心,不同的应用之间通信协议都以某种服务的方式定义和完成。在云中部署应用和服务的微服务架构其本质也是由SOA演变而来。

1、云服务概念及分类


云服务一般主要是指华为云提供商所能提供的云计算服务。从用户的角度来说,主要是指用户通过Internet获取云计算资源的一系列服务。


随着企业数字化、智能化发展的加速,诸如远程办公、在线教育、网上展会、远程医疗等应用数量激增,企业自身数据量爆发式的增长,我国华为云服务步入发展快车道。华为云已逐渐成为云计算的代名词。华为云主要有以下特点。


(1) 完整的云解决方案,只使用一个或多个云供应商的云服务即可完成生产环境部署。

(2) 所有服务(例如业务系统和操作系统)的功能模块都位于云托管环境中。

(3) 支持按需付费,不用关注物理硬件的故障问题,解放生产力。


云服务的类型如图1所示。云计算按服务类型为划分依据,云服务可分为IaaS(基础设施即服务)、PaaS(平台即服务)和SaaS(软件即服务)3种类型。IaaS主要提供计算、存储、网络等基础服务,如弹性云服务器(ECS)等;SaaS主要提供应用运行、开发环境和应用开发组件,如语音识别、数据库服务等;PaaS主要通过Web界面提供软件的相关功能,如Office 365。IaaS和SaaS面向的对象是企业或者是用户,而PaaS面向的对象是开发者。

image.png


2、云服务架构


本节以华为云服务为例,介绍云服务的架构。华为云采用基于OpenStack的开源架构,主要分为4个层次,包含物理资源层、虚拟资源层、基础设施服务层和P/S产品层(Platform/Service产品层)。华为云的基础架构如图2所示。

image.png

(1) 物理资源层:主要包含服务器、存储设备、网络设备、物理设备(如防火墙)。

(2) 虚拟资源层: 将物理资源层的资源大部分虚拟化、逻辑化,主要包含计算虚拟化、存储虚拟化、网络虚拟化。

(3) 基础设施服务层:包含Nova(计算)、Cinder(存储)、Neutron(网络)、Keystone(身份验证)、Glance(镜像)、Swift(对象存储)、Heat(自动化编排)、Ceilometer(监控)、Ironic(裸机部署)等。

(4) P/S产品层:包含关系型数据库、云应用引擎、云容器引擎、开发云、云桌面等。


3、云服务产品


云服务产品作为云服务的核心智能资源和重要驱动引擎,具有带动性极强的“头雁效应”。以华为公司为例,华为云服务全景图如图3所示。华为云作为领先的云服务品牌,致力于提供稳定可靠、安全可信、可持续创新的云服务,主要包括计算服务、存储服务、网络服务、安全服务、数据库服务等。截至2021年1月,华为快速迭代,不断增强服务,华为云服务产品现有18类,近210种云服务产品,共分为基础服务、EI企业智能、开发者、安全、企业应用和IoT物联网六个模块。

image.png


下面主要演示搭建Web应用。


4、登录修改云服务器环境


本节介绍如何登录Linux云服务器。当前登录Linux服务器的工具有很多,比较常见有的SecureCRT、Putty、Xshell等工具。其中,Xshell是Windows下一款功能非常强大的安全终端模拟软件,支持Telnet、Rlogin、SSH、SFTP、Serial 等协议,可以非常方便地对Linux主机进行远程管理。与SecureCRT相比,Xshell 具有Screen不会闪屏,可以回滚,脚本(Script)的执行顺序可以调整,键盘映射的兼容性比较好等优点。与Putty相比,商用的Xshell软件功能会更强大,但Xshell对个人和学校用户是免费使用的,因此,本节将以Xshell为例说明如何登录弹性云服务器。


1●Xshell软件安装

首先可以通过官网下载也可以在本书所附的软件安装包地址下载。在本地主机安装安全终端模拟软件Xshell 6,安装成功并打开Xshell 6,如图4所示。

image.png

■ 图4 Xshell 6安装成功


2●配置Xshell新建会话属性

在图4所示的Xshell界面中单击“新建”按钮,打开“新建会话属性”对话框,如图5所示,进行会话相应的设置,设置选项如下。

(1) 设置会话名称。会话名称可进行自定义。此处取值样例为“华为云”。

(2) 选择登录协议。有Telnet、Rlogin、SSH、SFTP、Serial 等协议可供选择。此处取值样例为SSH。

(3) 输入主机IP地址。主机IP需与ECS的弹性公网IP地址保持一致。此处取值样例为121.36.3.201。

(4) 选择端口号。默认SSH端口设置为22。

(5) 连接至云服务器。单击“连接”按钮,通过Xshell软件即可远程登录ECS。

image.png


3●删除云服务器环境

(1) 查看云服务器Apache版本号。登录云服务器后,在命令行界面执行命令httpd -v,查看已安装的Apache版本,如图6所示。

image.png


(2) 删除已安装的Apache版本。在命令行界面执行命令:yum -y remove httpd即可删除已经安装的Apache Web服务器,如图7所示。

image.png


(3) 删除已安装的PHP版本。在命令行界面执行命令:yum -y remove php-common即可删除已经安装的PHP软件,从图8中可以看出,当前安装的PHP版本号为5.6。

image.png


2、安装Nginx Web服务器


Nginx是一款轻量级Web服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在Internet项目中广泛应用,Nginx占有大约25%的全球Web服务器市场份额。


1●获取Nginx软件

用户需要下载对应当前云服务器操作系统版本的Nginx软件包,有两种途径:一种是通过Nginx官网下载,也可以直接在Linux的命令行界面通过wget命令从官网下载,如图9所示。

image.png


2●建立Nginx仓库

建议用户通过wget命令行直接下载Nginx软件包,否则还需要通过WinSCP工具或Linux的lrzsz工具将Windows本地文件上传到远程云服务器。软件下载或上传到远程云服务器后,在命令行界面执行命令rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm,建立Nginx仓库,如图10所示。

image.png


3●安装Nginx软件包

在命令行界面下执行命令:yum -y install nginx,安装Nginx软件包,如图11所示。

image.png


4●设置Nginx开机自启动

在命令行界面执行命令systemctl start nginx启动Nginx服务器,执行命令systemctl enable nginx设置Nginx为开机自启动,如图12所示。

image.png


5●测试Nginx安装成功

启动完成Nginx服务后,可以在客户端主机利用浏览器访问http://弹性公网IP地址,此处弹性公网IP地址取值样例为121.36.3.201,显示如图13所示的界面,即表示Nginx服务安装成功。

image.png


3、安装PHP 7软件环境


1●使用Webtatic源安装PHP 7

在建立Webtatic源仓库之前需要首先安装EPEL(Extra Packages for Enterprise Linux)。EPEL是由 Fedora 社区打造,为 RHEL及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目,装上 EPEL,就相当于添加了一个第三方源。


(1) 在命令行界面执行命令:rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm,升级安装epel软件包,如图14 a所示。

(2) 在命令行界面执行命令:rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm建立webtatic仓库,如图14 b所示。

(3) 安装PHP 7及所需扩展。在命令行界面执行命令:yum -y install php70w-tidy php70w-common php70w-devel php70w-pdo php70w-mysql php70w-gd php70w-ldap php70w-mbstring php70w-mcrypt php70w-fpm,安装PHP 7及所需的PHP扩展,如图14 c所示。

image.png


2●验证PHP的安装版本

在命令行界面执行命令:php -v,验证PHP的安装版本,如图15所示。

image.png


3●设置php-fpm开机启动

php-fpm即php-Fastcgi Process Manager,是 FastCGI 的实现,并提供了进程管理的功能。在命令行界面执行命令:systemctl start php-fpm和systemctl enable php-fpm,启动php-fpm并设置开机启动,如图16所示。

image.png


4●配置Nginx配置文件

(1) 利用vim编辑工具打开配置文件。在命令行界面执行命令:vim /etc/nginx/conf.d/default.conf,打开配置文件default.conf,如图17所示。

image.png


(2) 修改打开的default.conf配置文件。根据图18方框所示部分修改配置文件,在index处添加index.php首页文件,再去掉Location那段配置代码的注释符号#,并修改fastcgi_para参数,修改为用户存放PHP脚本文件的目录。此处为/usr/share/nginx/html$fastcgi_script_name。在vim编辑模式下,按Esc键可退出编辑模式并进入命令模式;输入:wq可保存配置文件并退出vim编辑软件。

image.png


5●重新载入Nginx的配置文件

在命令行界面执行命令:service nginx reload,重新载入Nginx的配置文件,如图19所示。

image.png


6●测试Nginx+PHP安装环境

(1) 创建inof.php测试文件。在命令行界面执行命令:vim /usr/share/nginx/html/info.php,打开并修改编辑info.php的测试文件,编辑文件内容如下:

image.png

然后按Esc键退出编辑模式,并输入:wq保存后退出vim编辑软件。


(2) 测试PHP环境。在客户机本地利用浏览器访问http://弹性公网IP地址/info.php,此处弹性公网IP地址取值样例为121.36.3.201,显示如图20所示的界面,表示PHP 7安装成功。

image.png


相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
17天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
1月前
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之做的web服务计费如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
407 3
|
2天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
|
2天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
9天前
|
缓存 负载均衡 数据库
优化后端性能:提升Web应用响应速度的关键策略
在当今数字化时代,Web应用的性能对于用户体验至关重要。本文探讨了如何通过优化后端架构和技术手段,提升Web应用的响应速度。从数据库优化、缓存机制到异步处理等多个方面进行了深入分析,并提出了一系列实用的优化策略,以帮助开发者更好地应对日益增长的用户访问量和复杂的业务需求。
15 1
|
9天前
|
缓存 监控 数据库
Flask性能优化:打造高性能Web应用
【4月更文挑战第16天】本文介绍了提升Flask应用性能的七大策略:优化代码逻辑,减少数据库查询,使用WSGI服务器(如Gunicorn、uWSGI),启用缓存(如Flask-Caching),优化数据库操作,采用异步处理与并发(如Celery、Sanic),以及持续监控与调优。通过这些手段,开发者能有效优化Flask应用,适应大型或高并发场景,打造高性能的Web服务。
|
10天前
|
域名解析 Linux PHP
[CTF]ctfshow web入门
[CTF]ctfshow web入门
|
10天前
|
前端开发 搜索推荐 数据安全/隐私保护
HTML标签详解 HTML5+CSS3+移动web 前端开发入门笔记(四)
HTML标签详解 HTML5+CSS3+移动web 前端开发入门笔记(四)
18 1
|
11天前
|
数据库 开发者 Python
Python中使用Flask构建简单Web应用的例子
【4月更文挑战第15天】Flask是一个轻量级的Python Web框架,它允许开发者快速搭建Web应用,同时保持代码的简洁和清晰。下面,我们将通过一个简单的例子来展示如何在Python中使用Flask创建一个基本的Web应用。
|
14天前
|
JavaScript 前端开发 API
Vue.js:构建高效且灵活的Web应用的利器
Vue.js:构建高效且灵活的Web应用的利器

热门文章

最新文章