V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
oblivion
V2EX  ›  程序员

亲手造成的运维事故:在 Live CD 环境下部署并运行了 8 个月

  oblivion · 233 天前 · 29972 次点击
这是一个创建于 233 天前的主题,其中的信息可能已经有所发展或是发生改变。
前情提要:今年春节时去部署了一套内部系统,访问量不大,加上临近春节协调资源难,就先单机部署了,
对方提供的是 H3C 的物理机,准备安装 Ubuntu 系统,对运维要求带桌面安装,
中途被电话打断,回到机器旁边看到已经在 Ubuntu 桌面了以为对方运维帮装好了,
于是直接部署好了我们的系统,测试没问题就离开了,后面也一直相安无事,没出过什么问题。

直到昨天晚上组里同事去给他们更新部署,由于各种巧合提示磁盘空间不足,于是各种操作后给重启了机器,
发现.....进 Live CD 桌面,目录是空的,重启弹出光盘,提示找不到启动磁盘,
通宵一夜后就在刚刚给我打来了电话,我:????
各种记忆恢复术后想起来,当时 Ubuntu 压根就没装进硬盘啊?

由于是单机部署,暂时没想到能恢复数据的方法...
175 条回复    2024-01-16 13:56:35 +08:00
1  2  
realpg
    101
realpg  
   233 天前
@davidyin #9
国产化的服务器系统甚至不能没有桌面
资源紧张想不要桌面都不行
jfcherng
    102
jfcherng  
   233 天前
重啟治百病 藥到命除
fengpan567
    103
fengpan567  
   233 天前
卧龙凤雏,为啥不 df 看下空间占用
Iamsonny
    104
Iamsonny  
   233 天前
好奇,live cd 环境下,你的应用程序是怎么部署成功。。。
raptor
    105
raptor  
   233 天前
系统装完直接部署?

难道不是应该 update&upgrade 一下再重启后部署么?
cheng6563
    106
cheng6563  
   233 天前
@Iamsonny live cd 环境,其实就是把/挂到内存里,只要内存不满的话该干嘛干嘛。。
yyzh
    107
yyzh  
   233 天前
@raptor 新版 ubuntu 在更新完后会提示重启受影响的服务来达到不用重启就能完成更新.
Jirajine
    108
Jirajine  
   233 天前 via Android   ❤️ 1
这让我想起了自己服务器一些临时服务懒得写服务脚本,开个 tmux 终端命令行直接跑然后 detach ,就这样服务器运行 1 年多没重启过积累了好多临时服务,某天意外断电重启后已经忘了要跑哪些服务了😂
cat9life
    109
cat9life  
   233 天前
这也太 6 了吧 6 到停不下来
raptor
    110
raptor  
   233 天前
@yyzh 我信不过这种,都是重启一次系统。
c2const
    111
c2const  
   233 天前
谢谢你,让我今天有了好心情 :)
guoyuchuan
    112
guoyuchuan  
   233 天前
6 啊
rebecca554owen
    113
rebecca554owen  
   233 天前 via Android
应了那句话,能用了就别动。
whitehack
    114
whitehack  
   233 天前
ubuntu 20.04 和 22.04, 有个自动更新服务. 前几天自动更新.把我 mysql 重启了. 我承认我菜.
Senorsen
    115
Senorsen  
   233 天前
nba... 带桌面安装已经很奇葩了,难道安装时 apt update 不会看到有 livecd 的源,用 terminal 部署不是会注意到主机名和 username 有 livecd 的痕迹么。。。
更何况看起来你们是传统部署(非 K8s/容器),一般不是应该看看系统重启后,服务能否自行恢复启动么?(不过确实也难说,大学时某外包公司给我校部署的某系统就是开个 terminal ./start.sh 跑的,nohup 都没有,更别说 service 。“稳定”运行半年后,机房双路供电异常重启,服务就挂了)
IamUNICODE
    116
IamUNICODE  
   233 天前
怎么做到的,震惊。。
epiccheese
    117
epiccheese  
   233 天前
