不为无益之事,何遣有涯之生

linux日常使用记录

由于公司开始强制使用Linux桌面系统,记录一下使用中遇到的问题。

发行版选择

本来先尝试了Ubuntu 22.04和KDE Neon做为开发环境,但是体验都不太好:

ES和kibana简要笔记

由于比赛需要用到es和kibana,重新复习一下这块的内容。

基础概念

ES的概念和其他数据库截然不同,虽然和mongodb同为文档型数据库,但是后者的很多概念更接近于普通的关系型数据库。

StatefulSet使用思路梳理

一般服务都是使用deployment部署,deploy的使用非常简单,无状态,随意调度。但是各种需要持久化数据的中间件都需要使用StatefulSet来部署,这个玩意儿实际上有点复杂。

Configmap挂载的几种情况

ConfigMap挂载的用法比较多,很容易记混淆,这里简单做个梳理:

将某个key的值挂载为环境变量

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
apiVersion: v1
kind: Pod
metadata:
  name: dapi-test-pod
spec:
  containers:
    - name: test-container
      image: gcr.io/google_containers/busybox
      command: [ "/bin/sh", "-c", "env" ]
      env:
        - name: SPECIAL_LEVEL_KEY
          valueFrom:
            configMapKeyRef:
              name: special-config
              key: special.how
        - name: SPECIAL_TYPE_KEY
          valueFrom:
            configMapKeyRef:
              name: special-config
              key: special.type
              optional: true
  restartPolicy: Never

这里在command里可以通过$(SPECIAL_TYPE_KEY)的格式来引用这些环境变量作为命令行参数。

Sqlx备忘录

很少用golang写增删改查,sqlx的用法和java差别很大,用的时候总是要从头看文档。这里写个备忘录方便以后查询,使用sqlx和go-sqlbuilder来完成增删改查。

边侧高可用解决方案

边侧服务高可用其实就是当年服务还没上云的时候,使用的那套技术栈。不过稍微有些不同的是,边缘计算需要考虑完全封闭的局域网,有点像组态软件的场景。

0%