季兴 发布的文章

在家隔离的2个多月,重新捡起了运维开发工作

已实现or改进:

  1. 物理资产自动采集,通过DRF上报
  2. 通知功能*
  3. 长周期任务异步
  4. 密码管理
  5. 密码操作审计
  6. 使用了新的前端模板,耳目一新

待实现or改进

  1. 异步任务通知
  2. DASHBOARD功能
  3. 资产要关联应用,应用管理
  4. kubernetes的报表功能
  5. 权限管理

附几张效果图
资产管理.png审计管理.png模态对话框js.png

今天在排错时遇到个奇怪的现象,相同名称添加多条A记录超过512字节时,就会影响部分递归DNS的记录同步。
测试域名 liyang.sunmi.com 添加了36条A记录,大小610字节
A记录.jpg

必现部分递归DNS无法更新、解析失败
解析失败.jpg

1.查阅了DNS的RFC1035,udp包有512字节的长度限制,超出部份会被截断 原文
2.超过限制后使用tcp协议进行解析
3.公共DNS中,只有114.114.114.114会把超长结果截断在509字节,其他DNS都会原样返回

疫情在家一个月了,记录一下

  1. api网关调研,测了限流、认证、更改返回内容等插件,就是简化的nginx,以往改配置文件的事,现在应用插件。https://www.yuque.com/books/share/44e4c02e-5ffb-43cc-ab51-ac2bf885913a/ssrwps
  2. apisix初体验,看到腾讯内部有些业务使用,从他们测试结果来看性能有较大提升,而且是apache基金会项目,不至于烂尾
  3. 18年搞的运维系统做了部分功能迭代,升级到django4.0。登录功能从装饰器改为中间件,搞清楚了ModelForm。深觉自己不太适合开发,不能静下心思搞
  4. excalidraw神器,用够了一板一眼的visio,返璞归真。附一张成品

全球化+WPS图片打印.jpg

近期接到个古怪需求,历史原因有部分设备在代码中访问废弃接口uat.api.xxx.com,现有接口为 api.uat.xxx.com(顺序变化)。老设备升级rom版本较繁琐,网关不想动了,在外侧加了台nginx转发

# 通过rewrite301跳转
server {
    listen 80;
    server_name uat.api.xxx.com;

    location / {
        root /usr/share/nginx/html;
        if ( $host ~* uat.api.xxx.com ){
            rewrite .* http://api.uat.xxx.com$request_uri permanent;
        }

    }

}

# 方法2
在location中加,更优
    proxy_set_header Host api.uat.xxx.com;
    proxy_pass https://api.uat.xxx.com;

背景:海外用户投诉我们一个边缘功能失效,定位到程序假死。随着各种复盘会,把这件小事无限放大。
难点:探针改造复杂,尽管已经有了基础的http接口检测,但针对服务连接各种中间件等场景无法一一覆盖
在研发根治此问题前,使用“熔断”来降低此类故障的影响

熔断,是创建弹性微服务应用程序的重要模式。熔断能够使您的应用程序具备应对来自故障、潜在峰值和其他未知网络因素影响的能力

中间方案,通过网关日志,假死会有504超时的信息,SLS已支持触发各种钩子,逐个重启故障服务的pod

  • 优点:配置相对简单,覆盖面广
  • 缺点:按照监控的频率间隔,有几分钟延迟

更优istio方案,使用VirtualService配合DestinationRule对超时或者错误重试,并将故障pod踢出

  • 优点:侦测更快,发现故障后立即生效
  • 缺点:局部配置,所有服务都要写一遍

环境:

  • kubernetes v1.18.20
  • istio 1.10.3
  • 后端服务flask,代码如下,sleep5秒用于模拟超时
from flask import Flask
import time

app = Flask(__name__)


@app.route("/", methods=["GET"])
def index():
    time.sleep(5)
    return "Hello World Pyvo 2!"

istio中配置如下

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: backend-gateway
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 80
      name: http
      protocol: HTTP
    hosts:
    - "*"

---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: vs-backend-flask
spec:
  hosts:
  - "*"
  gateways:
  - backend-gateway
  http:
  - match:
    - uri:
        prefix: /flask
    rewrite:
      uri: /
    route:
    - destination:
        host: backend-flask
        port:
          number: 80
    retries:
      attempts: 3
      perTryTimeout: 2s

---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: dr-backend-flask
spec:
  host: backend-flask
  trafficPolicy:
    outlierDetection:
      consecutive5xxErrors: 1
      interval: 10s
      baseEjectionTime: 30s

熔断.jpg
效果如图,访问出现上游服务超时错误后,在30秒内不会再调度到故障节点

网购、中介、挪车等不想留真实号码的场景,可以用阿里小号。通过软件方法绑定一个真实号码,可以呼入呼出收发短信。以往的¥40/年,忽然涨价到¥120/年。
咸鱼买到个方法分享出来

【淘宝】https://m.tb.cn/h.fn38Yzz?sm=250fe0?tk=XfzD24SBX0s「阿里小号.普通小号卡券(仅供已有联通小号用户充值使用)」
点击链接直接打开,反馈后就能以20每年的价格购买5年了

401647496361_.pic.jpg

  • 无神论者
    我是一个坚定的唯物主义者,直到来图书馆,面对一个个空位,旁边的碳基生物(存疑)都说有人!见鬼
  • 文化差异

    一副人行道上的镶嵌画。描绘的是年轻的许拉斯(Hylas)被仙女绑架,因为当她们看到他从泉水里取水时,便爱上了他

    将自己敬重、喜爱的神镶嵌在人行道,天天被人“踩踏”。

