如何在其他云厂商启动 Tencent Linux 3.1

前言

当前腾讯云 TKE 提供了一个内测功能,允许接入第三方服务器进行管理。

我司由于某些特殊原因,不得不在某厂商购买云服务器。为了把这部分资源盘活,我临危受命研究如何利用腾讯云 TKE 的这个新功能,将某厂商的云服务器接入腾讯云 TKE 管理。

与边缘集群不同,TKE 提供的第三方节点池功能,是必须要走内网的。

也就意味着,当前腾讯云 VPC 必须要通过云联网 + VPN 的方式,和待接入厂商的内网打通,这一点已经事先处理好了。

我把第三方节点池接入脚本复制到服务器上执行,到处报错。由于是内测功能,文档一塌糊涂,各处语焉不详。

我仔细读了下脚本内容,发现这个坑爹的第三方节点池居然强制要求当前操作系统是 Tencent Linux 3.x 版本。

于是就引出了今天的主题,如何将坑爹的 Tencent Linux 3.x 部署到其他云厂商

第一次尝试

我的想法很简单,找到 VMDK 或者 QCOW2 镜像,导入第三方厂商,直接启动一气呵成。

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

我在腾讯云文档的犄角旮旯里面找到了镜像下载地址

https://cloud.tencent.com/document/product/213/53540

将 QCOW2 导入到第三方厂商,启动服务器,然后 SSH 连接毫无反应。

非常诡异的是,SSH 连接并没有报告“被拒绝”,而是长时间卡死,最终超时。

这意味着服务器启动了,但是没有完全启动,有什么问题阻止了系统启动流程。

尝试使用 ISO

俺寻思 QCOW2 不行,大不了我使用 ISO 镜像嘛。把系统安装到 Vmware 虚拟机内,然后把 VMDK 导入到第三方厂商,也能启动服务器。

然而这个 ISO 镜像的使用,让我一眼难尽。各种报错,各种找不到命令,我试了好几个版本,愣是没有找到一个能成功在虚拟机里面完成安装的。

再战 QCOW2

我使用 qemu-img 工具,把 QCOW2 转换为 VMDK 镜像,在 VMWare 上启动后,终于找到了之前镜像无法启动的原因了。

Tencent Linux 镜像的 cloud-init 脚本依赖了腾讯云内部的一个固定的 metadata 服务器地址,在腾讯云外执行会出现连接错误,反复重试,进而导致启动无法完成。

那么答案只有一个,就是魔改 QCOW2

使用 guestfs-tools 工具,把 QCOW2 镜像挂载到本地目录,直接在 etc/cloud 里面进行一个 touch cloud-init.disabled 禁用掉 cloud-init

cloud-init 禁用掉后,云厂商进行密码/秘钥注入的功能就不起效了,只能手动修改 etc/shadowroot/.ssh/authorized_keys 文件,进行密码/秘钥配置。(注意设置正确的文件权限)

卸载本地目录,将魔改后的 QCOW2 文件导入第三方厂商,启动服务器。

成功使用 SSH 进入控制台后,检查了一下,网络各方面功能正常,第三方厂商分配的内网 IP 也能够正确获取。

经过一晚上的摸索,终于大功告成。

其他问题

修复软件源地址

默认的软件源假定服务器位于腾讯云内部,在腾讯云外部使用需要修改软件源

cd /etc/yum.repo.d
ls -1 | grep repo | xargs -I {} sed -i 's/mirrors.tencentyun.com/mirrors.tencent.com/g' {}

使用 cgroups v1

在使用魔改版镜像启动的服务器上执行 TKE 第三方节点池接入命令后,会报告

WARN >> The machine not enabled cgroup memory. Please enable!

导致无法安装,原因是腾讯云 TKE 组件只支持 cgroups v1,而 Tencent Linux 3.1 默认启用的是 cgroups v2

处理方法很简单:

  • 修改 /etc/default/grub 找到 systemd.unified_cgroup_hierarchy=1,将值改成 0
  • 执行 grub2-mkconfig -o /boot/grub2/grub.cfg,然后 reboot 重启服务器即可

禁用 IPv6

cat <<-EOF >> /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
EOF
sysctl --system

磁盘扩容

可以参考这个文档进行磁盘在线扩容\

https://ahelpme.com/linux/online-resize-of-a-root-ext4-file-system-increase-the-space/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农炎可

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值