认知,是否是一座大山?当架构决策变成配置清单比价

分类:乱七八糟日期:2025-05-06 - 10:03:58评论:2条作者:老谢

最近刚交付了一套3节点超融合系统,客户坚持选用全闪存配置,结果选了4块7.68TB的SATA SSD。明明混闪+NVMe的方案在性能和性价比上都更合理,却还是抵不过他们对“全闪等于高端”的固有认知。

最近还有个跟了半年多的客户项目更典型:几十台虚拟机的小环境,硬是要上3台低配的第四代CPU服务器配2台FCSAN交换机,再搭配一套爱国版VMware。他们对传统硬件存储的信仰之深,仿佛一切软件定义方案都不靠谱。采购模式也完全是传统“硬件比价思维”,压根不考虑整体架构和长期效率。

做这样的项目,有时候真的很难提起兴趣。技术选型完全不是围绕业务目标或资源效率展开,而是变成一场“配置清单比高低”的比拼。

作为技术人员,我们都希望能做真正有价值、有深度的解决方案服务商,但在实际交付中,经常要面对各种“妥协”:客户的固有观念、采购模式、短期预算目标……理想是推动架构现代化,现实却常常是“能成单最重要”。

技术不是问题,方案也不是问题,最大的问题往往在于——客户究竟是买解决方案,还是买硬件清单。

认知,是否是一座大山?当架构决策变成配置清单比价

重装博客服务器环境

分类:乱七八糟日期:2025-04-24 - 1:50:20评论:3条作者:老谢

最近一年经常访问报错是已知问题,一直懒得修,最近还开始频繁down数据库,实在懒得找原因又有点受不了不可访问的频率,

直接一把梭备份web和db的数据,centos7重装成centos9,全新装一遍lnmp环境,目前看起来一切良好,现在的uptime是真惨

重装博客服务器环境

特斯拉24款标续 Model Y 2万公里使用体验

分类:乱七八糟日期:2025-03-26 - 23:41:32评论:8条作者:老谢

好久没写东西了,更新下证明还活着,

换车9个月,原本打算换油车,从来没有考虑过新能源,基本快定的时候因为价格跟销售扯皮扯烦了,

去商场吃饭路过特斯拉就约了个试驾,第二天直接下定,现在跑了19401公里,也算是深度体验了,分享一个20多万公里油车老司机的驾驶感受。

最后一箱油

开了二十多万公里的老兄弟,给你加最后一口油! T_T

刚换了4条避震和全套的胶套,不到半年,尼玛便宜车贩子了。

特斯拉24款标续 Model Y 2万公里使用体验

继续阅读…

分类:碎语日期:2024-09-27 - 15:38:26作者:老谢

买房 房奴 接盘侠,年轻的时候觉得离这几个词很遥远,不知不觉自己到了30成了全中的傻逼,选择真的大于努力

19年初高位接盘,从买房那一刻起就在给银行打工,首付85万,贷款这么多年还了差不多60万,现在卖房子到手不到10万,哈哈哈哈哈哈

小牛us电瓶指示灯闪三次不上电

分类:乱七八糟日期:2024-05-25 - 3:56:12评论:0条作者:老谢

  小毛驴三四年骑了2000多公里,难得去一趟,莫名其妙突然电瓶不上电,充电是红灯,淘宝一搜一块电瓶要特么2399,这不抢钱。

  略花了一些时间,处理方式很简单,图中的进水探头直接拆掉就行了,大概率是因为常年停地库湿度太大,探头上有腐蚀造成短路导致的。

  需要注意的是电池和外壳底部是用胶封住的,在拉出电池的时候,要注意扶助电池,别一不小心直接砸地上了(别问我是咋知道的)

小牛us电瓶指示灯闪三次不上电

一次还不错的小米售后体验

分类:乱七八糟日期:2024-01-30 - 16:12:52评论:12条作者:老谢

  去年冬天结束才发现小米的电暖器插头已经烧糊掉了,想着后面天气暖和一时半会也用不着了就一直拖着没修,今年入冬前本来想自己换一条电源线,动手的时候才发现手动没有合适的螺丝刀头就又开始搁置了,冷的时候开开空调也顶得住,最近一段时间苏州实在冷的一批,开空调也顶不住了又懒得自己弄,干脆试试找小米售后看看,毕竟买了好几年,也不知道小米还有没有售后配件,于是在网上的小米售后渠道提交了售后申请。

  之所以说是是一次不错的售后体验,是因为售后申请单发出去当天,小米就安排了顺丰取件,隔天就有工作人员联系并说明了报价,确认维修后,第三天就用京东返修了回来,本来换个电源线只需要25元的物料费用,由于寄出去的售后没有原包装,顺丰弄坏了一个支撑脚(小米售后也电话确认是否要进行签收),只能额外自费更换了一副支撑脚,好在不贵,比换个新的电暖器要便宜得多。

  掐指一算又是快一年没更新了,服务器也从国内搬出来懒得续费了,从最初关注博客的响应和性能到现在能访问就行,对于很多东西越来越懒得折腾,博客就这么不知不觉写了14年,当初热血的少年如今也终于进入了而立之年,感谢博客让很多回忆历历在目。

  公司也快搞一周年了,虽然没有特别大的收入变化,但是感觉状态是越做越顺手,似乎在努力其实不过是稀里糊涂的糊口,有时候想想理应很焦虑可事实却焦虑不起来,只觉得尽人力听天命就行,很多事情不能说悲观但肯定不能算乐观,总之是希望越来越好吧。

  感谢2024还在一起的朋友伙伴,也预祝各位朋友2024新春愉快!

