云服务器内容精选

  • 前提条件 已购买一台弹性云服务器,且已为其绑定弹性公网IP。 弹性云服务器所在安全组添加了如下表所示的安全组规则,具体步骤参见为安全组添加安全组规则。 表1 安全组规则 方向 类型 协议 端口/范围 源地址 入方向 IPv4 TCP 22 0.0.0.0/0 入方向 IPv4 TCP 443 0.0.0.0/0 入方向 IPv4 TCP 8000 0.0.0.0/0 为了更好的获取和更新系统和软件,建议您更新镜像源为华为云镜像源,详细操作,请参见如何使用自动化工具配置华为云镜像源(x86_64和ARM)?。
  • 操作步骤 安装PHP。 执行以下命令,安装EPEL源和Remi仓库。 sudo yum install -y epel-release sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm 执行以下命令,启用PHP 8.0仓库。 sudo yum -y install yum-utils sudo yum-config-manager --enable remi-php80 执行以下命令,安装PHP。 sudo yum install -y php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json 执行以下命令,验证PHP的安装版本。 php -v 回显如下类似信息: PHP 8.0.30 (cli) (built: Jun 4 2024 15:19:49) ( NTS gcc x86_64 ) Copyright (c) The PHP Group Zend Engine v4.0.30, Copyright (c) Zend Technologies 安装Composer。 Composer是PHP编程语言的包管理器,提供管理PHP软件依赖和所需库的标准格式。 执行以下命令,安装Composer所需依赖。 sudo yum install -y unzip git 执行以下命令,安装Composer。 curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer 执行以下命令,查看Composer版本。 composer --version 回显如下类似信息: Composer version 2.7.7 2024-06-10 22:11:12 PHP version 8.0.30 (/usr/bin/php) 安装ThinkPHP。 使用Composer创建一个新的ThinkPHP应用程序。 该命令会在当前目录下创建一个名为my-thinkphp-app的目录,并下载ThinkPHP的核心文件和依赖项。 composer create-project topthink/think my-thinkphp-app 切换到新创建的ThinkPHP应用程序目录,启动ThinkPHP内置服务器进行开发。 cd my-thinkphp-app php think run 回显如下类似信息,表示ThinkPHP已启动。 安装完成后,可通过浏览器访问“http://云服务器弹性公网IP:8000”,显示如下页面,说明ThinkPHP安装成功。
  • 步骤三:使用E CS 购买ECS后,您可以根据业务需要搭建网站或应用、管理和使用ECS。 操作类型 如果您想 您可以参考 连接ECS 了解更多ECS的连接方法 Linux弹性云服务器登录方式概述 应用ECS 在ECS上搭建网站或应用 常用网站搭建指导 修改ECS配置 升级ECS的vCPU和内存 变更规格 升级ECS的带宽 修改弹性公网IP的带宽 增加ECS的存储容量 新增并挂载磁盘 扩容云硬盘 变更ECS的操作系统 切换操作系统 放通ECS的端口 配置安全组规则 备份ECS 备份ECS数据 备份弹性云服务器 监控、审计和管理ECS 查看ECS的CPU 、内存、网络带宽、磁盘等监控数据 监控弹性云服务器 查看最近7天ECS的操作记录 查看审计日志 分类管理ECS资源 使用标签管理资源 释放ECS 删除ECS 启、停弹性云服务器 查看ECS费用 了解ECS的计费信息 费用账单
  • 步骤二:登录ECS 本示例以通过CloudShell、使用密钥对登录ECS为例进行介绍,更多登录方式,请参见Linux ECS登录方式概述。 在ECS列表页,单击ECS操作列的“远程登录”。 图6 远程登录入口 在“登录Linux弹性云服务器”页面,选择“使用CloudShell登录”,并单击“CloudShell登录”。 图7 选择CloudShell方式登录 在CloudShell配置向导中,设置“认证方式”,并上传4中使用的密钥对对应的私钥文件。 图8 CloudShell配置向导 单击“连接”,登录ECS。
  • 步骤一:购买ECS 本步骤仅针对本示例进行参数设置及介绍,更多购买ECS的详细配置请参见购买弹性云服务器。 华为云不定期推出优惠活动,购买前请您先前往官网活动查询。活动规则以届时官网活动页面展示为准。 登录控制台,进入购买弹性云服务器页面。 设置“基础配置”参数。 图1 “基础配置”参数设置 表1 “基础配置”参数设置说明 参数 示例 说明 区域 华北-北京四 请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。ECS购买后无法更换区域,请谨慎选择。 更多信息,请参见区域和可用区。 计费模式 包年/包月 该模式需先付费再使用,按照订单的购买周期进行结算。在购买之前,需确保账户余额充足。更多信息,请参见计费说明。 可用区 随机分配 选择“随机分配”后,云平台会基于用户的UUID(Universally Unique Identifier)选择一个默认的可用区。ECS购买后无法更换可用区。 规格 s7.xlarge.2 请根据业务需要选择合适的规格。更多信息,请参见规格清单。 镜像 CentOS 7.9 64bit (40GiB) 华为云提供的Linux类型公共镜像,该镜像免费。 安全防护 免费试用一个月主机安全基础防护 免费体验 30天主机安全功能,提供操作系统漏洞检测、弱口令检测、暴力破解检测等功能。 更多信息,请参见主机安全。 系统盘 通用型SSD,40GiB 购买ECS时自带系统盘,且系统盘自动初始化。系统盘用于存储ECS的操作系统。 更多信息,请参见云硬盘概述。 单击“下一步:网络配置”,设置“网络配置”参数。 图2 “网络配置”参数设置 表2 “网络配置”参数设置说明 参数 示例 说明 网络 虚拟私有云:vpc-default 子网:subnet-default 使用购买ECS时,系统默认创建的VPC和子网。 更多信息,请参见虚拟私有云和子网规划建议。 安全组 Sys-WebServer 使用购买ECS时,系统默认创建的安全组。 更多信息,请参见安全组概述。 弹性公网IP 线路:全动态BGP 公网带宽:按带宽计费 带宽大小:5 Mbit/s 如需访问外网,则可以为ECS购买和绑定弹性公网IP。 更多信息,请参见弹性公网IP概述。 单击“下一步:高级配置”,设置“高级配置”参数。 图3 “高级配置”参数设置 表3 “高级配置”参数设置说明 参数 示例 说明 云服务器名称 ecs-example 根据命名规则,自定义ECS的名称。 登录凭证 密钥对 选择“登录凭证”方式为“密钥对”。 密钥对 KeyPair-c4b7 使用已有的密钥对或新建密钥对,具体操作,请参见通过管理控制台创建密钥对。 请确认已获取密钥对的私钥文件,否则无法登录ECS。 云备份(可选) 云备份存储库名称:vault-df63 云备份存储库容量:80GiB 备份策略:defaultPolicy 云备份用于当发生病毒入侵、人为误删除、软硬件故障等事件时,将数据恢复到任意备份点。 更多信息,请参见云备份概述。 云监控 开启详细监控 默认开启详细监控,支持对ECS的CPU,内存,网络,磁盘,进程等指标的1分钟详细监控。 更多信息,请参见监控弹性云服务器。 单击“下一步:确认配置”,并设置“购买时长”和“购买数量”。 图4 确认配置 阅读协议并勾选同意后,单击“去支付”。 支付订单,完成ECS的购买。 返回ECS列表页,查看已购买的ECS。 图5 查看ECS
  • 准备工作 注册账号并实名认证。 在购买ECS之前,请先 注册华为账号 并开通华为云、实名认证。 如果您已开通华为云并进行实名认证,请忽略此步骤。 为账户充值。 请保证账户有足够的资金,以免购买ECS失败。具体操作,请参见账户充值。 规划VPC和子网等网络资源。 当您开始购买ECS的操作时,系统会创建默认的VPC(vpc-default)和子网(subnet-default)。 如果您不想使用默认的VPC和子网,建议您提前在对应区域创建新的VPC和子网。更多信息,请参见虚拟私有云和子网规划建议。 创建安全组并配置安全组规则。 当您开始购买ECS的操作时,系统会创建默认的安全组(default、Sys-WebServer和Sys-FullAccess)。默认安全组的更多信息,请参见默认安全组和规则。 如果默认安全组和规则不能满足您的业务需要,建议您提前修改安全组规则。具体操作,请参见配置安全组规则。 创建密钥对。 如果采用密钥对方式登录ECS,建议您提前创建密钥对。具体操作,请参见通过管理控制台创建密钥对。
  • 操作场景 弹性云服务器(Elastic Cloud Server,ECS)是由CPU、内存、操作系统、云硬盘组成的一种可随时获取、弹性可扩展的云服务器。弹性云服务器购买成功后,您就可以像使用自己的本地PC或物理服务器一样,在云上使用弹性云服务器。 您只需要指定CPU、内存、操作系统、规格、登录凭证方式即可获得一台弹性云服务器。 本文以如下配置为例,介绍购买和使用ECS的操作指导。 购买数量:1台 计费方式:包年/包月 规格:s7.xlarge.2(4vCPUs、8GiB内存) 操作系统:Linux 登录凭证:密钥对
  • 应用场景 Extundelete是一款文件恢复工具,支持恢复ext3及ext4文件系统类型的误删除文件。 误删除文件的恢复程度与如下因素有关: 文件删除后是否被写覆盖 元数据是否存留在journal 如果误删除的数据位于系统盘,且一直有业务进程或系统进程在写入文件,则可能无法通过此方法进行恢复。 为了提高数据安全性,建议您通过创建快照、创建私有镜像、创建云硬盘备份等方式定期进行数据备份。 本文以操作系统为CentOS 7.5的云服务器为例,介绍如何使用开源工具Extundelete快速恢复被误删除的数据。
  • 实施步骤 安装Extundelete。 登录弹性云服务器。 依次执行以下命令,安装 Extundelete 所需依赖及库。 yum install libcom_err e2fsprogs-devel yum install gcc gcc-c++ 在出现如下提示时,输入“y”。 Installed size: 25 M Is this OK [y/d/N]: y 执行以下命令,下载 Extundelete 源码。 wget https://github.com/curu/extundelete/archive/refs/tags/v1.0.tar.gz 执行以下命令,解压 v1.0.tar.gz 文件。 tar xf v1.0.tar.gz 依次执行以下命令,进行编译安装。 cd extundelete-1.0 ./configure make 执行以下命令,进入 src 目录,可查看已编译好的 Extundelete 文件。 cd ./src 执行以下命令,尝试恢复数据。 ./extundelete --restore-all /dev/对应盘 恢复后的文件位于同级目录的“RECOVERED_FILES”文件夹下。
  • 资源规划 本次实践所用的资源配置及软件版本如表2中所示。当您使用不同的硬件规格或软件版本时,本指导中的命令及参数可能会发生改变,需要您根据实际情况进行调整。 表2 资源和成本规划 资源 资源说明 成本说明 弹性云服务器 计费模式:按需计费 可用区:可用区1 规格:s6.large.2 镜像:CentOS 7.2 64bit 系统盘:40G 弹性公网IP:现在购买 线路:全动态BGP 公网带宽:按流量计费 带宽大小:5 Mbit/s ECS涉及以下几项费用: 云服务器 云硬盘 弹性公网IP 具体的计费方式及标准请参考计费模式概述。 Nginx 是一个高性能的HTTP和反向代理web服务器。 获取方式: http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 免费 MySQL 是一款开源的关系数据库软件。 获取方式: http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 免费 PHP 是一款开源软件,用于Web开发。 获取方式: https://mirror.webtatic.com/yum/el7/epel-release.rpm https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 免费
  • Ghost 安装与配置 Ghost v1.0.0 及以上版本已加入了Ghost-CLI,因此可以直接安装配置Ghost-CLI。 执行以下命令,安装Ghost-CLI。 sudo npm install ghost-cli@latest -g 创建一个文件夹,之前介绍过Nginx的重要文件结构 /var/www/ 就是将要创建文件夹的地方。 sudo mkdir -p /var/www/ghost ghost在/root文件夹中安装Ghost将无法正常工作。 配置权限。 sudo chown user:user /var/www/ghost sudo chmod 775 /var/www/ghost user是1创建的用户。 进入刚才创建的文件夹。 cd /var/www/ghost 执行以下命令,用Ghost-CLI安装Ghost。 ghost install 如果Ghost安装时提示node版本不匹配,可以在nodejs官方网站查询相应的版本重新安装。 https://nodejs.org/en/download/ 配置Ghost。 如果上面在 /var/www/ghost/ 目录下运行ghost install成功的话,会要求配置相关参数: Enter your blog URL:输入已解析的 域名 ,例如:http://example.com。 Enter your MySQL hostname:输入数据库连接地址。本示例中MySQL数据库与Ghost部署在同一台实例中,直接按Enter保持默认即可。 Enter your MySQL username:输入数据库用户名,输入root后按Enter。 Enter your MySQL password :输入数据库密码,输入5中设置的数据库密码后按Enter。 Enter your Ghost database name:输入Ghost使用的数据库名称。输入ghost_data后按Enter。 如果配置后需要修改可以通过以下命令去文件中进行配置: vi config.production.json 打开之后就是生产环境配置内容了。参考配置见下图:
  • 安装Nginx 部署Ghost博客,需要安装Nginx作为HTTP服务器,本节以安装Nginx 1.18.0 版本为例。 执行以下命令,更新Linux操作系统和软件包。 sudo apt-get update sudo apt-get upgrade -y 执行以下命令,安装Nginx。 sudo apt-get install -y nginx 执行以下命令查看Nginx版本。 nginx -v 回显信息如下: nginx version: nginx/1.18.0 (Ubuntu) 调整防火墙(可选)。 UFW(Uncomplicated Firewall)是一个iptables的接口,可以简化配置防火墙的过程。Ubuntu默认安装了UFW,执行以下命令查看防火墙的状态。 sudo ufw status 如果你没有也不想开启防火墙,则可以直接跳过此步骤,如果你想要开启防火墙可以通过以下命令实现。 sudo ufw enable 之后再次检查防火墙状态验证是否成功开启防火墙。 在测试Nginx之前,需要重新配置防火墙软件以允许访问Nginx。执行以下命令,将Nginx自动注册在UFW。 sudo ufw app list 回显信息: Available applications: Nginx Full Nginx HTTP Nginx HTTPS ... Nginx Full:此配置文件打开端口 80(正常,未加密的Web流量)和端口443(TLS / SSL加密流量) Nginx HTTP:此配置文件仅打开端口 80(正常,未加密的Web流量) Nginx HTTPS:此配置文件仅打开端口 443(TLS / SSL加密流量) 执行以下命令确保防火墙允许HTTP和HTTPS连接。 sudo ufw allow 'Nginx Full' 验证Nginx是否正常工作。 在浏览器中通过域名或者IP地址进行访问Nginx,如果Nginx正常启动则会打开Welcome to nginx的欢迎页面。 使用浏览器访问 “http://云服务器IP地址”,显示如下页面,说明Nginx安装成功。
  • 创建新用户 由于Ghost官方不推荐使用root用户直接操作,因此需要重新创新的用户,并为其配置权限。 执行以下命令,创建新用户。本文以user为例。 adduser user 回显信息如下: Adding user `user' ... Adding new group `user' (1000) ... Adding new user `user' (1000) with group `user' ... Creating home directory `/home/user' ... Copying files from `/etc/skel' ... New password: Retype new password: passwd: password updated successfully Changing the user information for user Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] Y 在New password:和Retype new password:提示信息中,请按照提示输入并确认用户密码,密码默认不显示,输入完成后按Enter。 在Enter the new value, or press ENTER for the default提示信息中,按Enter保持默认即可,您也可以根据实际情况填写用户相关信息。 在Is the information correct? [Y/n]提示信息中,输入Y确认信息,并按Enter,完成设置。 执行以下命令,将新创建的用户添加到组。 usermod -aG sudo user 执行以下命令,切换到user用户。 su - user
  • 安装MySQL MySQL是一种开源数据库管理系统,通常作为流行的LAMP(Linux,Apache,MySQL,PHP / Python / Perl)堆栈的一部分安装。它使用关系数据库和SQL结构化查询语言)来管理其数据。 执行以下命令,安装MySQL。 sudo apt-get install -y mysql-server 执行以下命令查看MySQL版本。 mysql -V 回显信息如下: mysql Ver 8.0.37-0ubuntu0.20.04.3 for Linux on x86_64 ((Ubuntu)) 执行以下命令,连接MySQL。 sudo mysql 执行以下命令,创建Ghost使用的数据库。本文以ghost_data为例。 CREATE DATABASE ghost_data; 执行以下命令,设置root账户密码。 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'xxxxx'; 其中'xxxxx'为待设置的密码。 执行以下命令,重新加载MySQL的授权表,确保数据库权限的更改生效。 FLUSH PRIVILEGES; 执行以下命令,退出MySQL。 exit
  • 安装Node.js 执行以下命令,安装Node.js sudo curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash - sudo apt-get install -y nodejs 安装完成后,执行以下命令查看Node.js版本和npm版本。 node -v npm -v 回显信息: root@ecs-c47c:~# node -v v18.20.3 root@ecs-c47c:~# npm -v 10.7.0