云服务器内容精选

  • 实施步骤(手动) 安装前准备 创建弹性云服务器,且弹性云服务器已绑定弹性公网IP。 为了更好的获取和更新系统和软件,建议您更新镜像源为华为云镜像源,详细操作,请参见如何使用自动化工具配置华为云镜像源(x86_64和ARM)?。 登录弹性云服务器,执行如下命令,新建jdk目录和tomcat目录。 cd /home/ mkdir webDemo cd webDemo/ mkdir jdk mkdir tomcat 您可以选择将安装包下载至本地后使用文件传输工具将安装包上传至云服务器。或者选择使用wget命令直接下载安装包至云服务器。 方法一:使用文件传输工具上传安装包至云服务器。 使用WinSCP工具上传jdk软件包至云服务器jdk文件夹。 使用WinSCP工具上传tomcat软件包至云服务器tomcat文件夹。 方法二:使用wget命令直接下载安装包至云服务器。 执行如下命令,进入jdk目录。 cd /home/webDemo/jdk 执行如下命令,下载jdk软件包。 wget jdk软件包下载地址 请参考表1查询jdk下载地址,或者使用其他开源镜像地址获取安装包。 例如:以jdk17为例,在列表中查看可用的JDK软件包版本,以jdk-17_linux-x64_bin.tar.gz安装包为例,执行以下命令。 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz 执行如下命令,进入tomcat目录。 cd /home/webDemo/tomcat 执行如下命令,下载tomcat软件包。 请参考表1查询tomcat下载地址,或者使用其他开源镜像地址获取安装包。 wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-x/vx.x.xx/bin/apache-tomcat-x.x.xx.tar.gz 例如:单击开源镜像地址,查询当前可用版本,以v8.5.xx版本安装包为例,执行以下命令。 wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.xx/bin/apache-tomcat-8.5.xx.tar.gz --no-check-certificate 设置弹性云服务器安全组规则 单击弹性云服务器名称,查看弹性云服务器详情,在弹性云服务器详情页面,选择“安全组”。 在“安全组”界面,单击“更改安全组规则”,进入安全组详情界面。 在安全组详情界面,单击“添加规则”,弹出添加规则窗口。 根据界面提示配置安全组规则。 部署Java Web环境需为弹性云服务器添加两个安全组规则。 为云服务器添加ICMP安全组规则。 如果云服务器默认设置是禁止ICMP规则,当ping弹性服务器IP时会显示超时。因此首先为云服务器添加ICMP规则。 图3 添加ICMP规则 为云服务器添加web项目分配端口的访问规则,以8080端口为例。 图4 添加8080端口 安装jdk 执行如下命令,进入jdk目录。 cd /home/webDemo/jdk 解压jdk安装包到jdk目录下。 tar -xvf jdk-17_linux-x64_bin.tar.gz -C /home/webDemo/jdk/ 配置环境变量。 vim /etc/profile 在底部添加以下内容。 #set java environment JAVA_HOME=/home/webDemo/jdk/jdk-17.0.x JRE_HOME=$JAVA_HOME PATH=$JAVA_HOME/bin:$PATH CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JRE_HOME/lib/tools.jar export JAVA_HOME JRE_HOME PATH CLASSPATH “jdk-17.0.x”表示jdk安装包的具体版本,实际值需要从步骤2的返回值中获取。 例如:jdk-17.0.9 执行以下命令保存并退出。 :wq 执行以下命令使/etc/profile里的配置生效。 source /etc/profile 验证安装。 java -version 回显信息如下所示验证安装jdk成功。 [root@ecs-c525-web ~]# java -version java version "17.0.9" 2023-10-17 LTS Java(TM) SE Runtime Environment (build 17.0.9+11-LTS-201) Java HotSpot(TM) 64-Bit Server VM (build 17.0.9+11-LTS-201, mixed mode, sharing) 安装tomcat 执行如下命令,进入tomcat目录。 cd /home/webDemo/tomcat 解压tomcat安装包到tomcat目录下。 tar -xvf apache-tomcat-x.x.xx.tar.gz -C /home/webDemo/tomcat/ 例如:以v8.5.xx版本安装包为例,执行以下命令。 tar -xvf apache-tomcat-8.5.xx.tar.gz -C /home/webDemo/tomcat/ 进入tomcat的bin目录,执行以下命令安装tomcat。 cd /home/webDemo/tomcat/apache-tomcat-x.x.xx/ cd bin/ 例如:以v8.5.xx版本安装包为例,执行以下命令。 cd /home/webDemo/tomcat/apache-tomcat-8.5.xx/ cd bin/ 执行如下命令编辑setclasspath.sh脚本。 vi setclasspath.sh 并在setclasspath.sh脚本底部添加以下内容。 请根据资源和成本规划中jdk的版本号替换如下内容中的jdk版本号。 export JAVA_HOME=/home/webDemo/jdk/jdk-17.0.9 export JRE_HOME=$JAVA_HOME 执行如下命令保存后退出。 :wq 可输入以下命令启动tomcat。 ./startup.sh 执行如下命令查看tomcat进程。 ps -ef | grep tomcat 若返回如下图所示,表示tomcat启动成功。 图5 查看tomcat进程 验证Java Web环境搭建完成 在浏览器输入以下内容。 http://云服务器弹性公网IP:8080 如果界面跳转至默认的Tomcat界面,证明Java Web环境搭建完成。就可以在公网访问云服务器的8080端口了。 图6 访问云服务器的8080端口
  • 资源和成本规划 表1 资源和成本规划 资源 资源说明 成本说明 虚拟私有云VPC VPC网段:192.168.0.0/16 免费 虚拟私有云子网 可用区:可用区1 子网网段:192.168.0.0/24 免费 安全组 入方向规则1: 优先级:1 策略:允许 类型:IPv4 协议端口:ICMP: 全部 源地址:0.0.0.0/0 入方向规则2: 优先级:1 策略:允许 类型:IPv4 协议端口:TCP: 8080 源地址:0.0.0.0/0 免费 弹性云服务器 计费模式:包年/包月 可用区:可用区1 规格:c7.large.2 镜像:CentOS 7.4 64bit 系统盘:40G 弹性公网IP:现在购买 线路:全动态BGP 公网带宽:按流量计费 带宽大小:5 Mbit/s E CS 涉及以下几项费用: 云服务器 云硬盘 弹性公网IP 具体的计费方式及标准请参考计费模式概述。 jdk Java开发工具软件。 获取方式: http://www.oracle.com/technetwork/java/javase/downloads 免费 tomcat 是一款开源的Web应用服务器。 获取方式: http://tomcat.apache.org/download-80.cgi 免费 PuTTY 跨平台远程访问工具。用于在软件安装过程中在Windows系统上访问云服务器。 获取方式: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 免费 WinSCP 跨平台文件传输工具。用于在Windows系统和Linux系统间传输文件。 获取方式: http://winscp.net/ 免费
  • 资源和成本规划 本次实践所用的资源配置及软件版本如表3中所示。当您使用不同的硬件规格或软件版本时,本指导中的命令及参数可能会发生改变,需要您根据实际情况进行调整。 表3 资源和成本规划 资源 资源说明 成本说明 虚拟私有云VPC VPC网段:192.168.0.0/16 免费 虚拟私有云子网 可用区:可用区1 子网网段:192.168.0.0/24 免费 安全组 优先级:1 策略:允许 类型:IPv4 协议端口:TCP: 80 源地址:0.0.0.0/0 免费 弹性云服务器 计费模式:包年/包月 可用区:可用区1 规格:c7.large.2 镜像:Debian 12.0.0 64bit 系统盘:40G 弹性公网IP:现在购买 线路:全动态BGP 公网带宽:按流量计费 带宽大小:5 Mbit/s ECS涉及以下几项费用: 云服务器 云硬盘 弹性公网IP 具体的计费方式及标准请参考计费模式概述。 Docker 获取方式: http://mirrors.huaweicloud.com/docker-ce/linux/debian/gpg 免费 镜像 获取方式: https://hub.atomgit.com/repos 免费
  • 简介 本文介绍了如何在华为云上使用弹性云服务器的Linux实例手工部署Docker,并提供了Docker常用操作及简单的镜像制作过程。 表1 Docker相关术语 术语 解释 Docker Docker是开发人员和系统管理员使用容器开发、部署和运行应用程序的平台。 镜像 Docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。 容器 镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。 该指导以“Debian 12.0.0 64bit”操作系统为例,Docker要求64位的系统且内核版本至少为3.10。 您还可以选择Solution as Code一键式部署方式自动部署Docker Swarm集群,详细内容请参见快速部署高可用的Docker Swarm集群。
  • Docker基本用法 Docker进程管理。 运行Docker systemctl start docker 停止Docker systemctl stop docker 重启Docker systemctl restart docker 镜像管理。 拉取镜像。您可以从镜像仓库这里获取,以Debian镜像为例,获取方法如下: 在镜像仓库的搜索框中输入Debian。 在搜索结果中选择需要获取的镜像,单击进入该镜像详情。 在镜像详情页面,复制拉取镜像的命令。 docker pull hub.atomgit.com/amd64/debian:rc-buggy 查看已有镜像 docker images 强制删除镜像 docker rmi hub.atomgit.com/amd64/debian:rc-buggy 容器管理。 创建一个容器并运行。 docker pull hub.atomgit.com/amd64/httpd:2.4.57-alpine docker run -it -d -p 80:80 --name datahttpd -v /data/:/var/www/httpd/ hub.atomgit.com/amd64/httpd:2.4.57-alpine 参数说明如下: -i:以交互模式运行容器,通常与-t同时使用。 -t:为容器重新分配一个伪输入终端,通常与-i同时使用。 -d:后台运行容器,并返回容器ID。 -p:端口映射,格式为“宿主机端口:容器端口”。 --name:为容器指定一个名称。 -v:把宿主机上的一个目录挂载到镜像里,格式为“宿主机目录:镜像内挂载的路径”,必须为绝对路径。 上述参数说明中的宿主机表示所创建的弹性云服务器实例。 示例命令表示:使用镜像httpd,以交互模式启动一个容器,将容器的80端口映射到宿主机的80端口,宿主机的目录/data映射到容器的/var/www/httpd目录,并返回容器ID。 查看容器启动情况。 docker ps -a 在浏览器输入弹性云服务器所绑定的弹性公网IP,访问测试容器运行情况。出现以下内容表示运行成功。
  • 部署Docker 登录弹性云服务器。 为了更好的获取和更新系统和软件,建议您更新镜像源为华为云镜像源,详细操作,请参见如何使用华为云提供的epel镜像源(x86_64和ARM)?。 添加yum源。 yum install epel-release -y yum clean all 安装yum-util。 yum install -y yum-utils device-mapper-persistent-data lvm2 设置docker yum源。 yum-config-manager --add-repo https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo sed -i 's+download.docker.com+mirrors.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo 安装并运行Docker。 yum -y install docker-ce systemctl enable docker systemctl start docker 检查安装结果。 docker --version 回显如下类似信息,表示Docker安装成功。 Docker version 26.1.4, build 5650f9b
  • 资源和成本规划 本次实践所用的资源配置及软件版本如表3中所示。当您使用不同的硬件规格或软件版本时,本指导中的命令及参数可能会发生改变,需要您根据实际情况进行调整。 表3 资源和成本规划 资源 资源说明 成本说明 虚拟私有云VPC VPC网段:192.168.0.0/16 免费 虚拟私有云子网 可用区:可用区1 子网网段:192.168.0.0/24 免费 安全组 优先级:1 策略:允许 类型:IPv4 协议端口:TCP: 80 源地址:0.0.0.0/0 免费 弹性云服务器 计费模式:包年/包月 可用区:可用区1 规格:s6.2xlarge.4 镜像:CentOS 7.5 64bit 系统盘:40G 弹性公网IP:现在购买 线路:全动态BGP 公网带宽:按流量计费 带宽大小:5 Mbit/s ECS涉及以下几项费用: 云服务器 云硬盘 弹性公网IP 具体的计费方式及标准请参考计费模式概述。 Docker 获取方式: https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo 免费 镜像 获取方式: https://hub.atomgit.com/repos 免费
  • Docker基本用法 Docker进程管理。 运行Docker systemctl start docker 停止Docker systemctl stop docker 重启Docker systemctl restart docker 镜像管理。 拉取镜像。您可以从镜像仓库这里获取,以CentOS镜像为例,获取方法如下: 在镜像仓库的搜索框中输入CentOS。 在搜索结果中选择需要获取的镜像,单击进入该镜像详情。 在镜像详情页面,复制拉取镜像的命令。 docker pull hub.atomgit.com/amd64/centos:centos7 查看已有镜像 docker images 强制删除镜像 docker rmi hub.atomgit.com/amd64/centos:centos7 容器管理。 创建一个容器并运行。 docker pull hub.atomgit.com/amd64/httpd:2.4.57-alpine docker run -it -d -p 80:80 --name datahttpd -v /data/:/var/www/httpd/ hub.atomgit.com/amd64/httpd:2.4.57-alpine 参数说明如下: -i:以交互模式运行容器,通常与-t同时使用。 -t:为容器重新分配一个伪输入终端,通常与-i同时使用。 -d:后台运行容器,并返回容器ID。 -p:端口映射,格式为“宿主机端口:容器端口”。 --name:为容器指定一个名称。 -v:把宿主机上的一个目录挂载到镜像里,格式为“宿主机目录:镜像内挂载的路径”,必须为绝对路径。 上述参数说明中的宿主机表示所创建的弹性云服务器实例。 示例命令表示:使用镜像httpd,以交互模式启动一个容器,将容器的80端口映射到宿主机的80端口,宿主机的目录/data映射到容器的/var/www/httpd目录,并返回容器ID。 查看容器启动情况。 docker ps -a 在浏览器输入弹性云服务器所绑定的弹性公网IP,访问测试容器运行情况。出现以下内容表示运行成功。
  • 简介 本文介绍了如何在华为云上使用弹性云服务器的Linux实例手工部署Docker,并提供了Docker常用操作及简单的镜像制作过程。 表1 Docker相关术语 术语 解释 Docker Docker是开发人员和系统管理员使用容器开发、部署和运行应用程序的平台。 镜像 Docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。 容器 镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。 该指导以“CentOS 7.5 64bit(40GiB)”操作系统为例,Docker要求64位的系统且内核版本至少为3.10。 您还可以选择Solution as Code一键式部署方式自动部署Docker Swarm集群,详细内容请参见快速部署高可用的Docker Swarm集群。
  • 验证部署完成 执行以下命令,在主节点中可查看到sender进程。 # ps aux |grep sender 执行以下命令,从节点中可查看到receiver进程。 # ps aux | grep receiver 执行以下命令,主库中可查看到从库状态。 # su - postgres -bash-4.2# psql replication=# select * from pg_stat_replication; 在主库建一个库,验证备库是否可以同步。 在主库执行以下命令 postgres=# create database testdb; postgres=# \l 在备库执行以下命令查看。 postgres=# \l
  • PostgreSQL是什么? PostgreSQL是一个开源对象关系型数据库管理系统,并侧重于可扩展性和标准的符合性。PostgreSQL面向企业复杂SQL处理的OLTP在线事务处理场景,支持NoSQL数据类型(JSON/XML/hstore),支持GIS地理信息处理,在可靠性、数据完整性方面有良好声誉,适用于互联网网站、位置应用系统、复杂数据对象处理等应用场景。 本文指导您使用华为云弹性云服务器搭建PostgreSQL。
  • 主节点配置 依次执行以下命令,安装PostgreSQL。 # yum update -y # yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm # yum install postgresql11-server # yum install postgresql11 # /usr/pgsql-11/bin/postgresql-11-setup initdb # systemctl enable postgresql-11 # systemctl start postgresql-11 执行以下命令,切换到postgres用户(安装好生成默认的用户)。 # su - postgres 执行以下命令,进入数据库 。 # psql 执行以下命令,创建账号并授权。 create role 账户名 login replication encrypted password '密码'; 上述命令中密码必须用单引号。 以创建的账号名为dbar,密码为xxxxx为例,命令如下: create role dbar login replication encrypted password 'xxxxx'; 执行以下命令,修改/var/lib/pgsql/11/data/pg_hba.conf配置文件,添加如下内容。 # vim /var/lib/pgsql/11/data/pg_hba.conf host all all 192.168.1.0/24 md5 #允许VPC网段中md5密码认证连接 host replication dbar 备库实际IP/24 md5 #允许用户从replication数据库进行数据同步 执行以下命令,修改/var/lib/pgsql/11/data/postgresql.conf。 # vim postgresql.conf wal_level = hot_standby #热备模式 max_wal_senders= 6 #可以设置最多几个流复制链接 wal_sender_timeout = 60s #流复制主机发送数据的超时时间 max_connections = 512 #从库的 max_connections要大于主库 archive_command=’cp %p /var/lib/pgsql/11/data/archivelog/%f’#归档 wal_keep_segments=10240 archive_mode = on #允许归档 listen_addresses= xxx.xx.xx.xx #实际的本地ip地址 执行以下命令,重启服务。 # systemctl restart postgresql-11
  • 从节点配置 依次执行以下命令,完成从节点安装。 # yum update -y # yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm # yum install postgresql11-server # yum install postgresql11 执行以下命令,复制master配置相关文件。 # pg_basebackup -h 主节点ip -U dbar -D /var/lib/pgsql/11/data -X stream -P # cp /usr/pgsql-11/share/recovery.conf.sample /var/lib/pgsql/11/data/recovery.conf 执行以下命令,修改recovery.conf文件。 # vim recovery.conf standby_mode = on # 声明此节点为从库 primary_conninfo = 'host=主节点IP port=5432 user=dbar password=xxxxx(此处密码不能加单引号) trigger_file = '/var/lib/pgsql/11/data/trigger.kenyon' #主从切换时后的触发文件 recovery_target_timeline = 'latest' restore_command = 'cp /var/lib/pgsql/11/data/archivelog/%f %p' archive_cleanup_command = 'pg_archivecleanup /var/lib/pgsql/11/data/archivelog %r' #清除过期归档 执行以下命令,修改postgresql.conf文件。 # chown -R postgres.postgres /var/lib/pgsql/11/data 修改/var/lib/pgsql/11/data/postgresql.conf。 listen_addresses= xxx.xx.xx.xx #实际的本地ip地址 max_connections = 600 执行以下命令,启动服务,设置开机自启。 #systemctl enable postgresql-11 #systemctl start postgresql-11
  • 操作步骤 在华为云市场搜索“企业级开源电子商务系统 Magento”。 单击搜索到的镜像,进入镜像购买界面。 设置要购买弹性云服务器实例的地域、规格、推荐配置和购买方式等信息,并单击“立即购买”。 设置云主机的登录密码,阅读并勾选同意《华为云市场服务协议》和《商品服务协议》。 单击“提交订单”。 当弹性云服务器处于“运行中”后,通过浏览器访问 “http://magento服务器IP地址”,正常会出现如下界面: 单击“Agree and Setup Magento”,开始配置Magento。 单击“Start Readiness Check”,检查安装环境。 检查通过后,单击“Next”,进入数据库配置界面。 填写数据库用户名、密码和数据库名,并单击“Next”。 默认的数据库用户名为“root” ,密码为“maijindou.com” ,数据库名为“test”。 设置网站的访问地址和后台管理地址,并单击“Next”。 请牢记设置的后台管理地址。 设置网店的时区、货币类型和默认语言,并单击“Next”。 该镜像默认不支持中文,如需中文支持需要自行安装中文语言包。 设置管理员用户名和密码,并输入邮箱地址,并单击“Next”。 单击“Install Now”,开始进行安装。 等待安装完成,显示如下界面时,表示系统安装成功。 测试。 打开客户端的计算机,使用浏览器访问“http://magento服务器IP地址”,显示如下图所示的默认界面。 使用浏览器访问“http://magento后台管理地址 ”,并使用配置Magento过程中设置的管理账号和密码登录,登录成功后显示如下图所示的界面。 如果登录后界面提示“One or more indexers are invalid. Make sure your Magento cron job is running.”的错误信息,可在Magento根目录“/var/www/html”执行php bin/magento indexer:reindex命令。 购买 域名 。 为了便于网站的访问和使用,可以给网站设置一个单独的域名,使用域名访问网站。您可以在华为云 域名注册服务 中购买域名,具体步骤请参考域名注册流程。 进行备案。 如果网站未进行备案,且需要使用华为云进行托管,则需要通过华为云备案系统进行备案。具体操作请参见备案流程。 配置域名解析。 配置域名解析后才能使用注册的域名访问网站。具体操作请参见配置域名解析。 例如,配置的域名为“www.example.com”,配置成功后,可在浏览器地址栏中输入“http://www.example.com”访问部署的网站。
  • 简介 本文介绍通过华为云市场镜像“Drupal内容管理系统(LAMP)”搭建Drupal网站的方法。 Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成。Drupal用于构造提供多种功能和服务的动态网站,能支持从个人博客到大型社区等各种不同应用的网站项目。 更多关于Drupal的信息请参考https://www.drupal.org/。