分类: 云计算

云计算

使用阿里云云服务器两年多的感受

云主机和VPS的区别

 

我觉得了解阿里云,首先就要弄清楚这两个概念。很多站长根本不懂什么叫云主机,就拿阿里云的和Linode,甚至和西部数码之类的去比。这些完全没有可比性。我这里不是说Linode不好,只是因为不是一个概念。Linode在VPS届算是王者了。但是阿里云是云主机,不是VPS。

 

要了解什么是云主机,其实就是在谈架构。像我等小屁孩其实根本不配谈神马架构之说,所以我只是简单介绍下,具体想更深入地了解,请自己努力升级吧。

VPS,虚拟服务器,就是在一台物理服务器(我们称之为母机)上根据某种虚拟方式划分出虚拟机,说白了,和你自己在你的电脑上装个Virtualbox,开几个虚拟机没啥区别。也就是说,这个VPS是依赖于这台母机的,一旦母机挂了,那你的VPS肯定会挂。另外,这台母机上的所有的VPS全部依赖于母机的资源,平分母机的资源(当然这要看VPS服务商如何去划分VPS了),共享母机的带宽,共享母机的CPU、硬盘、内存等等资源。也就是说,你在VPS里面看到的硬盘,就是存放在母机的硬盘上的某个很大的文件,所以VPS的磁盘IO。

 

是要看母机的硬盘好坏的,母机的磁盘越好,比如SSD,那么你的VPS的磁盘IO速度越高。同理,其他的资源,如带宽、CPU、内存也类似。那么,如果你在VPS里面写入一个文件,就是写到了母机的硬盘上,和你自己用台式机新建一个文件到你的硬盘上,基本没有区别。

 

而云主机则不一样。云主机是架构在“云”上的,我这么说是有点玄乎,所以很多站长其实不懂什么叫云。云简单地说,或者说我的理解,就是集群。对于阿里云的云服务器,很重要的一个区别就是,你在阿里云的云服务器里面看到的硬盘,肯定不是和你的云服务器在一台物理服务器上的。阿里云的云服务器中的硬盘完全是放在单独的网络存储集群上。根据我自己跟阿里云同事的了解,阿里云的存储集群是网络存储,每份数据会在集群上的不同位置保存3份,任何一份丢失都不影响,这样完全保证了存储的高可用性和数据完整性。也就是说,你在云服务器里面写入一个文件,那么其实是通过网络(内网)的传输到另外某n台服务器上,写到他们的硬盘上。这就是集群。

 

这就是云主机和VPS的主要区别。类似的,像AWS就是云主机,他们的硬盘也是云存储,也是需要单独挂载的。

 

那有人可能会问,SAE算云主机吗?其实我个人觉得,他不是的。SAE和GAE、BAE一样,都是App Engine,这也是他们名字里面为啥都有AE的原因,也就是说,你在云服务器里面的网站代码基本上不太能直接放到上面用的,要根据他们的环境修改你的代码才可以运行。

 

阿里云好在哪儿?

 

前面的VPS和云主机的区别是基础,理解了这个就更方便地理解了阿里云云主机的优势所在:

 

可用性强

 

网站*重要的就是可用性了,以及数据的安全,如果哪个IDC动不动数据就全部丢失了,我想没哪个站长敢用。其实我之前和很多站长一样,都是对国内的IDC有偏见的。这也是我为啥*个网站是选择国外的虚拟主机。其实在很多站长的眼里,国外的那些大的IDC才靠谱,数据放在他们那里才不会丢失。所以Linode这样的VPS以及像Hostmonster这样的虚拟主机商才被国内的人看好,说实话,他们做的确实不错,我这些都用过,数据真没有丢失过。

 

刚开始用阿里云的时候,说实话,我对阿里云也是不放心的,所以我的数据全部通过rsync同步到了国外的AWS上,每天一备份,数据库也做了主从同步。后来当我用了一年多,以及对阿里云的了解更加深入之后,我才发现,我的担心多余了。

 

