开发高可用集群

This commit is contained in:
zeaslity
2024-11-27 09:34:28 +08:00
parent a0792c50cb
commit 59c23a2a97
20 changed files with 8426 additions and 55 deletions

View File

@@ -1,6 +1,6 @@
#!/bin/bash
namespace=bjyd
namespace=uavcloud-demo
install_yq() {
wget https://oss.demo.uavcmlc.com/cmlc-installation/downloadfile/amd/yq_linux_amd64 -O /usr/local/bin/yq

View File

@@ -5,7 +5,7 @@ wget https://oss.demo.uavcmlc.com/cmlc-installation/downloadfile/amd/jq-linux-am
chmod +x /usr/local/bin/jq
export name_space=xmyd
export name_space=uavcloud-demo
kubectl delete pods -n $name_space --field-selector status.phase!=Running --force

View File

@@ -0,0 +1,29 @@
#!/usr/bin/env bash
name_space=jlyd
delete_all_fronted_cmii_pod(){
all_pod_list=($(kubectl get pods -n "$name_space" -o=jsonpath='{.items[*].metadata.name}' | tr " " "\n"))
for pod in "${all_pod_list[@]}"; do
if echo "$pod" | grep -q "platform"; then
echo ""
echo "current pod is $pod"
kubectl -n "$name_space" delete pod "$pod" --force
fi
done
}
delete_all_backend_cmii_pod(){
all_pod_list=($(kubectl get pods -n "$name_space" -o=jsonpath='{.items[*].metadata.name}' | tr " " "\n"))
for pod in "${all_pod_list[@]}"; do
if echo "$pod" | grep -v "platform" | grep -q "cmii"; then
echo ""
echo "current pod is $pod"
kubectl -n "$name_space" delete pod "$pod" --force
fi
done
}
delete_all_fronted_cmii_pod

View File

@@ -0,0 +1,28 @@
#
kubectl get nodes -l uavcloud.env=demo
# 获取节点的lables
all_demo_nodelist=$(kubectl get nodes -l uavcloud.env=demo | grep -v NAME | awk '{print$1}')
for node in ${all_demo_nodelist[@]};do
echo "node is $node"
kubectl get nodes ${node} --show-labels
done
# 获取节点的资源信息
# 获取节点列表并存储到数组中
kubectl get nodes -l uavcloud.env=demo -o custom-columns=:metadata.name | while read -r node; do
echo "node is $node"
kubectl get node ${node} -o json | jq '.status.capacity | {cpu: .cpu, memory: .memory}'
done
kubectl get node demo-02.ecs.io -o json
all_demo_nodelist=(demo-02.ecs.io demo-03.ecs.io demo-05.ecs.io demo-07.ecs.io demo-08.ecs.io demo-09.ecs.io demo-231.ecs.io demo-232.ecs.io demo-233.ecs.io demo-234.ecs.io prod-02.ecs.io prod-04.ecs.io prod-05.ecs.io prod-07.ecs.io prod-09.ecs.io)
for node in ${all_demo_nodelist[@]};do
echo "node is $node"
scp /root/wdd/ctop root@${node}:/usr/local/bin/ctop
done
chmod +x /root/wdd/ctop

View File

@@ -0,0 +1,22 @@
#!/bin/bash
# 指定命名空间
export NAMESPACE="uavcloud-demo"
# 输出表头
printf "%-30s %-50s\n" "Deployment" "CUST_JAVA_OPTS"
# 获取所有 Deployment 的名称
deployments=$(kubectl get deployments -n $NAMESPACE -o jsonpath='{.items[*].metadata.name}')
# 遍历每个 Deployment
for deployment in $deployments; do
# 获取 CUST_JAVA_OPTS 的值
cust_java_opts=$(kubectl get deployment $deployment -n $NAMESPACE -o jsonpath='{.spec.template.spec.containers[*].env[?(@.name=="CUST_JAVA_OPTS")].value}')
# 输出结果
printf "%-30s %-50s\n" "$deployment" "$cust_java_opts"
done

View File

@@ -50,10 +50,10 @@ t
8e
w
" | fdisk /dev/sdb
" | fdisk /dev/sdc
partprobe
# 如果已经存在卷组,直接进行添加
# vgextend /dev/mapper/centos /dev/vda3
# vgextend rootvg /dev/sdc1
vgcreate ${VG_NAME} /dev/sdb1
export selfpesize=$(vgdisplay ${VG_NAME} | grep 'Total PE' | awk '{print $3}')
# 大小根据实际情况调整

View File

@@ -0,0 +1,48 @@
rm -rf /tmp
rm -rf /swap
rm -rf /home
rm -rf /data
umount /dev/mapper/iovg-lvhome
umount /dev/mapper/iovg-lvdata
umount /dev/mapper/rootvg-lvtmp
umount /dev/mapper/rootvg-lvswap
lvdisplay
lvremove /dev/iovg/lvhome
lvremove /dev/iovg/lvdata
lvremove /dev/rootvg/lvswap
lvremove /dev/rootvg/lvtmp
lvremove /dev/openeuler/swap
lvremove /dev/openeuler/tmp
freepesize=$(vgdisplay iovg | grep 'Free PE' | awk '{print $5}')
lvextend -l+${freepesize} /dev/iovg/lvdock
xfs_growfs /dev/iovg/lvdock
freepesize=$(vgdisplay rootvg | grep 'Free PE' | awk '{print $5}')
lvextend -l+${freepesize} /dev/rootvg/lvvar
xfs_growfs /dev/rootvg/lvvar
curl -k https://10.96.0.1
freepesize=$(vgdisplay centos | grep 'Free PE' | awk '{print $5}')
lvextend -l+${freepesize} /dev/centos/root
xfs_growfs /dev/centos/root
freepesize=$(vgdisplay openeuler | grep 'Free PE' | awk '{print $5}')
lvextend -l+${freepesize} /dev/openeuler/root
resize2fs /dev/openeuler/root
docker system prune -y
kubectl drain demo-06.ecs.io --ignore-daemonsets --delete-local-data

View File

@@ -1,6 +1,6 @@
export harbor_host=134.80.124.7:8033
export harbor_host=192.168.35.71:8033
curl -X POST -u "admin:V2ryStr@ngPss" -H "authorization: Basic YWRtaW46VjJyeVN0ckBuZ1Bzcw==" -H "Content-Type: application/json" -d '{"project_name":"cmii","registry_id":null,"metadata":{"public":"true"},"storage_limit":-1}' http://$harbor_host/api/v2.0/projects

View File

@@ -5,7 +5,7 @@ gzip_image_list_txt="all-gzip-image-list.txt" # 一般不需要修改
oss_prefix_url="https://oss.demo.uavcmlc.com/cmlc-installation"
local_gzip_path="/root/octopus_image"
DockerRegisterDomain="172.18.10.251:8033" # 需要根据实际修改
DockerRegisterDomain="harbor.wdd.io:8033" # 需要根据实际修改
HarborAdminPass=V2ryStr@ngPss # 需要跟第一脚本中的密码保持一致
print_green() {
@@ -163,6 +163,6 @@ test(){
}
# test
Download_Load_Tag_Upload "cmii"
Download_Load_Tag_Upload "rke"
#Load_Tag_Upload "rke"