前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >腾讯云服务器优化

腾讯云服务器优化

作者头像
zeekling
发布2022-06-17 16:42:57
6820
发布2022-06-17 16:42:57
举报

起因

大概就是在几个月之前本人租了一台服务器用来搭建自己的博客(原来的博客是在阿里云香港服务器上面,在十一期间被和谐了),于是租用了1核1G内存的云服务器(三年800多元),可是在使用的过程中发现cpu和内存占用有点异常,查了下发现以下问题:

  • 服务器上面跑着几个监控软件(并没有什么),占了好多CPU.
  • 服务器没有swap分区,1G虽然够用,但是优点不爽
  • 内存的缓存部分占得比例比较大
  • 磁盘变大了好多,但是本人安装的几个软件都不会占这么多磁盘

所以,就有了如下操作:

删除腾讯云的监控软件

执行下面命令:

代码语言:javascript
复制
bash /usr/local/qcloud/stargate/admin/uninstall.sh
bash /usr/local/qcloud/YunJing/uninst.sh
bash /usr/local/qcloud/monitor/barad/admin/uninstall.sh

增加swap分区

查看自己内存使用状况,并没有swap分区,虽然暂时内存是够用的,但是对于这种有强迫症的人来讲是受不了的.

代码语言:javascript
复制
root@VM-0-17-debian:~# free -h
              total        used        free      shared  buff/cache   available
Mem:           868M        394M        253M        6.0M        220M        342M
Swap:          0         0        0
  • 为自己的服务器创建快照,不管怎么说,在进行危险操作之前进行备份是一个比较好的习惯,可以省去好多麻烦.
  • 执行下面命令创建分区:
代码语言:javascript
复制
dd if=/dev/zero of=/mnt/swap2g bs=1M count=2048
mkswap /mnt/swap2g
swapon /mnt/swap2g
  • 修改/etc/fstab 文件,增加下面数据
代码语言:javascript
复制
/mnt/swap2g          swap                 swap       defaults              0 0

增加完了之后如下所示:

代码语言:javascript
复制
root@VM-0-17-debian:~# cat /etc/fstab
/dev/vda1            /                    ext3       noatime,acl,user_xattr 1 1
proc                 /proc                proc       defaults              0 0
sysfs                /sys                 sysfs      noauto                0 0
debugfs              /sys/kernel/debug    debugfs    noauto                0 0
devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
/mnt/swap2g          swap                 swap       defaults              0 0
  • 修改启动配置,修改文件vi /etc/default/grub,增加下面内容:
代码语言:javascript
复制
GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"
  • 更新启动grub:
代码语言:javascript
复制
update-grub && update-grub
  • 最后一部重启服务器就好了
代码语言:javascript
复制
root@VM-0-17-debian:~# free -h
              total        used        free      shared  buff/cache   available
Mem:           868M        398M        334M        6.0M        135M        338M
Swap:          2.0G         96M        1.9G

参考文档: 腾讯云服务器添加SWAP分区

多余系统日志和buffer内存清理

定时清理

我整理了下面的脚本,加到定时任务里面即可

代码语言:javascript
复制
sync  # 强制将缓存写到磁盘
apt clean # 清理安装软件残留,腾讯云貌似会定时update
echo 3 > /proc/sys/vm/drop_caches  # 释放内存
echo "" > /var/log/btmp  # 和邮件相关的日志,我服务器上面基本用不到,但是居然达到了好几百M大小
cd /var/log/nginx && rm -rf *.gz && rm -rf *.1 # 清理日志
cd /var/log/ && rm -rf *.gz && rm -rf *.1 # 清理日志
cd /var/log && rm -rf auth.log-* # 清理日志

定时任务如下,我写了30分钟,时间有点短,正常自己可以设置到3-6小时左右.

代码语言:javascript
复制
*/30 * * * * bash /usr/local/zeek/clean.sh

journalctl 日志 清理

执行下面命令查看日志大小,如果太小了就不用清理了,我执行的时候比较大.

代码语言:javascript
复制
journalctl --disk-usage

修改 /etc/systemd/journald.conf,主要下面两个配置

代码语言:javascript
复制
SystemMaxUse=16M
ForwardToSyslog=no

然后重启 journald服务:

代码语言:javascript
复制
systemctl restart systemd-journald.service

再次查看日志大小,我这边只剩余18M大小了.

代码语言:javascript
复制
root@VM-0-17-debian:/var/log# journalctl --disk-usage
Archived and active journals take up 18.0M in the file system.

docker 限制内存

限制 lute-http的内存,限制成了这么一点点,也不知道够不够用,从现象来看没什么毛病.

代码语言:javascript
复制
docker run --detach --rm --network=host -m 80M b3log/lute-http

限制 solo博客的内存,300M应该够了吧,

代码语言:javascript
复制
docker run --detach --name solo --network=host -m 300M \
    --env RUNTIME_DB="MYSQL" \
    --env JDBC_USERNAME="root" \
    --env JDBC_PASSWORD="123456" \
    --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
    --env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=UTC" \
    --volume /dockerData/solo/skins/:/opt/solo/skins/ \
    b3log/solo --listen_port=8080 --server_scheme=https --server_host=www.zeekling.cn \
    --lute_http=http://127.0.0.1:8249

ok,这样子服务器就可以搞很多其他事情了。目前我的服务器上面跑了:个人博客gitea私服jsnkins服务,以及各个服务使用到的mysql和redis服务。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.12.21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 起因
  • 删除腾讯云的监控软件
  • 增加swap分区
  • 多余系统日志和buffer内存清理
    • 定时清理
      • journalctl 日志 清理
      • docker 限制内存
      相关产品与服务
      云服务器
      云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档