噗。。。对不起。。。我忍不住笑出声了(手动狗头.jpg
eatgrass
    118
eatgrass  
   233 天前
为啥不用老毛桃 windows pe 呢
PrinceofInj
    119
PrinceofInj  
   233 天前
不行,我今天的功德没了,但还是请允许我笑一会儿
hyzjshwo
    120
hyzjshwo  
   233 天前
看对面也不怎么会 linux 运营吧?硬盘不足折腾不行就用万能重启法?把锅甩给对面,说 linux 系统不能随便
lloovve
    121
lloovve  
   233 天前 via iPhone
@msg7086 那么重启前会不会备份?
ajaxgoldfish
    122
ajaxgoldfish  
   233 天前
属实牛逼
jimmyczm
    123
jimmyczm  
   233 天前
你用 PE 还能挂载硬盘
adoal
    124
adoal  
   233 天前   ❤️ 4
我的习惯:业务系统部署完之后一定要把涉及到的服务器都重启一遍还是否可以无人工介入的情况下正常服务。
allgy
    125
allgy  
   233 天前
linux to go
lambdaq
    126
lambdaq  
   233 天前
@adoal 这真是个好习惯
bugmaker1024
    127
bugmaker1024  
   233 天前
稳!
ding2dong
    128
ding2dong  
   233 天前
连夜提桶跑路
nevadax
    129
nevadax  
   233 天前
#124 然后发现机器上原有的服务炸了,寄
paranoiagu
    130
paranoiagu  
   233 天前 via Android
忽然想到是不是应该提供一个带 docker 引擎的 live cd ,然后启动后,运行容器,数据持久化到硬盘。硬盘就干干净净,只要数据。😄😄😄
zlhsvc
    131
zlhsvc  
   233 天前
这锅得甩给对方运维,这几个月了居然没发现
hostname
    132
hostname  
   233 天前 via Android
这八个月没巡检过吗😂
skadi
    133
skadi  
   233 天前
install ubuntu
bao3
    134
bao3  
   233 天前 via iPhone
我觉得你们的人也有责任,即使我自己家里的 N5105 小主机,我要更新前,也是用 tar 把目录备份,copy 到 U 盘里。当然也需要有良好的习惯,比如我所有的配置都放在 /srv ,只备份它就行。
你们的人,居然不做备份,直接重启,也是要负责任的。
suxixi
    135
suxixi  
   233 天前
自爆
SuperMaxine
    136
SuperMaxine  
   233 天前 via Android
@paranoiagu 讲道理你说的这不是 unraid 么,系统就在 U 盘里,磁盘阵列每块硬盘单独拿出来在别的电脑上都能正常读写
wdlth
    137
wdlth  
   233 天前
安装完的时候不升级组件、内核那些再重启的么?
yadiman
    138
yadiman  
   233 天前 via iPhone
作为 incident followup, 可以去 ubuntu 提 issue, 建议 live cd 环境下,每隔 24 小时弹窗警告。
dxppp
    139
dxppp  
   233 天前
慕名而来
yunweier
    140
yunweier  
   233 天前   ❤️ 1
生产至少两个副本吧,两个 live cd ,重启一个还有另一个
laminux29
    141
laminux29  
   233 天前
1.难,就先 XXX ,这才是最大的问题,本质是贪了。难就不应该急着去处理,先把难点解决了再说。

2.Live CD 好好规划,当成生产其实问题不大。但问题是,你们没好好规划。
simo
    142
simo  
   233 天前
刚经历过一场事故,恢复数据,那叫一个痛啊
mikewang
    143
mikewang  
   233 天前
你们就没有人尝试过取下光盘吗?还是说光驱就一直挂在服务器上没管,也真行。

LiveCD 拔下光驱没多久就会报错了,因为它不像 WinPE 那样一次性加载到内存,而只是缓存部分。

LiveCD 部署环境我也干过,是测试环境,机器紧张硬盘又被借走了。内存 500G+,LiveCD 上装个 docker 直接无盘跑测试了。就是因为这个我知道 LiveCD 卸载光盘就会报错的。
MareDevi
    144
MareDevi  
   233 天前 via iPhone
笑死了
msg7086
    145
msg7086  
   233 天前
@lloovve 重启前应该至少备份了 8 次了(茶)
dayeye2006199
    146
dayeye2006199  
   233 天前
服务器带 UI 就不太合理。。
chutsetien
    147
chutsetien  
   233 天前
@kingfalse 现在看出来 Windows PE 的 72 小时强制重启的作用了 ;)
event112
    148
event112  
   233 天前
看笑了
louisxxx
    149
louisxxx  
   233 天前 via iPhone
我记得 Live CD 是把内存挂载当磁盘用。重启就没有了
yc8332
    150
yc8332  
   232 天前
live cd 和普通的差别还是很大的吧
joyhub2140
    151
joyhub2140  
   232 天前
Linux 带桌面反而会降低系统稳定性。
lomomcat
    152
lomomcat  
   232 天前 via Android
