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

简介: 云计算在快速发展过程中逐渐形成了不同的服务模式(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


相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
4月前
|
存储 前端开发 Java
【JAVA】Java 项目实战之 Java Web 在线商城项目开发实战指南
本文介绍基于Java Web的在线商城技术方案与实现,涵盖三层架构设计、MySQL数据库建模及核心功能开发。通过Spring MVC + MyBatis + Thymeleaf实现商品展示、购物车等模块,提供完整代码示例,助力掌握Java Web项目实战技能。(238字)
516 0
|
8月前
|
前端开发 算法 API
构建高性能图像处理Web应用:Next.js与TailwindCSS实践
本文分享了构建在线图像黑白转换工具的技术实践,涵盖技术栈选择、架构设计与性能优化。项目采用Next.js提供优秀的SSR性能和SEO支持,TailwindCSS加速UI开发,WebAssembly实现高性能图像处理算法。通过渐进式处理、WebWorker隔离及内存管理等策略,解决大图像处理性能瓶颈,并确保跨浏览器兼容性和移动设备优化。实际应用案例展示了其即时处理、高质量输出和客户端隐私保护等特点。未来计划引入WebGPU加速、AI增强等功能,进一步提升用户体验。此技术栈为Web图像处理应用提供了高效可行的解决方案。
|
4月前
|
存储 JavaScript 安全
Web渗透-XSS漏洞深入及xss-labs靶场实战
XSS(跨站脚本攻击)是常见的Web安全漏洞,通过在网页中注入恶意脚本,窃取用户信息或执行非法操作。本文介绍其原理、分类(反射型、存储型、DOM型)、测试方法及xss-labs靶场实战案例,帮助理解与防御XSS攻击。
1633 1
Web渗透-XSS漏洞深入及xss-labs靶场实战
|
4月前
|
安全 Linux PHP
Web渗透-命令执行漏洞-及常见靶场检测实战
命令执行漏洞(RCE)指应用程序调用系统命令时,用户可控制输入参数,导致恶意命令被拼接执行,从而危害系统安全。常见于PHP的system、exec等函数。攻击者可通过命令连接符在目标系统上执行任意命令,造成数据泄露或服务瘫痪。漏洞成因包括代码层过滤不严、第三方组件缺陷等。可通过参数过滤、最小权限运行等方式防御。本文还介绍了绕过方式、靶场测试及复现过程。
1189 0
|
7月前
|
缓存 前端开发 应用服务中间件
Web端实时通信技术SSE在携程机票业务中的实践应用
本文介绍了携程机票前端基于Server-Sent Events(SSE)实现服务端推送的企业级全链路通用技术解决方案。文章深入探讨了 SSE 技术在应用过程中包括方案对比、技术选型、链路层优化以及实际效果等多维度的技术细节,为类似使用场景提供普适性参考和借鉴。该方案设计目标是实现通用性,适用于各种网络架构和业务场景。
245 1
|
8月前
|
缓存 前端开发 应用服务中间件
Web端实时通信技术SSE在携程机票业务中的实践应用
本文介绍了携程机票前端基于Server-Sent Events(SSE)实现服务端推送的企业级全链路通用技术解决方案。文章深入探讨了 SSE 技术在应用过程中包括方案对比、技术选型、链路层优化以及实际效果等多维度的技术细节,为类似使用场景提供普适性参考和借鉴。
335 7
|
11月前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
354 19
|
10月前
|
机器学习/深度学习 开发框架 API
Python 高级编程与实战:深入理解 Web 开发与 API 设计
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化、调试技巧以及数据科学和机器学习。本文将深入探讨 Python 在 Web 开发和 API 设计中的应用,并通过实战项目帮助你掌握这些技术。
|
存储 弹性计算 容灾
华为云从入门到实战 | 云关系数据库备份、恢复及存储容灾服务
主要介绍华为云数据库RDS的备份与恢复部署过程以及SDRS的创建部署过程。
865 0
华为云从入门到实战 | 云关系数据库备份、恢复及存储容灾服务
|
存储 NoSQL Redis
Redis+SpringBoot企业版集群实战------【华为云版】(上)
Redis+SpringBoot企业版集群实战------【华为云版】
248 0