xiangqianhua.jpg

又是一个在图书馆“消磨”的上午,昨晚追了B站的“房车旅行生活”,缓了一晚上才从梦中走出来,羡慕当今有想法的年轻人,敢于在人生的上半段选择,看着他们在自媒体从业、创业、裸辞、购车、改装、出发种种,心中的小火苗被勾的险些着起来。
回归现实,到图书馆十点,想看的基本技术类书籍都找不到,翻到贺嘉的《表达力》,摘几段有意思的

消除演讲紧张的12种方法(入门),演讲前紧张,大家只会说深呼吸,收获的回复就可能像女朋友不舒服时“多喝热水”得到的反馈一样,只有慢慢的白眼。。。

  • 上台前

    1. 准备-准备-充分准备
    2. 试讲至少3遍,提前到现场彩排
    3. 充分的睡眠
    4. 在现场听众中提前认识一些朋友,起码在冷场时有他们和你互动
    5. 和亲戚朋友打个电话,聊聊接下来的演讲。和熟人谈论演讲内容能让自己情绪放松
    6. 在厕所里,对自己说“我是最棒的”,充分的心理暗示
  • 上台后

    1. 把观众想成冬瓜
    2. 目光看向稍远处,不直视听众
    3. 双手叉腰2分钟。这个肢体动作可以帮助我们提高激素分泌,帮我们更好的消除紧张感
    4. 紧张的时候喝口水,用这个时间想词。带瓶水
    5. 通过发气泡音来放松自己的心情。啥是气泡音特意查了下,打哈欠时像青蛙一个个吐出的声,存疑,这有啥用
    6. 带一个熟悉的道具。比如遥控笔、穿一套最好看的西装

我加了一条,不要把自己放在被评价的位置,重视的前提下爱咋咋,首先要对自己肯定!不断的给自己暗示,大家都是芸芸众生,除了你自己,不会有人记得你的演讲。不要和自己过不去。

水一篇,公司从前年上thoughts后,编辑md文档还是很爽的,但也仅限于标题、分割、缩进、引用,今天花了点时间尝试了所有md支持的格式,原来各个编辑器还是有差异,常用的typora居然收费了。
有道云笔记默认的md格式就很好用了。
花10分钟学习工具使用,方便一生 :smile:

一键三连1,我们再测一个2
把大象放冰箱

  1. 打开冰箱
  2. 塞进去大象
  3. 关上冰箱门

- 阅读剩余部分 -

《2002年的第一场雪》已经是20年前的歌了,还真挺让人意外的。小朋友2岁半了,从一出生的惊喜、无感、逃避、苦闷、烦恼、和解、欣喜、期盼,体会了当父亲的不易与责任。
由于工作的关系,每天到家都20:00以后了,吃个热乎饭(在这要感谢我丈母娘,帮我带娃还负责一家人晚上的伙食),陪小朋友玩1小时,给他讲故事,有时还不爱听我讲,必须找妈妈。我太太在教育方面还是非常用心,给娃清淡饮食,不抱自然睡习惯 - -。小朋友各种翻腾、找借口,用着仅会的几个词:“楼上吵”“妈妈抱”折腾到十点半,有时甚至十一点。

  • 11月时,有位国内著名网站的实习编辑,预约我做一些运维自动化课程,我还是比较怀疑的,大牛、专职老师多的是,找我这玩票儿的干啥,随口说要到12月底,没想到对方一口答应了。定了个友情价,网签合同了。要求以平台名义、格式发出,在创作上有点影响,好在只是PPT和课题的要求,大纲没有做过多干涉。录制的时候也是状况频出,麦克风收音太好,小朋友不睡的咿咿呀呀声,楼上厕所洗漱声(吐槽一下老房子的楼板太薄,隔音性差强人意)外加我还不太会剪辑,妄图一遍过,课程短一点还行,长的课程最后收尾阶段,“哇哇一嗓子”全给我干废。看到小朋友又不忍心训,又趁机进去摸摸他,趁机玩他喜欢的我“哼”他“哈”的游戏。也就学乖了,一小节一小节录。哪怕这样,搞到凌晨1点2点时常态,不知道哪来的动力。熬了一周左右,课程通过审核,发布。完成了“云账户”注册,看起来这玩意专门给IT工作者准备的,大概意思是自己注册成个体户,扣税比例很低,同时不影响薪资的扣税额度。giftcard.jpeg
  • 今年的专升本也完成了,还被评为“优秀毕业生”,只是正常完成了练习、课程、毕设自己写。答辩时有个事快赶上段子了,前面哥们的课题大致是“大数据”方面的,老师问到数据来源,说是公司内部机密- -,给老师整懵逼了,自然没给过。
  • 和前同事打赌软考中级,花了不少精力把近十年的真题刷了遍,最后还把选择题当简答题写完了,分数还行,同行的张总没过,这211水货:),当时还约定的谁没过请吃饭。回头想我这一年过的还是很充实的⛽️

22年给自己定两个目标,首先是在口语上要进步,不能再哑巴英语。去年的目标完成度一般,起码阅读英文文档障碍不大。基本每天都能坚持15个单词,百词斩中《专升本》程度已经完成(顺便说一下,我也是以优异的成绩考上了大专:)相应的,职场软技能也要提升;其次,在技术层面也要投精力,暂定的课题是API网关相关,输出文档或者课程。
就俩吧,工作已经很忙了!与君共勉