07-rsync企业真实项目备份案例实战(需求收集--服务器配置---客户端配置---报警机制---数据校验---邮件告警)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 2.需求描述客户端需求:1.客户端每天凌晨1点在服务器本地打包备份(系统配置文件、日志文件、其他目录、应用配置文件)2.客户端备份的数据必须存放至以主机名IP地址当前时间命名的目录中,例如/backup/nfs_192.168.81.210_2020-05-26,其实更好的备份方式/backup/192.168.81.210/nfs_2020-05-26,一会采用后者,要求不只是备份文件,要求连上级目录一并拷过来

rsync企业真实项目备份案例实战

1.环境准备image.png2.需求描述

客户端需求:


1.客户端每天凌晨1点在服务器本地打包备份(系统配置文件、日志文件、其他目录、应用配置文件)


2.客户端备份的数据必须存放至以主机名IP地址当前时间命名的目录中,例如/backup/nfs_192.168.81.210_2020-05-26,其实更好的备份方式/backup/192.168.81.210/nfs_2020-05-26,一会采用后者,要求不只是备份文件,要求连上级目录一并拷过来

3.客户端最后通过rsync推送本地打包好的备份文件至backup服务器


4.客户端服务器本地保留最近7天的数据,避免浪费磁盘空间


分析思路:


1.要备份的文件


系统配置文件:/etc/fstab /etc/hosts /var/spool/cron/root


日志文件:/var/log/messages /var/log/secure


服务配置文件:/etc/rsyncd.conf


2.备份目录:/backup/192.168.81.210/nfs_2020-05-26


3.获取信息


主机名:hostname


ip地址:ifconfig ens33 | awk ‘NR==2{print $2}’ 或者hostname -I | awk ‘{print $2}’


时间:date +%F


目录名:/backup/$(ifconfig ens33 | awk 'NR==2{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 2}̲')/(date +%F)


带目录一起拷贝:cp -p --parents source destion


服务端需求:


1.服务端部署rsync,用户接受客户端推送过来的备份数据


2.服务端需要每天校验客户端推送过来的数据是否完整


3.服务端需要将每天的校验结果通知给管理员


4.服务端仅保留6个月的备份数据,其余全部删除


分析思路:


校验:客户端推送时将校验文件一起推过来,然后使用md5sum -c md5file来校验,如果没有丢失数据会提示ok,要注意md5sum校验时源端数据要和目标端数据路径要保持一致


保留6个月:find 路径 -mtime 180 | xargs rm -rf

3.服务器端配置

3.1.脚本安装rsync守护进程

3.1.1.脚本编写

vim rsyncd_shjc_install.sh 
#!/bin/bash
#批量部署rsync
yum -y install rsync &>/dev/null
echo -e "\e[033m1.rsync install... \e[0m"
cat > /etc/rsyncd.conf <<EOF
uid = rsync
gid = rsync
port 873
fake super = yes
use chroot = no
transfer logging = yes      #记录日志
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = rsync_backup
secrets file = /etc/rsync_passwd
log file = /var/log/rsync/rsync.log
[backup]
comment = backup
path = /backup
EOF
echo -e "\e[033m2.rsync config finish... \e[0m" 
id rsync &> /dev/null
if [ $? -ne 0 ];then
        useradd -M -s /sbin/nolog rsync
fi
if [ ! -e /backup ];then
  mkdir /backup
fi
chown -R rsync:rsync /backup
echo -e "\e[033m3.backup dir finish... \e[0m"
echo "rsync_backup:123456" > /etc/rsync_passwd
chmod 600 /etc/rsync_passwd
echo -e "\e[033m4.rsync auth finish... \e[0m"
systemctl restart rsyncd
systemctl enable rsyncd &>/dev/null
lsof -i:873 &>/dev/null
if [ $? -eq 0 ];then
        echo -e "\e[033m5.rsync finish.....\e[0m"
fi

3.1.2.执行结果

[root@localhost ~]# ./rsyncd_shjc_install.sh 
1.rsync install... 
2.rsync config finish... 
3.backup dir finish... 
4.rsync auth finish... 
5.rsync finish.....

