Kubernetes kubectl --raw 使用指南
什么是 kubectl –raw? kubectl --raw 是一个强大的底层工具,允许你直接访问 Kubernetes API Server 的 REST API,绕过 kubectl 的客户端逻辑、准入控制器(Admission Controllers)和 Webhook。 ...
什么是 kubectl –raw? kubectl --raw 是一个强大的底层工具,允许你直接访问 Kubernetes API Server 的 REST API,绕过 kubectl 的客户端逻辑、准入控制器(Admission Controllers)和 Webhook。 ...
在逛 Reddit 时看到 这篇帖子 发现 beszel 这个熟悉又陌生的名字。看了一下官网发现还支持 kubernetes 的部署,直接使用 daemonset 就可以在所有节点自动部署 agent ,虽然还需要手动在 hub 添加,但已经很方便,用了一下不错。 ...
目前在用 Keel,感觉良好。 主流方案对比 以下是几种可以在 K3s 中实现轻量级 DevOps 解决方案对比: 方案 资源占用 易用性 Web UI 集成能力 配置复杂度 特点 ArgoCD 中等 ★★★★☆ 优秀 原生支持 Git/镜像更新 中等 GitOps 专注,声明式部署 FluxCD 低 ★★★☆☆ 基础(最新版改进) 原生支持 Git/镜像更新 中等 GitOps 专注,自动化程度高 Drone 低 ★★★★☆ 优秀 需配置触发器 低 轻量级,无需 CRD Jenkins X 高 ★★☆☆☆ 良好 丰富 高 功能全面但较重 Tekton 中等 ★★★☆☆ 需安装Dashboard 高度可定制 中高 云原生管道 Keel 极低 ★★★★★ 简单 专注镜像更新 极低 超轻量,专注自动部署 方案详细分析 1. ArgoCD 优势: ...
harbor 私有仓库、aliyun acr 等同理。 创建凭据 以创建 docker-registry-creds 为例,按需调整名称 kubectl create secret docker-registry docker-registry-creds --docker-server="<私有仓库域名>" --docker-email=test@test.com --docker-username='******' --docker-password='******' # 参数解释 # --docker-server 是私有docker仓库全限定域名(FQDN) # --docker-username 是机器人账户的username,需要用单引号引起来。 # --docker-password 是机器人账户生成的token,需要用单引号引起来。 # --docker-email 是docker邮箱(非必须)。 # 这样就成功地将集群中的docker凭据设置为名为docker-registry-creds的secret。 使用凭据 apiVersion: v1 kind: Pod metadata: name: nginx labels: app: nginx spec: containers: - name: nginx image: <私有仓库域名>/kubernetes/nginx:latest ports: - containerPort: 80 imagePullSecrets: - name: docker-registry-creds References Kubernetes配置Secret访问Harbor私有镜像仓库
TL;DR 发现 k8s csi 组的社区项目 csi-driver-nfs v4.10 到 v4.11 至少这两个版本存在删除 pv 时会连带将整个根删除的问题。 声明 StorageClass 时虽然支持 subDir ,类似这样: apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: nfs-aliyun-gz provisioner: nfs.csi.k8s.io parameters: share: "/csi" server: "28364f4a1fa-eok75.cn-guangzhou.nas.aliyuncs.com" #server: "172.26.12.20" #subDir: "${pvc.metadata.namespace}/${pvc.metadata.name}" reclaimPolicy: Delete #volumeBindingMode: WaitForFirstConsumer volumeBindingMode: Immediate allowVolumeExpansion: true mountOptions: # - nolock,tcp,noresvport - vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport 但如果类似这样使用 subDir 声明路径,同命名空间下的其他 pvc 删除,会导致整个 subDir 根目录都被删除。目前官方 pr 已经修复,但实测还是有问题,有空再研究一下代码,不知道是不是刻意为之。 ...
TL; DR root@tencent-sh1:~# cat /etc/rancher/k3s/registries.yaml mirrors: "docker.io": endpoint: - "https://harbor.xxx.me" rewrite: "^(.*)": "mirror-dockerhub/$1" "registry.k8s.io": endpoint: - "https://harbor.xxx.me" rewrite: "^(.*)": "mirror-registry-k8s-io/$1" "ghcr.io": endpoint: - "https://harbor.xxx.me" rewrite: "^(.*)": "mirror-registry-ghcr-io/$1" "quay.io": endpoint: - "https://harbor.xxx.me" rewrite: "^(.*)": "mirror-registry-quay-io/$1" 以上是我的配置,在 harbor 中镜像以上镜像源,之后这样 配置即可。 如果没有路径,比如使用 registry 镜像,忽略 rewrite 部分即可。 ...
发现容器化之后,wp 网站打开一直尝试 302 到 https 的页面,即使我当前已经是 https 了,经过排查是由于代理提供了 ssl 但 wordpress 不知道,默认会再重定向一次,出现无限 302 。 ...