Kcl试用
kcl是蚂蚁金服开源的配置DSL,诞生比较晚,所以吸纳了已有的jsonnet、hcl、cue等方案的优点。 安装 对于linux: wget -q https://kcl-lang.io/script/install-cli.sh -O - | /bin/bash 这个脚本本质上还是从github中下载发行版,所以也需要翻墙。
2024-01-02
4分钟阅读时长
StatefulSet使用思路梳理
一般服务都是使用deployment部署,deploy的使用非常简单,无状态,随意调度。但是各种需要持久化数据的中间件都需要使用StatefulSet来部署,这个玩意儿实际上有点复杂。
2023-09-15
4分钟阅读时长
Configmap挂载的几种情况
ConfigMap挂载的用法比较多,很容易记混淆,这里简单做个梳理: 将某个key的值挂载为环境变量 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)的格式来引用这些环境变量作为命令行参数。
2023-09-15
2分钟阅读时长
PromQL笔记
格式 类似influxdb,prometheus也有自己的line protocol: <--------------- metric ---------------------><-timestamp -><-value-> <---metric name--->{labelname=labelvalue,....} http_request_total{status="200", method="GET"}@1434417560938 => 94355 http_request_total{status="200", method="GET"}@1434417561287 => 94334 上面就表示在某个时间戳系统http GET请求中200的数量。
2023-07-24
5分钟阅读时长
K3s存储插件使用笔记
原理 k8s存储主要依赖PV和PVC的机制,前者由运维人员声明可用的存储,如: apiVersion: v1 kind: PersistentVolume metadata: name: nfs spec: storageClassName: manual capacity: storage: 10Gi accessModes: - ReadWriteMany nfs: server: 10.244.1.4 path: "/" 后者是用户(开发人员)声明的需求: apiVersion: v1 kind: PersistentVolumeClaim metadata: name: nfs spec: accessModes: - ReadWriteMany storageClassName: manual resources: requests: storage: 1Gi 两者的匹配机制:
2023-06-12
6分钟阅读时长