3.1.3.测试是否能用

[root@jxl ~]# rsync -avz rsync_backup@192.168.81.230::backup /tmp/
receiving incremental file list
./
aa1
aa10
aa2
aa3
aa4
aa5
aa6
aa7
aa8
aa9
initial-setup-ks.cfg
sent 240 bytes  received 1,696 bytes  3,872.00 bytes/sec
total size is 1,940  speedup is 1.00

4.rsync扩展

增加两个需求

1.增加一个模块

2.每个模块使用不同的登录认证

4.1.增加新的模块

[root@localhost ~]# cat >>/etc/rsyncd.conf <<EOF
> 
> [mysql_bak]
> comment = mysql back
> path /mysql_data
> EOF
[root@localhost ~]# mkdir -p /mysql_data
[root@localhost ~]# chown -R rsync:rsync /mysql_data
[root@localhost ~]# systemctl restart rsyncd

image.png

4.2.每个模块使用不同的登录名

实现思路很简单,把全局的认证参数放到局部即可

1.编辑配置文件

[root@localhost ~]# vim /etc/rsyncd.conf
uid = rsync
gid = rsync
port 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
log file = /var/log/rsync/rsync.log
[backup]
comment = backup
path = /backup
auth users = rsync_backup
secrets file = /etc/rsync_passwd
[mysql_bak]
comment = mysql back
path = /mysql_data
auth users = rsync_mysqlbak
secrets file = /etc/rsync_mysqlbak_passwd

2.创建认证文件

bakcup模块
[root@localhost ~]# echo "rsync_backup:123456" > /etc/rsync_passwd
mysql_bak模块
[root@localhost ~]# echo "rsync_mysqlbak:123456" > /etc/rsync_mysqlbak_passwd
设置权限
[root@localhost ~]# chmod 600 /etc/rsync*_passwd
[root@localhost ~]# systemctl restart rsyncd

3.验证

bakcup模块
[root@jxl ~]# rsync -avz rsync_backup@192.168.81.230::backup /tmp/
receiving incremental file list
./
sent 27 bytes  received 245 bytes  181.33 bytes/sec
total size is 1,940  speedup is 7.13
mysql_bak模块
[root@jxl ~]# rsync -avz rsync_mysqlbak@192.168.81.230::mysql_bak /tmp/
receiving incremental file list
./
mysql01.sql
mysql02.sql
mysql03.sql
mysql04.sql
mysql05.sql
mysql06.sql
mysql07.sql
mysql08.sql
mysql09.sql
mysql10.sql
sent 221 bytes  received 604 bytes  550.00 bytes/sec
total size is 0  speedup is 0.00

5.客户端配置

初步配置,仅在本地生成目录

5.1.安装rsync包

[root@jxl ~]# yum -y install rsync

5.2.定义密码文件或者变量

如果密码相同强烈建议使用变量,密码不相同一定要用密码文件

--password-file=
export RSYNC_PASSWORD=

5.3.编写脚本,将需要备份的文件拷贝至备份目录

#!/bin/bash
#定义环境变量
export Host=$(hostname)
export IP=$(ifconfig ens33 | awk 'NR==2{print $2}')
export Day=$(date +%F)
export Backup_dir=/backup
export Dest_local_dir=${Backup_dir}/${IP}/${Host}_${Day}
export Dest_rsync_dir=${Backup_dir}/${IP}
export Rsync_ip=192.168.81.230
export Rsync_user=rsync_backup
export Rsync_module=backup
export RSYNC_PASSWORD=123456
#创建备份目录
if [ ! -e $Dest_local_dir ];then
        mkdir -p $Dest_local_dir
fi
#收集需要备份的文件
#sysconf backup
cp -p --parents /etc/fstab /etc/hosts /var/spool/cron/root $Dest_local_dir
#logs backup
cp -p --parents /var/log/messages /var/log/secure $Dest_local_dir
#serverconf backup
cp -p --parents /etc/rsyncd.conf $Dest_local_dir
#推送数据
rsync -avz $Dest_rsync_dir $Rsync_user@$Rsync_ip::$Rsync_module
#只保留七天内的文件
find $Dest_rsync_dir -type d -mtime +7 | xargs rm -rf