先要从架构角度去说。好吧,又要谈到架构了,很多站长可能不知道,阿里云的云主机是架构在非常著名的飞天云计算系统上。你可能不知道,但是了解架构的技术员都会知道,这是淘宝、天猫等都在用的底层架构,你有看到过淘宝和天猫挂掉吗?(当然一两个页面偶尔不能访问和这个没关系,很多是上层应用的问题),相反,再看看京东、苏宁之流,搞个小活动动不动服务器就瘫了,你有看到双11的时候,大家在0点疯抢天猫红包的时候,天猫有挂掉吗?我想没有吧。这都得益于整个底层架构啊。你想想,你的云主机和天猫都是架构在同一种集群上,你能不放心吗?相反,你再想想那些自称自己是“云”的所谓VPS服务商,搞个VPS就叫云来骗人,你敢用吗?只要母机一挂,你的VPS就挂了。再者,相比很多人都知道AWS曾经出现过很大的故障,但是你看过淘宝和天猫这几年有出过这么大的故障么?

 

再谈数据。数据我也不用说太多了,刚才在说架构的时候已经谈过了。普通VPS的数据是写到母机的硬盘上的,其实大家都知道,硬盘是易耗品,本身机械硬盘还是会出故障,用个两三年,说不定就出故障了,而且母机的硬盘坏掉了,你的数据肯定就回不来了,一般的VPS服务商也不会花巨款去给你恢复数据的。所以很多VPS商才声称自己做了RAID几几之类的。RAID是个好技术,是能保证一定的数据完整性的,但是还是几块硬盘,还是会坏,所以Linode有单独的备份系统。

 

阿里云就不一样了,刚才说过了,阿里云的云主机的硬盘是放在单独的网络存储集群上,而且你的数据每份都给保存3份,你每次写入一次数据,就会通过集群的交换机写入到集群的不同位置上。集群*重要的特点就是数据高可用,这么大的集群,随便坏掉几块硬盘影响么?直接拿另外地方存储的数据同步过来就行了。那你会问,如果这3份数据所在的硬盘都坏掉了,那岂不是就没救了?好吧,其实我告诉你,这相当于你从一个沙滩上画出一平方米(当然只是假设啊,别当真),然后从这一平方米里面选3粒沙子,然后涂上颜色,然后混入到这一平方米里面,蒙上眼睛,再把这3粒沙子一起挑出来,你觉得这和你中5百万有啥区别呢。。。除非整个集群或者集群的百分之几十挂掉,才能轮到你的数据丢失吧,不过话说回来了,你在淘宝上注册的帐号有丢失过么(排除自己的违规导致删号一类的)?

 

而且,拿我自身体验来说,除了我自己手动重启以外,阿里云的主机还真没出现过问题,我*长大概是6个月没重启过我的云服务器了,之前有TOP命令截图,本来想贴出来的,但是不好意思,找不到了。

 

前几个月,阿里云推出了敢用敢赔的服务,100倍赔偿,就是说,如果你的云主机因为阿里云的故障导致当机1天,那他们会免费赠送你100天,都承诺到这种地步了,我想目前国内没几个做IDC的敢这么承诺吧?

 

所以,用阿里云,尽管放心。这一点,可以满分。
————————————————

原文链接:https://blog.csdn.net/yangyz1984/article/details/84682581

本地远程连接阿里云服务器步骤

*步:购买阿里云云服务器后进入实例

%title插图%num

 

第二步:把ip地址复制下来一定记住复制公网的ip,本人因为一直用私有ip进行本地远程连接,连接了半天也没有连接上,不是本人傻,确实因为百度出来的东西很多都是错的,傻傻的跟着做,结果却是错的。

%title插图%num

第三步:运行mstsc命令:直接按快捷键WIN键+R快速调出运行小窗口,输入远程桌面连接mstsc。

第四步:粘贴刚才复制的公网ip

%title插图%num