一次还不错的小米售后体验

装台1600元办公主机

分类:乱七八糟日期:2023-04-23 - 0:10:52评论:15条作者:老谢

  稀里糊涂一年半没更新了,果断水一篇,中间好多次写一半嫌太麻烦还是删了,博客做了快13年了,时间过的实在太快了,surface pro4越来越卡,新的pro9买不起,日常卡的顶不住了,无奈搞台主机放到办公室用,12代的i3-12100性能还是相当顶的,为了用bitlocker加密,单独加了块TPM模块。

  离职创业也差不多一个月了,工商、税务各类手续、收拾办公室、跑新客户,一大堆事,比预期的困难,离职前有个待遇翻番的offer,但不是特别感兴趣的岗位,仔细想想自己单身一个,还是搞个公司玩玩吧,毕竟人生玩的就是不能有遗憾,希望后面一切顺利:)

部件
产品
价格(¥)
主板
471.00
CPU
628.00
内存
258.00
机箱
105.00
散热器
39.00
电源
金河田 智能芯 480GTX
120.00
其他
66.00
总计:
1687.00

继续阅读…

分类:碎语日期:2021-10-11 - 9:28:08作者:老谢

好久没更新,掐指一算也分手半年多了,差俩月7年没熬过去也是挺可惜的

Zabbix监控oxidized备份状态

分类:运维技术日期:2021-04-16 - 14:15:38评论:1条作者:老谢

  原理是利用oxidized的hooks功能调用zabbix_sender推送数据给zabbix_server。

oxidized的config部分
hooks:
  node_success:
    type: exec
    events: [node_success]
    cmd: '
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k oxidized.datetime -o `date +%s`;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k oxidized.status -o 0;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_EVENT       -o $OX_EVENT;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_JOB_STATUS  -o $OX_JOB_STATUS;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_JOB_TIME    -o $OX_JOB_TIME;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_IP     -o $OX_NODE_IP;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_MODEL  -o $OX_NODE_MODEL;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_NAME   -o $OX_NODE_NAME'
 
    async: false
    timeout: 120
  node_fail:
    type: exec
    events: [node_fail]
    cmd: '
   /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k oxidized.datetime -o `date +%s`;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_EVENT       -o $OX_EVENT;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_JOB_STATUS  -o $OX_JOB_STATUS;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_JOB_TIME    -o $OX_JOB_TIME;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_IP     -o $OX_NODE_IP;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_MODEL  -o $OX_NODE_MODEL;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_NAME   -o $OX_NODE_NAME;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k oxidized.status -o 1'
    async: false
    timeout: 120
  post_store:
    type: exec
    events: [post_store]
    cmd: '
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k oxidized.datetime -o `date +%s`;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_EVENT       -o $OX_EVENT;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_JOB_STATUS  -o $OX_JOB_STATUS;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_JOB_TIME    -o $OX_JOB_TIME;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_IP     -o $OX_NODE_IP;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_MODEL  -o $OX_NODE_MODEL;
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k OX_NODE_NAME   -o ${OX_NODE_NAME};
    /usr/local/zabbix/bin/zabbix_sender -z zabbix_server_ip -s zabbix_agentd(server_name) -k oxidized.status -o 2'
    async: false
    timeout: 120

继续阅读…

Zabbix 5.0 LTS版本MySQL表分区及编译安装随记

分类:运维技术日期:2021-04-10 - 18:35:51评论:0条作者:老谢

Zabbix MySQL Database Partitioning 表分区优化禁用 housekeeping 提升历史数据清理性能

  Zabbix 默认会启用 housekeeping 功能用于清理 history/trend 等历史数据,当监控服务器数量增加,保留时间有要求的情况下,housekeeping 的清理策略就会造成 Zabbix Server 性能下降,比如查询历史监控数据等。Zabbix 官方的建议是直接在数据库按照时间唯独创建分区表并定时清理,好处自然就是减少 Zabbix Server 的负担提升 Zabbix 应用对于数据库读写性能。Zabbix 3.4 之后的版本增加了对 Elasticsearch 的支持。

 数据库的优化有横向和纵向扩展,这里使用数据的分布式,而分表可以看做是分布式的一种。。
  在zabbix_server.conf文件中,找到如下两个参数:
    (1)HousekeepingFrequency=1 解释:多久删除一次数据库里面的过期数据(间隔时间),默认一小时
    (2)MaxHousekeeperDelete=5000 解释:每次删除数据量的上线(最大删除量),默认5000

Zabbix 5.0 LTS版本MySQL表分区及编译安装随记

SELECT table_name AS "Tables",
round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB"
FROM information_schema.TABLES
WHERE table_schema = 'zabbix'
ORDER BY (data_length + index_length) DESC;
 
+----------------------------+------------+
| Tables                     | Size in MB |
+----------------------------+------------+
| history_uint               |   16452.17 |
| history                    |    3606.36 |
| history_str                |    2435.03 |
| trends_uint                |     722.48 |
| trends                     |     176.28 |
| history_text               |      10.03 |
| alerts                     |       7.47 |
| items                      |       5.78 |
| triggers                   |       3.72 |
| events                     |       2.64 |
| images                     |       1.53 |
| items_applications         |       0.70 |
| item_discovery             |       0.58 |
| functions                  |       0.53 |
| event_recovery             |       0.38 |
| item_preproc               |       0.38 |
………………

继续阅读…