5.4.执行脚本

[root@web scripts]# sh -n rsyncd_backup.sh    
[root@web scripts]# sh -vx rsyncd_backup.sh

5.5.观察本地生成的目录

改个时间在执行一次
[root@web ~]# tree /backup/
/backup/
└── 192.168.81.220
    └── web_2020-05-28
        ├── logs.tar.gz
        ├── md5_check
        ├── serverconf.tar.gz
        └── sysconf.tar.gz
2 directories, 4 files

5.6.观察rsync服务端生成的目录

[root@backup ~]# tree /backup/
/backup/
└── 192.168.81.220
    └── web_2020-05-28
        ├── logs.tar.gz
        ├── md5_check
        ├── serverconf.tar.gz
        └── sysconf.tar.gz
2 directories, 4 files

6.客户端/服务端高级脚本配置响应需求

6.1.客户端高级配置

1.客户端每天凌晨1点在服务器本地打包备份

[root@web scripts]# crontab -l
0 1 * * * /usr/bin/bash /scripts/rsyncd_backup.sh

2.脚本内容—打包备份

#将收集的文件打包
#sysconf backup
tar cfzP $Dest_local_dir/sysconf.tar.gz /etc/fstab /etc/hosts /var/spool/cron/root
#logs backup
tar cfzP $Dest_local_dir/logs.tar.gz /var/log/messages /var/log/secure
#serverconf backup
tar cfzP $Dest_local_dir/serverconf.tar.gz /etc/rsyncd.conf

3.客户端备份的数据必须存放至以IP地址/主机名当前时间命名的目录

export Host=$(hostname)
export IP=$(ifconfig ens33 | awk 'NR==2{print $2}')
export Day=$(date +%F)
export Backup_dir=/backup
export Dest_local_dir=${Backup_dir}/${IP}/${Host}_${Day}
export Dest_rsync_dir=${Backup_dir}/${IP}
if [ ! -e $Dest_local_dir ];then
        mkdir -p $Dest_local_dir
fi

4.客户端最后通过rsync推送本地打包好的备份文件至backup服务器

export Dest_rsync_dir=${Backup_dir}/${IP}
export Rsync_ip=192.168.81.230
export Rsync_user=rsync_backup
export Rsync_module=backup
export RSYNC_PASSWORD=123456
rsync -avz $Dest_rsync_dir $Rsync_user@$Rsync_ip::$Rsync_module

5.客户端服务器本地保留最近7天的数据,避免浪费磁盘空间

#只保留七天内的文件
find $Dest_rsync_dir -type d -mtime +7 | xargs rm -rf

6.2.服务端高级配置

写死情况(不建议使用)

1.服务端需要每天校验客户端推送过来的数据是否完整并通知管理员

#检测web数据是否完整
md5sum -c ${Checkweb_dir}/${Md5sum_file}
if [ $? -ne 0 ];then
        echo -e "\e[031m${Rsync_web}数据校验不完整\e[0m" | mail -s "check ${Rsync_web} error " 15910468023@163.com
else
        echo -e "\e[032m${Rsync_web}数据校验完整\e[0m" | mail -s "check ${Rsync_web} ok " 15910468023@163.com
fi
#检测nfs数据是否完整
md5sum -c $Checknfs_dir/${Md5sum_file}
if [ $? -ne 0 ];then
        echo -e "\e[031m${Rsync_nfs}数据校验不完整\e[0m" | mail -s "check ${Rsync_nfs} error " 15910468023@163.com
else
        echo -e "\e[032m${Rsync_nfs}数据校验完整\e[0m" | mail -s "check ${Rsync_nfs} ok " 15910468023@163.com
fi

2.服务端仅保留6个月的备份数据,其余全部删除

#删除60天外的数据
find $Backup_rsyncweb_dir -type d -mtime +180 |xargs rm -rf
find $Backup_rsyncnfs_dir -type d -mtime +180 |xargs rm -rf

使用通配符(强烈建议)

