2021 博客搬家手记

每年只有过年这几天才有时间去折腾下自己的博客。今年亦是如此。

来说说今年都干了啥,或者说这次迁移的目的:

首先,作为一个版本控,或者说「不升级就会死星人」,看到 LightSail 终于有了 Debian10 的镜像,就心里痒痒要将现在的 Debian9 换成 Debian10。

然后,一些不合理的地方,例如文件夹设置、数据库的分库分表、各个 Docker 之间的编排,也需要进行一些修改。


本来想着蛮简单的:都是 Docker 嘛,原来的东西打个包,新起一个 LightSail,整体打包挪走,在新机器上展开压缩包,docker-compose up -d,这事儿就算完了。

然而发现,事情并没有这么简单。


以下是常规操作

apt update && apt upgrade -y

# 安装常用软件
apt install zsh git tmux htop p7zip-full -y

# OhMyZsh 增加幸福感
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
chsh admin -s /usr/bin/zsh

# Docker
sh -c "$(curl -fsSL https://get.docker.com)"
curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
usermod -aG docker $(whoami)

# Conda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && sh ./Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda3

# BBR
echo "net.core.default_qdisc = fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control = bbr" >> /etc/sysctl.conf
sysctl -p

# 增加缓存
dd if=/dev/zero of=/var/swapfile bs=1M count=2048
mkswap /var/swapfile
swapon /var/swapfile
sudo echo "/var/swapfile swap swap defaults 0 0" > /etc/fstab

首先发现,数据库挂了。仔细看了下原因,权限不对。解压缩的时候要保留原来机器上所有的权限也都带过来。

tar --no-same-owner -xzvf the_tar_file.tar.gz

然后,备份脚本挂了。挂得很蹊跷。于是重写了备份脚本。

再然后,http 到 https 的强制跳转挂了。这个比较好解决:

server {
     listen       80 default_server;
     #listen      [::]:80 default_server ipv6only=on;
     server_name  _;
    # Redirect HTTP to HTTPS 
    return 301 https://$host$request_uri;
 }

最后,发现 LightSail 真的好弱啊。它的 CPU 使用率只能长时间保持在 10% 以下。如果在 10% 以上,会有额外的计时策略。另外,CPU100% 的时候,会各种卡住,只能重启解决。那么什么情况会 CPU 100% 呢?比如,系统更新,比如,VSCode 安装插件……简直崩溃。

但是用 EC2 又各种麻烦,并且各种贵。目前一个月 5 刀用着还算行,但是换 EC2 的话价格就要翻倍了。

贫困如我。


新年愿望:暴富

也祝各位 2021 暴富

留下评论