Q's blog

一些个人文档笔记

helm3添加push插件

下载安装包helm-push

1
wget https://hub.fastgit.org/chartmuseum/helm-push.git

查看helm的plugin路径

1
2
helm env
HELM_PLUGINS="C:\Users\vvv\AppData\Roaming\helm\plugins"

在该路径下创建helm-push文件夹,并将安装包拷贝到该文件夹下解压即可

1
C:\Users\vvv\AppData\Roaming\helm\plugins\helm-push
1
2
$ helm cm-push
Error: This command needs 2 arguments: name of chart, name of chart repository (or repo URL)

image-20211104135424961

可将配置文件中name改为插件名

列出环境变量

使用printenv | sort命令组合来获取环境变量的排序列表

1
2
3
4
5
6
7
8
9
10
11
pipeline {
agent any

stages {
stage("Env Variables") {
steps {
sh "printenv | sort"
}
}
}
}
阅读全文 »

Headless Service

有时不需要或不想要负载均衡,以及单独的 Service IP 。遇到这种情况,可以通过指定 Cluster

IP(spec.clusterIP) 的值为 “None” 来创建 Headless Service 。这类 Service 并不会分配 Cluster IP, kube-proxy 不会处理它们,而且平台也不会为它们进行负载均衡和路由

1
2
3
4
5
6
7
8
9
10
11
12
13
apiVersion: v1
kind: Service
metadata:
name: myapp
namespace: default
spec:
selector:
app: myapp
clusterIP:"None"
ports:
- name: http
port: 80
targetPort: 80

svc一旦创建成功后,会被写入到 coredns 中

他的写入的格式体是:svc名称 + 当前命名空间 + 当前集群的域名(集群域名我没没改过,默认就是svc.cluser.local. ) 通过我们当前的coredns的地址进行解析出一个域名

1
2
3
dig -t A myapp-headservice.default.svc.cluster.local. @10.244.0.34
dig命令需要安装
yum -y install bind-utils
阅读全文 »

首先我们抛出3个问题:

  1. docker容器的内核与宿主机内核是怎样的关系?
  2. 容器在运行时如何调用系统资源?
  3. docker的性能参数有没有作用范围?
阅读全文 »

简介

单元测试是保证代码质量的重要一环,而如何衡量单元测试写得好不好呢?覆盖率(Coverage)是一个重要指标。而JaCoCo则是专门为Java提供的用于检测测试覆盖率的工具,英文全称为Java Code Coverage

阅读全文 »

获取真实ip

方法1 X-Forwarded-For配置

这种是百度中大多数的方法:

适用于7层http转发

业务架构:
Client->WAF->LB->ECS->容器
问题:在容器中获取不到真实的客户端公网IP

阅读全文 »

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
kind: CronJob
apiVersion: batch/v1beta1
metadata:
name: hello
spec:
schedule: '* * * * *'
successfulJobsHistoryLimit: 3 #指定应保留多少已完成作业
failedJobsHistoryLimit: 1 #指定应保留多少失败作业
concurrencyPolicy: Allow
suspend: false
jobTemplate:
metadata:
creationTimestamp: null
spec:
template:
metadata:
creationTimestamp: null
spec:
containers:
- name: hello
image: busybox
args:
- /bin/sh
- '-c'
- date; echo Hello from the Kubernetes cluster
resources: {}
imagePullPolicy: Always
restartPolicy: OnFailure
terminationGracePeriodSeconds: 30

因业务需要,需搭建sentry前端监控,并且能承受2000qps的错误信息上报

之前已经再k8s里简单搭建过一套sentry(helm),但是版本2年前的9.1.2,太老了,所以要搭建新版本sentry(20.8.0(同事之前使用官方docker-compose启动的版版本,因为前端已经接了一点,就没用最新版本))

迁移大致规划:

image-20210510145031594
阅读全文 »
0%