第五步:输入你服务器的用户的密码(这里需要注意,购买阿里云云服务器后,这里的用户密码是默认的,很多人不知道默认的密码是多少,但是我们可以自己去修改,修改的方法在本文的*下面)

%title插图%num

第六步:选择“是”

%title插图%num

修改用户密码的步骤:

*步:进入实例–点击更多

%title插图%num

第二步:找到密码/秘钥–选择重置密码 进行修改

%title插图%num

————————————————

原文链接:https://blog.csdn.net/qq_38922435/article/details/80740582

SSH连接AWS服务器的方法

一、获取服务器连接指令

拿到机器后,使用ssh连接服务器,用户名是ubuntu。

%title插图%num

%title插图%num

打开命令行,输入上面的那条指令,将root换成ubuntu。

%title插图%num

注:如果提示下面的问题

%title插图%num

则调整安全组

%title插图%num

%title插图%num

二、检查显卡驱动是否安装

这里有个坑就是显卡驱动。尽管镜像中本来安装好了驱动,由于挂载盘特性,驱动会可能被系统屏蔽,需要重新安装,或者是屏蔽某系统文件。

首先,检查是否有驱动:

nvidia-smi

如果显示:

%title插图%num

则已经有驱动了,不需要安装。

否则,提示这个

%title插图%num

则你需要安装驱动。安装过程见《AWS服务器中装CUDA》。

 

阿里云OSS SDK(.NET4.5)开源代码

参加阿里云开发比赛,准备用C#做个oss客户端,发现原来的.net开发包不太好用。
正逢微软发布vs2012和 .net4.5,在原来的.net sdk代码基础上重写了SDK。接口与原来的SDK基本保持一致。
目前sdk还处于测试和代码优化阶段,我正在用它做个metro风格的客户端。欢迎大家测试和建议。
新SDK API基于TPL (Task Parallel Library)。

增加了以下功能:

1 所有api可以用async, await很方便的调用异步操作请求。
2 put和get object的api带HttpProcess callback的Action参数,可以回调下载以及上传的数据进度。
3 增加MultiPart Upload的api

源代码地址: https://github.com/ZhongleiYang/OssSDK-.net-4.5
注:需要安装vs2012
————————————————

原文链接:https://blog.csdn.net/zhleiyang/article/details/7967425

AWS使用过程中遇到的问题

RDS连接不上数据库的排除办法
检查RDS的安全组。初次尝试,数据库连不上;后面又重试着不使用默认的安全组进行配置,可以连上。这里有一个检测是否可以成功连接的命令,如果连不上,可以试试这样能不能检测到连接。

%title插图%num

https://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/CHAP_Troubleshooting.html

EC2安装的数据库无法连接

%title插图%num
确保3306端口已经打开。

确保已经在MySQL的配置文件中,改成允许远程访问。
系统相关信息如下:

%title插图%num

MySQL版本后面因为删掉了,版本信息找不到了。这个配置文件的路径就当一个参考吧,到时候可能还需要自己找一找这个配置文件的路径。
配置文件路径:/etc/mysql/mysql.conf.d/mysqld.cnf

%title插图%num

如果root密码已经忘记,那么可以考虑使用mysqladmin等一系列操作重设MySQL的root密码
————————————————
版权声明:本文为CSDN博主「肥鱼先生」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/asahinokawa/article/details/84586686

k8s中通过aws sdk访问s3遇到的坑

背景

公司有一套基于k8s的paas系统,现在pod中安装了aws 命令行工具

RUN apk add py-pip && pip install awscli
  • 1

可以使用命令直接get、put文件,如下:

%title插图%num

由于java使用命令行时可能会出现卡死现象,所以这里想使用aws提供的sdk来直接上传下载文件。
默认有两种方式,一种是程序中配置key:

%title插图%num

另外一种如下:

%title插图%num

报错
报错一:java.lang.IllegalArgumentException: profile file cannot be null
原因:这里是没找到配置文件,~/.aws/credentials
解决方案:
在dorker中需要直接使用下面方式来初始化s3client