甲方实在不行至少请个考过 RHCSA 证书的人,考过就行,不需要拿到证书,而不是请这种出了运维事故还跑到 v 站炫耀自己穿开裆裤的人
CC11001100
    153
CC11001100  
   232 天前
@lomomcat 还好吧,相比成功经验很多失败经验启发更大,op 愿意分享沙雕经历给大家开开眼挺好的 😂
aapeli
    154
aapeli  
   232 天前
首先:
1. 人类总是会出错的,难以避免的
2. 你们需要一个自动化的装机系统 ,用来初始化操作系统, 自动处理相关流程
marc2017
    155
marc2017  
   232 天前
have you tried turning it off and on again?
onesec
    156
onesec  
   232 天前
磁盘空间不足就重启? 这是正常运维干的事情吗?至少看看哪里空间占用大吧? 这不马上发现系统不对劲吗?
只能说不要太相信所谓友商的运维,可能他们平时就是关机重启的维护人员
NoKey
    157
NoKey  
   232 天前
对方运维会不会来这里看到这个,然后,恍然大悟~
JensenQian
    158
JensenQian  
   232 天前
这怎么跑了八个月都没挂的
jadelike
    159
jadelike  
   232 天前
牛逼,回帖留个纪念,见证历史了
x86
    160
x86  
   232 天前
我装个虚拟机都要重启完再拍个快照,你这都不带重启确保完整的
zuijiapangzi
    161
zuijiapangzi  
   232 天前
物理机,不用做优化重启的吗?
iseki
    162
iseki  
   232 天前 via Android
这么一看,Windows PE 每过一段时间就自动重启,还是挺科学的
sc2yml
    163
sc2yml  
   232 天前
正常物理服务器交付,系统安装好后应该做安全加固,安全加固完成需要重启服务器后检查加固项是否完成
yulihao
    164
yulihao  
   232 天前 via iPhone
多少有点离谱了🥲
LiveCD 下居然能正常跑 8 个月
NoahBishop
    165
NoahBishop  
   231 天前 via Android
太抽象了
LindsayZhou
    166
LindsayZhou  
   231 天前
@mikewang #143
应该是要看情况吧。如果我没记错的话,内核启动参数里加个 toram ,会全部加载到内存里跑,弹出介质也是没事的。

Alpine 那边甚至有个 diskless 模式,就是 OP 这种玩法。虽然文档没有明确提及可不可以,不过我觉得移除介质也没什么问题。
yagamil
    167
yagamil  
   231 天前
live cd 真的是用 CD 盘么?

我自己一直都是烧录到 u 盘里面的.

有时候配置下,内容还可以写入到 u 盘, 所谓的 u 盘口袋系统
mikewang
    168
mikewang  
   231 天前
@LindsayZhou 是的,不过那个得开机时手动输进去,或者是特制的 Live CD ,默认是关闭的。这种特意去指定的情况下,基本上不可能是误操作了吧,哈哈。
LindsayZhou
    169
LindsayZhou  
   231 天前
@mikewang #168 前一阵子在 archcn 看到过,又说 arch 启动的时候会
LindsayZhou
    170
LindsayZhou  
   231 天前
@mikewang #168 前一阵子在 archcn 看到过,又说 arch 的 liveos 启动的时候会去查内存大小,足够大的时候会全部加载到内存。
其他发行版就不知道了。

以前公司装系统是用 pxe 装的,如果是这样的话,一直开着倒也正常。
LindsayZhou
    171
LindsayZhou  
   231 天前
@LindsayZhou #170 刚换 alice 阵列键盘在试手,有些不熟悉,错字有些多,见谅。
mikewang
    172
mikewang  
   231 天前
@LindsayZhou #170 了解了,感谢科普~
crc8
    173
crc8  
   230 天前
服务器系统,LiveCD? 带桌面安装是什么意思?服务器系统是先有 CLI 再安装桌面系统的啊,如何带桌面安装?

除非用的 Desktop-LiveCD ,要不然现在哪个发行版的 Server 系统可以带桌面安装,Server-LiveCD?
jsonsong
    174
jsonsong  
   181 天前
难以理解
空间不足不应该第一反应 df 或者 lsblk 吗
随便一看都能看出问题啊
责任两边五五分
但离谱程度,还是重启系统的人更离谱
noahhhh
    175
noahhhh  
   113 天前 via Android
啥情况,重点开楼主怎么被夹了
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1061 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 22:21 · PVG 06:21 · LAX 15:21 · JFK 18:21
Developed with CodeLauncher
♥ Do have faith in what you're doing.