[root@backup@scripts]# vim rsyncd_sjjy2.sh 
#!/bin/bash
#rsync数据校验
export Backup_dir=/backup
export Result_dir=${Backup_dir}/result
export Day=$(date +%F)
export Md5_file=md5_check
export Result_file=result_${Day}.txt
export Rsync_dir=${Backup_dir}/*/*_${Day}
export Jiaoyanfile_path=$Rsync_dir/${Md5_file}
export Resultfile_path=${Result_dir}/${Result_file}
export Rmdir_dir=${Backup_dir}/*/*
#根据校验情况发送邮件
md5sum -c $Jiaoyanfile_path
if [ $? -eq 0  ];then
        md5sum -c $Jiaoyanfile_path | tee -a  $Resultfile_path
        mail -s "rsync backup jiaoyan is ok..." 15910468023@163.com < $Resultfile_path
else
        md5sum -c $Jiaoyanfile_path | tee -a  $Resultfile_path
        mail -s "rsync backup jiaoyan is fail..." 15910468023@163.com < $Resultfile_path
fi
#删除6个月之前的文件
find ${Rmdir_dir}/ -type d -mtime +180 | xargs rm -rf
find ${Result_dir}/ -type f -mtime +180 | xargs rm -rf

7.整个脚本内容

客户端

[root@web scripts]# vim rsyncd_backup.sh 
#!/bin/bash
#定义环境变量
export Host=$(hostname)
export IP=$(ifconfig ens33 | awk 'NR==2{print $2}')
export Day=$(date +%F)
export Backup_dir=/backup
export Dest_local_dir=${Backup_dir}/${IP}/${Host}_${Day}
export Dest_rsync_dir=${Backup_dir}/${IP}
export Rsync_ip=192.168.81.230
export Rsync_user=rsync_backup
export Rsync_module=backup
export RSYNC_PASSWORD=123456
#创建备份目录
if [ ! -e $Dest_local_dir ];then
        mkdir -p $Dest_local_dir
