Compare commits
19 Commits
Author | SHA1 | Date | |
---|---|---|---|
ea7ca60477 | |||
9af73a40ca | |||
22848f01e7 | |||
a031b90da9 | |||
2cdf1bf16d | |||
3c6ce06ce6 | |||
bffce05b53 | |||
97d3881bee | |||
6f59ff50e3 | |||
ea93cbd1b9 | |||
3db6138e91 | |||
1e3d6cfcaa | |||
919511263f | |||
b7e78c1b43 | |||
c246adc39e | |||
9876eeb491 | |||
f3e2fe88d5 | |||
a593dea13c | |||
6535e48260 |
@ -14,9 +14,9 @@ jobs:
|
||||
- name: Log in to Docker Hub
|
||||
uses: https://git.martin98.com/actions/login-action.git@v3
|
||||
with:
|
||||
registry: ${{ vars.DOCKER_HUB }}
|
||||
username: ${{ vars.DOCKER_USERNAME }}
|
||||
password: ${{ vars.DOCKER_PASSWORD }}
|
||||
registry: ${{ vars.GIT_IMAGE_URL }}
|
||||
username: ${{ vars.GIT_IMAGE_USERNAME }}
|
||||
password: ${{ vars.GIT_IMAGE_PASSWORD }}
|
||||
|
||||
- name: Build and push
|
||||
uses: https://git.martin98.com/actions/build-push-action.git@v4
|
||||
@ -25,5 +25,5 @@ jobs:
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
docker.martin98.com/martin_farm/init:latest
|
||||
docker.martin98.com/martin_farm/init:${{ github.sha }}
|
||||
git.martin98.com/martinfarm/init:latest
|
||||
git.martin98.com/martinfarm/init:${{ github.sha }}
|
@ -1,3 +1,9 @@
|
||||
## k3s
|
||||
> https://docs.k3s.io/zh/quick-start
|
||||
```bash
|
||||
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -
|
||||
```
|
||||
|
||||
## k8s 快速部署
|
||||
```bash
|
||||
# 网段配置
|
||||
|
@ -45,8 +45,6 @@ else
|
||||
fi
|
||||
|
||||
# fix vim 粘贴
|
||||
if pidof vim >/dev/null 2>&1; then
|
||||
if ! grep -q "set pastetoggle=" ~/.vimrc; then
|
||||
echo "set pastetoggle=" >> ~/.vimrc
|
||||
fi
|
||||
if ! grep -q "set pastetoggle=" ~/.vimrc; then
|
||||
echo "set pastetoggle=" >> ~/.vimrc
|
||||
fi
|
@ -5,7 +5,7 @@ if command -v git > /dev/null 2>&1; then
|
||||
echo "git 已安装,正在配置镜像源..."
|
||||
# 曾经设置过的强制取消
|
||||
git config --global --unset url."https://git-proxy.hk.martin98.com/".insteadOf
|
||||
git config --global url."https://git-proxy.hk.martin98.com/https://github.com/".insteadOf "https://github.com/"
|
||||
git config --global url."https://git.mirrors.martin98.com/https://github.com/".insteadOf "https://github.com/"
|
||||
echo "镜像源配置完成。"
|
||||
else
|
||||
echo "git 不存在,跳过..."
|
||||
|
107
init-k3s.sh
Normal file
107
init-k3s.sh
Normal file
@ -0,0 +1,107 @@
|
||||
#!/bin/bash
|
||||
|
||||
curl -sSL https://git.martin98.com/MartinFarm/init/raw/branch/main/init-apt.sh | bash
|
||||
|
||||
current_ip=$(hostname -I | awk '{print $1}')
|
||||
|
||||
# 镜像加速
|
||||
mkdir /etc/rancher/k3s -p
|
||||
|
||||
cat <<EOF > /etc/rancher/k3s/registries.yaml
|
||||
mirrors:
|
||||
docker.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
registry-1.docker.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
registry.k8s.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
k8s.gcr.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
gcr.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
ghcr.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
quay.io:
|
||||
endpoint:
|
||||
- https://docker.martin98.com
|
||||
EOF
|
||||
|
||||
# systemctl restart k3s
|
||||
|
||||
# 安装 keepalived
|
||||
apt install -y keepalived
|
||||
|
||||
# 检查是否为 Master-01
|
||||
if [ "$current_ip" == "$master" ]; then
|
||||
state=MASTER
|
||||
priority=100
|
||||
else
|
||||
state=BACKUP
|
||||
priority=100
|
||||
fi
|
||||
|
||||
# 初始化 VIP
|
||||
mkdir /etc/keepalived
|
||||
cat <<EOF | sudo tee /etc/keepalived/keepalived.conf
|
||||
vrrp_instance VI_1 {
|
||||
state $state
|
||||
interface eth0
|
||||
virtual_router_id 51
|
||||
priority $priority
|
||||
advert_int 1
|
||||
virtual_ipaddress {
|
||||
$vip
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
sudo systemctl restart keepalived
|
||||
systemctl status keepalived &
|
||||
|
||||
|
||||
|
||||
# 检查是否为 Master-01
|
||||
if [ "$current_ip" == "$master" ]; then
|
||||
# 开始部署
|
||||
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - server \
|
||||
--cluster-init \
|
||||
--cluster-cidr $pod_subnet \
|
||||
--service-cidr $service_subnet \
|
||||
--node-external-ip=$vip_ip \
|
||||
|
||||
|
||||
TOKEN=$(cat /var/lib/rancher/k3s/server/node-token)
|
||||
cat <<EOF
|
||||
------------------------------------------------------------------------------------
|
||||
初始化 master VIP[$state] $current_ip 成功
|
||||
|
||||
export pod_subnet=$pod_subnet
|
||||
export service_subnet=$service_subnet
|
||||
export vip_ip=$vip_ip
|
||||
export vip=$vip_ip/16
|
||||
export master=$master
|
||||
export TOKEN=$TOKEN
|
||||
curl -sSL https://git.martin98.com/MartinFarm/init/raw/branch/main/init-k3s.sh | bash
|
||||
|
||||
------------------------------------------------------------------------------------
|
||||
EOF
|
||||
|
||||
else
|
||||
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - server \
|
||||
--cluster-cidr $pod_subnet \
|
||||
--service-cidr $service_subnet \
|
||||
--node-external-ip=$vip_ip \
|
||||
--token $TOKEN \
|
||||
--server https://$master:6443
|
||||
watch kubectl get nodes
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user