%title插图%num

*终初始化代码如下:

%title插图%num

 

报错二:Amazon S3 exception: “The specified key does not exist”
详细报错:

%title插图%num

代码如下:

%title插图%num

原因:这里是只找不到文件
解决方案:检查s3上的文件路径是否正确,
举个例子:s3://bucket_name/aa/bb/mm.csv
这里的fileName参数应该传“aa/bb/mm.csv”;

报错三:/data/xx/xx/aa.csv not exists
这个原因比较明显,是目标文件找不到,请先确认号父目录是否创建
————————————————

原文链接:https://blog.csdn.net/lp19861126/article/details/106901443

AWS SDK 访问阿里云 OSS

S3 已经成为云对象存储领域的规范,主流的对象存储都有对它的支持。阿里云 OSS 也支持 S3 协议,我们可以使用AWS的SDK对其进行操作,当然由于OSS与S3在功能和实现上的差别,OSS 不可能支持所有的AWS S3操作,但是,对于日常大部分操作,它都是支持的。

##AWS CLI
aws configure –p aliyun
aws configure set s3.addressing_style virtual –p aliyun
aws s3 ls –endpoint-url http://oss-cn-hangzhou.aliyuncs.com –p aliyun
##AWS JAVA SDK
获取AWS JAVA SDK(maven)

%title插图%num

示例代码

%title插图%num

##AWS PYTHON SDK

  • 获取AWS PYTHON SDK
    %title插图%num
    示例代码
    %title插图%num

    ##AWS GO SDK

    • 获取AWS GO SDK
      %title插图%num
      
      

      ##AWS PHP SDK

      • 获取AWS PHP SDK
      • %title插图%num

 

示例代码

%title插图%num

windows环境下java本地连接aws开发

1.首先需要参照本博客地址windows 安装aws cli 安装好aws cli,确保在dos命令行可以正常使用aws命令,正确安装好后会在当前用户目录下.aws文件夹下对应的密钥信息

2.java连接(可直接参照代码进行连接)

%title插图%num

这样便可以正常连接了。

————————————————

原文链接:https://blog.csdn.net/zhouyan8603/article/details/56015144

友情链接: SITEMAP | 旋风加速器官网 | 旋风软件中心 | textarea | 黑洞加速器 | jiaohess | 老王加速器 | 烧饼哥加速器 | 小蓝鸟 | tiktok加速器 | 旋风加速度器 | 旋风加速 | quickq加速器 | 飞驰加速器 | 飞鸟加速器 | 狗急加速器 | hammer加速器 | trafficace | 原子加速器 | 葫芦加速器 | 麦旋风 | 油管加速器 | anycastly | INS加速器 | INS加速器免费版 | 免费vqn加速外网 | 旋风加速器 | 快橙加速器 | 啊哈加速器 | 迷雾通 | 优途加速器 | 海外播 | 坚果加速器 | 海外vqn加速 | 蘑菇加速器 | 毛豆加速器 | 接码平台 | 接码S | 西柚加速器 | 快柠檬加速器 | 黑洞加速 | falemon | 快橙加速器 | anycast加速器 | ibaidu | moneytreeblog | 坚果加速器 | 派币加速器 | 飞鸟加速器 | 毛豆APP | PIKPAK | 安卓vqn免费 | 一元机场加速器 | 一元机场 | 老王加速器 | 黑洞加速器 | 白石山 | 小牛加速器 | 黑洞加速 | 迷雾通官网 | 迷雾通 | 迷雾通加速器 | 十大免费加速神器 | 猎豹加速器 | 蚂蚁加速器 | 坚果加速器 | 黑洞加速 | 银河加速器 | 猎豹加速器 | 海鸥加速器 | 芒果加速器 | 小牛加速器 | 极光加速器 | 黑洞加速 | movabletype中文网 | 猎豹加速器官网 | 烧饼哥加速器官网 | 旋风加速器度器 | 哔咔漫画 | PicACG | 雷霆加速