fi
#收集需要备份的文件
#sysconf backup
#cp -p --parents /etc/fstab /etc/hosts /var/spool/cron/root $Dest_local_dir
#logs backup
#cp -p --parents /var/log/messages /var/log/secure $Dest_local_dir
#serverconf backup
#cp -p --parents /etc/rsyncd.conf $Dest_local_dir
#将收集的文件打包
#sysconf backup
tar cfzP $Dest_local_dir/sysconf.tar.gz /etc/fstab /etc/hosts /var/spool/cron/root
#logs backup
tar cfzP $Dest_local_dir/logs.tar.gz /var/log/messages /var/log/secure
#serverconf backup
tar cfzP $Dest_local_dir/serverconf.tar.gz /etc/rsyncd.conf
#md5校验
md5sum $Dest_local_dir/* > $Dest_local_dir/md5_check
#推送数据
rsync -avz $Dest_rsync_dir $Rsync_user@$Rsync_ip::$Rsync_module
#只保留七天内的文件
find $Dest_rsync_dir -type d -mtime +7 | xargs rm -rf
#Host变量是主机名       IP变量是当前主机的ip地址        Day变量是当前服务器的日期       Backup_dir变量表示本地的备份目录
#Dest_local_dir变量表示存放在备份目录的那个子目录----父目录/IP目录/日期目录
#Dest_rsync_dir变量表示将本地那个目录同步到rsync服务端
#Rsync_ip变量表示远程rsync服务器的ip地址        #Rsync_user变量表示rsync的管理用户      #Rsync_ip变量表示rsync服务器的ip地址
#Rsync_module变量表示rsync的模块名      #RSYNC_PASSWORD变量表示rsync的密码

服务端

[root@backup@scripts]# vim rsyncd_sjjy2.sh 
#!/bin/bash
#rsync数据校验
export Backup_dir=/backup
export Result_dir=${Backup_dir}/result
export Day=$(date +%F)
export Md5_file=md5_check
export Result_file=result_${Day}.txt
export Rsync_dir=${Backup_dir}/*/*_${Day}
export Jiaoyanfile_path=$Rsync_dir/${Md5_file}
export Resultfile_path=${Result_dir}/${Result_file}
export Rmdir_dir=${Backup_dir}/*/*
#根据校验情况发送邮件
md5sum -c $Jiaoyanfile_path
if [ $? -eq 0  ];then
        md5sum -c $Jiaoyanfile_path | tee -a  $Resultfile_path
        mail -s "rsync backup jiaoyan is ok..." 15910468023@163.com < $Resultfile_path
else
        md5sum -c $Jiaoyanfile_path | tee -a  $Resultfile_path
        mail -s "rsync backup jiaoyan is fail..." 15910468023@163.com < $Resultfile_path
fi
#删除6个月之前的文件
find ${Rmdir_dir}/ -type d -mtime +180 | xargs rm -rf
find ${Result_dir}/ -type f -mtime +180 | xargs rm -rf
#Backup_dir表示备份目录         Result_dir表示校验结果存放目录          Day表示当前日期
#Md5_file表示md5校验文件名      Result_file表示校验结果文件名           Rsync_dir表示每日rsync增量的目录路径
#Jiaoyanfile_path表示校验文件所在路径   Resultfile_path表示校验结果文件所在路径         Rmdir表示要删哪些目录

8.测试脚本可用

for命令造数据

[root@web scripts]# for i in {1..28};do date -s 2020/01/$i && sh rsyncd_backup.sh ; done

服务端就有了image.png执行服务端脚本验证保留180天

客户端疯狂造数据,180天前的多造一些,180天内的也造一些
for i in {1..28};do date -s 2019/10/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2019/11/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2019/12/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2020/01/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2020/02/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2020/03/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2020/05/$i && sh rsyncd_backup.sh ; done
for i in {1..28};do date -s 2020/06/$i && sh rsyncd_backup.sh ; done
服务端执行脚本
[root@backup scripts]# sh rsyncd_sjjy.sh 

验证后只有60天内的数据image.png

9.rsync使用163发送邮件提醒管理员

9.1.服务端配置

安装mailx
[root@backup@scripts]# yum -y install mailx
在配置文件最后加入
[root@backup@scripts]# vim /etc/mail.rc 
set from=15910468023@163.com        //邮箱地址
set smtp=smtps://smtp.163.com         //邮箱smtp地址
set smtp-auth-user=15910468023@163.com    //邮箱地址
set smtp-auth-password=CPDBDXEGKVXJZHMB     //smtp生成的校验码
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb/

9.2.编写rsync校验脚本

[root@backup@scripts]# vim rsyncd_sjjy2.sh 
#!/bin/bash
#rsync数据校验
export Backup_dir=/backup
export Result_dir=${Backup_dir}/result
export Day=$(date +%F)
export Md5_file=md5_check
export Result_file=result_${Day}.txt
export Rsync_dir=${Backup_dir}/*/*_${Day}
export Jiaoyanfile_path=$Rsync_dir/${Md5_file}
export Resultfile_path=${Result_dir}/${Result_file}
export Rmdir_dir=${Backup_dir}/*/*
#根据校验情况发送邮件
md5sum -c $Jiaoyanfile_path
if [ $? -eq 0  ];then
        md5sum -c $Jiaoyanfile_path | tee -a  $Resultfile_path
        mail -s "rsync backup jiaoyan is ok..." 15910468023@163.com < $Resultfile_path
else
        md5sum -c $Jiaoyanfile_path | tee -a  $Resultfile_path
        mail -s "rsync backup jiaoyan is fail..." 15910468023@163.com < $Resultfile_path
fi
#删除6个月之前的文件
find ${Rmdir_dir}/ -type d -mtime +180 | xargs rm -rf
find ${Result_dir}/ -type f -mtime +180 | xargs rm -rf
#Backup_dir表示备份目录         Result_dir表示校验结果存放目录          Day表示当前日期
#Md5_file表示md5校验文件名      Result_file表示校验结果文件名           Rsync_dir表示每日rsync增量的目录路径
#Jiaoyanfile_path表示校验文件所在路径   Resultfile_path表示校验结果文件所在路径         Rmdir表示要删哪些目录

9.3.163邮箱开启smtp并生成校验码

1.进入163邮箱点击设置—POP3/SMTPIMAP


image.png


2.选择开启


image.png


3.发送短信生成校验码

image.png


4.复制校验码到mailx的配置文件中

image.png


5.Linux端发送邮件,提示已收到

image.png

6.根据rsync校验脚本生成结果并发送到163邮箱

校验正常

image.png

校验失败

image.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
11天前
|
JavaScript 前端开发 应用服务中间件
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
这篇文章分析了Vue项目在服务器部署后出现404错误的原因,主要是由于history路由模式下服务器缺少对单页应用的支持,并提供了通过修改nginx配置使用`try_files`指令重定向所有请求到`index.html`的解决方案。
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
|
3天前
|
缓存 应用服务中间件 nginx
Web服务器的缓存机制与内容分发网络(CDN)
【8月更文第28天】随着互联网应用的发展,用户对网站响应速度的要求越来越高。为了提升用户体验,Web服务器通常会采用多种技术手段来优化页面加载速度,其中最重要的两种技术就是缓存机制和内容分发网络(CDN)。本文将深入探讨这两种技术的工作原理及其实现方法,并通过具体的代码示例加以说明。
23 1
|
13天前
|
关系型数据库 MySQL Java
腾讯云服务器的使用、服务器中使用Docker安装常见的软件、如何将一个项目发布到服务器
这篇文章介绍了在腾讯云服务器上使用Docker安装常见软件的过程,包括安装MySQL、Redis和Tomcat,并提供了解决连接问题的方法。同时,还涉及了服务器中安装JDK 1.8的步骤和如何将项目打包部署到服务器上的指导,包括注意事项和操作提示。
腾讯云服务器的使用、服务器中使用Docker安装常见的软件、如何将一个项目发布到服务器
|
3天前
|
运维 数据安全/隐私保护 数据库管理
企业实战项目之服务器用户权限集中管理
企业实战项目之服务器用户权限集中管理
|
9天前
|
Java
Java使用FileInputStream&&FileOutputStream模拟客户端向服务器端上传文件(单线程)
Java使用FileInputStream&&FileOutputStream模拟客户端向服务器端上传文件(单线程)
26 1
|
13天前
|
关系型数据库 MySQL Linux
数据类型和运算符(MySQL服务器的安装,MySQL客户端,数据类型,运算符,MySQL的语法规范)
无论是对于初学者还是有经验的开发者,了解MySQL的安装、客户端使用、数据类型、运算符和语法规范都是至关重要的。这不仅有助于高效地管理和查询数据,而且对于设计和实现数据库解决方案来说是基础工作。通过深入学习和实践这些知识,您可以更好地发挥MySQL数据库的强大功能。
13 2
|
14天前
|
网络协议 安全 Unix
6! 用Python脚本演示TCP 服务器与客户端通信过程!
6! 用Python脚本演示TCP 服务器与客户端通信过程!
|
15天前
|
JSON 前端开发 JavaScript
Web中的客户端和服务器端
Web中的客户端和服务器端
|
7天前
|
存储 网络协议 物联网
网络中的“客户端”和“服务器
【8月更文挑战第24天】
18 0
|
16天前
|
机器学习/深度学习 编解码 人工智能
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
随着人工智能、大数据和深度学习等领域的快速发展,GPU服务器的需求日益增长。阿里云的GPU服务器凭借强大的计算能力和灵活的资源配置,成为众多用户的首选。很多用户比较关心gpu云服务器的收费标准与活动价格情况,目前计算型gn6v实例云服务器一周价格为2138.27元/1周起,月付价格为3830.00元/1个月起;计算型gn7i实例云服务器一周价格为1793.30元/1周起,月付价格为3213.99元/1个月起;计算型 gn6i实例云服务器一周价格为942.11元/1周起,月付价格为1694.00元/1个月起。本文为大家整理汇总了gpu云服务器的最新收费标准与活动价格情况,以供参考。
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析

热门文章

最新文章

下一篇
云函数