一次难忘的ESC使用经历
第一部分
自我介绍:我目前就读于四川一所普通的211大学,现在大二,专业是物联网,最近在学习计算机网络,对网络通信很感兴趣。通过室友的闲聊,听说了阿里云“飞天加速计划·高校学生在家实践”。在对云服务器有一定的了解的情况下,尝试了阿里云的云服务器。
在初中的时候,我喜欢和同学玩一款叫做我的世界的游戏,当时特别想自己开一个服务器,但是没有资金支持,自己的技术水平有限,不知道怎么开服务器,连服务器工作的原理也不懂。到大学后我终于有机会用阿里云开服务器,所以很感谢阿里云给我免费试用的机会,让我在一天之内学会了怎么用linux开服务器。
第二部分
阿里云ECS使用攻略
首先是准备工作,我查阅了很多资料和帖子,再申请了一周阿里云的试用时间。
阿里云官方不仅在网页提供了怎么开启实例的教程,而且考虑到我是学生,让客服来电给我提供帮助,让我感觉非常周到。
为了远程连接云服务器,我下载了xshell和winscp
Xshell是一款安全终端模拟软件,各种linux命令如ls都可以在这上面运行。(后来才知道其实阿里云的网页端也能直接打开控制台输命令)
Winscp是一个客户端,用来在本地与远程计算机之间安全地复制文件。
一开始用xshell和winscp连接不上服务器,我便在安全组打开了所有端口,居然成功连接了。
在准备工作完成后,我上传游戏的服务端,是一个.jar格式的文件,然后用yum install下载open-jdk,用java -jar解压服务端文件。
我正以为完事了,没想到发生了JNI错误,上网搜原因,结果是重复安装了JDK造成的
我的解决方法是:1.查看有多少java版本,一个一个移除
2.重新下载jdk包
报错:Error: -jar requires jar file specification
原来是因为自带的openjdk8.0内容太精简,于是我用winscp导入jdk-17-0-1的压缩文件.jar.gz,再进行安装和环境配置。
环境配置内容
update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-17/bin/java 300
update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-17/bin/javac 300
update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java-17/bin/jar 300
加入上面这一段内容,保存并source一下
现在用java -version,javac -version都有版本了
解压服务端没有问题后,我通过install screen命令,让服务端一直在后台运行。
第二天我查看了cpu使用率
cpu使用率并不高,说明性能不错
后来在升级yum的时候,实例卡了很久,重启后服务器文件全部消失了,DDR4内存断电后有可能丢失部分文件,所以得重新配置了。
我这次下载了全新的面板mcsmanager,可以远程通过网页控制服务器的开关。打开端口:23333,不得不说云服务器的公网地址很方便,可以随时随地访问
中途阿里云给我发了一个异地登录的消息,引起的原因暂不知道,应该没有人会登录我的服务器吧
重新下载了paper服务端(据说优化好一点),和一个800M的旧存档。
用screen运行mcsmanager,可以看到它正在运行了
接下来,用yum -y install docker安装docker,关闭SElinux,docker才能访问项目目录
在mcsmanager创建虚拟镜像
开机自启动docker
启动不成功,看了半天结果是最大内存和初始内存写反了
由于服务器规格不大,这次开服把服务器卡死了,xshell能收到响应但是无法控制
在测试的时候,玩家由于移动太快导致服务器关闭,实际上也没有移动多快,应该是地图加载不过来
服务器卡服导致崩溃
我尝试改变server.propertise,也就是服务器配置,把怪物刷新频率和最大区块数调低,把最大延迟时间调高,效果非常好,服务端又能运行起了
因为我的世界这款游戏最大的亮点就是自由度高,我尝试加一点插件,把.jar文件放在plugin文件夹里,重新启动服务器就可以了。插件版本要与游戏版本对应,不然可能出现各种状况。
第三部分
收获总结,展望未来。短短的时间里我学会了xshell,winscp的基本操作,学会了CentOS下载和更新java的方法,学会了设置服务端各种参数,加各种各样的插件、面板等等。从一个服务器小白到较精通服务器的服主,我一路上遇到很多搞不定的问题,网上查找资料和请教同学,不断自我探索。在这个过程中,我更加热爱自己的专业,平时生活里我会更理性地思考,寻找错误的原因,在同学的眼里我变成了一个爱搞技术的“死宅”,我认为做自己热爱的事情,就很不错了。