ArgoCD快速体验
一、环境准备 gitlab k8s traefik dnsmasq harbor argocd 概述: Argo CD 是一款 CD 工具,能轻松的将 Git 仓库中 yaml 资源文件轻松的部署到集群中。一个 Application 可以由多个 yaml 组成。 拉取仓库中的资源 部署到集群中 二、gitlab仓库 2.1 准备仓库 创建一个 argodemo 的仓库 manifests 目录下创建 svc.yaml、deployment.yaml、ingress.yaml 12mkdir -pv ArgoDemo/manifestscd ArgoDemo/manifests 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162cat > deployment.yaml <<EOFapiVersion: apps/v1kind: Deploymentmetadata:...
k8s部署gitlab
一、准备工作 1.1 规划 想要使用 SSH 协议,正好使用 metallb 负载均衡器,分配一个虚拟 ip,正好和宿主机上的 22 端口不冲突。需要修改 traefik 的端口。 需要提前调整 worker 节点的内容和 CPU 4C8G. 1.2 暴露22端口 让 Traefik 的 LoadBalancer Service 多暴露一个 22 端口 1vim traefik-values-with-ssh.yaml 1234567891011121314151617181920# traefik-values-with-ssh.yamlingressClass: enabled: true isDefaultClass: true # 设为默认 ingressClass,Ingress 不写 class 也走 Traefikapi: dashboard: true # 打开 dashboard(下一步用我们自己的 IngressRoute 暴露它)ingressRoute: dashboard: enabled: fal...
Helm安装nfs-client-provisioner
一、准备工作 客户端安装 nfs-clinet 1234# RHEL 系节点dnf install -y nfs-utils# Debian/Ubuntu 节点apt install -y nfs-common 验证 12showmount -e nfs.qx.labmount -t nfs nfs.qx.lab:/data/nfs/k8s /mnt && umount /mnt # 不报错就行 二、helm 安装 添加仓库,更新仓库 12helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/helm repo update nfs-subdir-external-provisioner 安装 12345678helm install nfs-provisioner \ nfs-subdir-external-provisioner/nfs-subdir-external-provi...
NFS服务的安装及使用
NFS服务的安装及使用 一、介绍 用于在Linux系统间共享目录,分为客户端和服务端。 NFS并且依赖 RPC。 NFS启动时需要去 RPC 报告自己的端口 客户端连接的时候也需要去 RPC 寻找 NFS 的服务端口。 PRC 的默认端口是 111,会有两个服务 rpcbind.service rpcbind.socket 主机名 ip地址 用途 nfs-server 192.168.10.20 NFS服务端 nfs-client 192.168.10.231 NFS客户端 二、安装配置 CentOS安装 1yum install -y nfs-utils rpcbind Ubuntu/Debian 安装 12345# (服务端)apt install nfs-kernel-server# (客户端)apt install nfs-common 服务端创建共享目录 1mkdir -pv /data/nfs/k8s 修改权限 1chown -R nobody:nobody /data/nfs/k8s 编辑配置文件 123cat...
部署argocd
一、安装 argocd-server 创建命名空间 1kubectl create namespace argocd 下载资源清单文件 非高可用安装(API server、controller、repo server、Redis 各 1) 1wget https://raw.githubusercontent.com/argoproj/argo-cd/v3.4.3/manifests/install.yaml 高可用安装(API server ×3、controller ×2(带选主)、repo server ×3、Redis 以 Sentinel 方式 ×3) 1wget https://raw.githubusercontent.com/argoproj/argo-cd/v3.4.3/manifests/ha/install.yaml 创建资源 1kubectl apply -n argocd --server-side --force-conflicts -f install.yaml 等待 Pod 都 Running 1watch kubectl ...
Traefik + cert-manager + 自签 CA 自动签发
目标:用你现有的 step PKI(root CA + intermediate CA),让集群里任何服务都能 自动获得 HTTPS 证书并自动续期。以后新增服务 = 复制一份 Ingress 即可。 准备环境,harbor、dnsmaqs 等。 一、安装 cert-manager 12345678910111213helm repo add jetstack https://charts.jetstack.iohelm repo update jetstack# 查最新版本(可选)helm search repo cert-manager --versions | headhelm install cert-manager jetstack/cert-manager \ --namespace cert-manager --create-namespace \ --version v1.20.2 \ --set crds.enabled=true # 注意:新版是 crds.enabled,不是旧的 installCRDs# 三个 pod 都 Run...
helm部署MetalLB
MetalLB 是一个用于裸机 Kubernetes 集群的负载均衡器实现,使用标准路由协议。 占用一个虚拟的 IP 地址,转发到对应的 ingress,而不占用宿主机的端口。 一、准备工作 开启 strictARP 1kubectl edit configmap -n kube-system kube-proxy 12ipvs: strictARP: true 不确定自己是哪种模式就执行 kubectl get configmap kube-proxy -n kube-system -o yaml | grep mode,看到 mode: "ipvs" 才需要改。 二、 Helm 安装 MetalLB 本体 添加官方 Helm 仓库后安装 1234567helm repo add metallb https://metallb.github.io/metallbhelm repo updatehelm install metallb metallb/metallb \ --namespace metallb-system \ --creat...
安装helm
一、安装 Github 仓库 Github Release竟然没有编译好的包。 下载 1wget https://get.helm.sh/helm-v4.2.0-linux-amd64.tar.gz 解压 1tar xf helm-v4.2.0-linux-amd64.tar.gz 移动 1mv linux-amd64/helm /usr/local/bin 合并2、3 1tar xf helm-v4.2.0-linux-amd64.tar.gz -C /usr/local/bin --strip-components=1 linux-amd64/helm 验证 1helm version 自动补全 12helm completion bash >> ~/.bashrcsource ~/.bashrc 二、问题 2.1 helm 命令补全乱码 解决方案:安装 bash-completion 1dnf install -y bash-completion 安装完成后,需要让当前 shell 加载它: 1source /etc/profile.d...
dnsmasq部署
一、规划 VMware NAT:192.168.10.10/24 infra VM(192.168.10.10) 基础虚拟机,Rocky9.6 1C2G 二、配置 配置网络 123456sudo nmcli con mod ens160 ipv4.method manual \ ipv4.addresses 192.168.10.10/24 \ ipv4.gateway 192.168.10.2 \ ipv4.dns 192.168.10.2sudo nmcli con up ens160ping -c2 mirrors.rockylinux.org # 验证能联网 装 dnsmasq 和排错工具 1sudo dnf install -y dnsmasq bind-utils 写配置 123456789101112131415161718192021222324sudo tee /etc/dnsmasq.d/qx-lab.conf > /dev/null <<'EOF'# 不用 /etc/resolv.conf 的上...
Git学习
有必要再整理一下 Git,方便自己检索,其实很多的命令用不到,无需学习。够用就行! 用不到的一定不要写。 一、安装 不论是任何系统都可以轻松安装。 Windows版本官网下载安装即可 Linux直接包管理工具安装 1dnf install git -y 1apt install git -y 二、基础配置 配置用户名邮箱, 12git config --global user.name 'qiankong'git config --global user.email 'admin@bravexist.cn' glabal 代表说全局配置 查看所有配置 1git config --list 三、本地仓库用法 3.1 最基本使用 初始化仓库 1git init 添加到暂存区 1git add 文件名称.txt 将暂存区提交到本地仓库 1git commit -m "注释内容" 修改文件的名称 1git mv <旧文件的名称> <新文件的名称> 暂存区和仓库...










