Rancher Server + Kubernets搭建云原生集群平臺

目錄

  • Rancher Server + Kubernets搭建云原生集群平臺
  • 一、環境準備
    • 1、軟件準備
    • 2、環境規劃
    • 3、掛載數據盤
  • 二、虛擬機初始化基礎配置(所有節點都需要操作)
    • 1、執行時間服務器腳本(包括配置hostName主機名)
    • 2、配置hosts文件
    • 3、配置各節點免密登錄
  • 三、在每個節點安裝docker
    • 1、配置docker-ce國內yum源(阿里云)
    • 2、安裝docker依賴包
    • 3、安裝docker-ce
    • 4、啟動docker服務并設置開機自啟
    • 5、查看docker運行狀態
    • 6、查看docker版本信息
    • 7、開啟包轉發功能和修改內核參數
    • 8、加載并應用 /etc/sysctl.d/docker.conf 文件中的配置
    • 9、配置阿里云鏡像
    • 10、重啟docker
  • 四、部署rancher
    • 1、在rancher節點下載rancher鏡像
    • 2、通過docker運行rancher服務器的容器
  • 五、登錄Rancher平臺
    • 1、再瀏覽器訪問Rancher節點IP ,由于未使用授信證書,會有報警,忽略即可
    • 2、設置密碼
    • 3、至此Rancher安裝完成
    • 4、登錄后可點擊右下角語言選項選擇中文
    • 5、設置Rancher默認鏡像倉庫
  • 六、創建集群
    • 1、點擊全局選擇添加集群
    • 2、填寫集群名稱,選擇kubernetes版本點擊保存
    • 3、勾選Etcd、control,復制此命令,在每個master節點執行命令
    • 4、勾選worker復制此命令在每個worker節點執行命令
    • 5、等待服務安裝完成
  • 七、部署nginx服務
    • 1、配置nginx點擊進入集群tyzwkj-cloud選擇Default
    • 2、配置負載均衡
  • 八、kubectl 命令行工具設置
    • 1 、使用rancher安裝的k8s集群,服務器里面的kubectl 工具不能正常使用,如果需要在服務器執行kubectl命令的話,需要配置一下上下文
    • 2、從rancher頁面獲取Kubectl工具連接k8s集群所需的配置文件kubeconfig,如下圖所示
  • 九、監控配置
    • 1、進入監控配置畫面
    • 2、啟用監控
    • 3、部署監控服務
    • 4、驗證
  • 十、重新安裝

Rancher Server + Kubernets搭建云原生集群平臺

Rancher 是一款開源的企業級容器管理平臺,專注于簡化 Kubernetes 集群的部署、運維及多環境管理,助力企業在混合云、多云及邊緣計算場景中實現高效容器化應用交付。

Rancher 憑借圖形化界面、跨平臺兼容性及開箱即用的監控/日志功能,大幅降低了 Kubernetes 的使用門檻。其開源特性允許企業深度定制,而活躍的社區生態則持續提供功能迭代與問題支持。對于需要統一管理復雜容器環境的企業,Rancher 是實現高效運維與數字化轉型的理想選擇。

【Rancher官方文檔】

一、環境準備

1、軟件準備

序號環境名稱說明版本號
1Rancher Serverk8s運維平臺v2.5.7

2、環境規劃

序號IPHostName操作系統K8s角色說明
1192.168.255.141rancherAnolis OS 8.9 x86 64位Rancher服務Kubernetes 管理平臺
2192.168.255.142masterAnolis OS 8.9 x86 64位控制節點Kubernetes Master
3192.168.255.143worker01Anolis OS 8.9 x86 64位工作節點Kubernetes Master高可用節點,如果不需要高可用,可不部署此服務器
4192.168.255.144worker02Anolis OS 8.9 x86 64位工作節點Kubernetes Worker

3、掛載數據盤

** 注意: **

  • 1、該步驟不是必須的,如果需要將【系統盤】與【數據盤】進行分離,并且【數據盤】是獨立的一塊磁盤的話,是需要執行該步驟進行掛載到系統中的;(非必要執行)
  • 2、下面的命令需要在 [192.168.255.141][192.168.255.142][192.168.255.143][192.168.255.144] 4臺服務器上都執行

(1)、分區
對新磁盤【/dev/sdb】(根據lsblk命令輸出得知新磁盤目錄的)進行執行分區

[root@localhost ~]# lsblk
[root@localhost ~]# df -h
[root@localhost ~]# fdisk /dev/sdb

輸入命令符

n # 創建新分區
p # 選擇主分區
# 選擇分區號(如果提示)
# 指定起始位置
# 指定分區大小
w # 保存并退出fdisk

(2)、格式化
對新磁盤【/dev/sdb1】(根據lsblk命令輸出得知新磁盤目錄的)進行執行格式化

[root@localhost ~]# mkfs.ext4 /dev/sdb1
[root@localhost ~]# mkdir /data

在這里插入圖片描述

(3)、掛載
臨時掛載,立即生效,但是系統重啟后會失效,重啟系統后需要重新執行命令或【永久掛載】方式修改配置文件

[root@localhost ~]# mount /dev/sdb1 /data

永久掛載,系統每次重啟后會讀取配置文件/etc/fstab中的配置

[root@localhost ~]# vim /etc/fstab/dev/sdb1 /data ext4 defaults 0 2

二、虛擬機初始化基礎配置(所有節點都需要操作)

1、執行時間服務器腳本(包括配置hostName主機名)

(1)、創建init文件夾

[root@rancher ~]# mkdir init
[root@rancher ~]# cd init

(2)、創建文件傳輸,上傳后,為文件添加執行權限后執行

[root@rancher init]# vim init.sh

init.sh文件內容

#配置主機名和host文件echo "正在配置你的主機名..."echoread -p "請輸入你的主機名:" host hostname(){hostnamectl set-hostname $host}hostname host && echo -e "主機名設置成功!!"#echo "正在配置你的hosts文件..."
#        ip=$(ip a | grep ens33 |grep inet |awk '{print $2}' | awk -F"/" '{print $1}')
#       echo "$ip $host" >> /etc/hosts
#        echo  "hosts配置完成!!!"# 防火墻設置echo "關閉防火墻和selinux中...."echosystemctl stop firewalld && systemctl disable firewalld &> /dev/null && setenforce 0 &&  sed -i '/^SELINUX/s/enforcing/disabled/' /etc/selinux/configif [ $? -eq 0 ];thenecho "防火墻和selinux已經成功關閉....."elseecho "防火墻和selnux關閉失敗,請手動關閉!!!"fi
echo#外網檢測
echo "正在檢測網絡是否能上外網......"echoping -c 2 www.baidu.com &> /dev/nullif [ $? -eq 0 ];thenecho "網絡正常"elseecho "網絡不可達!"fi
echo# 配置yum源-這里選用阿里源
#echo
#	echo "修改為國內yum源"
#	mkdir /etc/yum.repos.d/bak
#	mv /etc/yum.repos.d/* /etc/yum.repos.d/bak
#	wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#	wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
#	yum clean all && yum makecache # 修改時區echo "修改時區中......"timedatectl set-timezone Asia/Shanghailn -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeecho "修改時區成功......"# 時間同步
echoecho "時間同步中……"yum install -y ntpdate &> /dev/nullntpdate 172.26.251.1 &> /dev/nullfile=$(who | head -1 | cut -d" " -f1)echo "* */1 * * * /usr/sbin/ntpdate  172.26.251.1" > /var/spool/cron/$fileif [ $? -eq 0 ];thenecho "時間同步成功!!!"echo "unset MAILCHECK" >> /etc/profilesource /etc/profile &> /dev/nullelseecho "時間同步失敗!!!"fi
# 修改字符編碼
echoecho "修改字符編碼中……"echo 'LANG="en_US.UTF-8"' > /etc/locale.confecho "修改字符成功......"echo "----配置ssh禁用反向解析----"echo 'UseDNS=no' >> /etc/ssh/sshd_configecho "----允許通過密碼ssh遠程登錄----"echo 'PermitRootLogin yes' >> /etc/ssh/sshd_configsystemctl restart sshdecho "----設置ssh,20分鐘登錄無操作自動退出,服務器每120秒心跳包測試客戶端,三次不成功斷開----"echo 'export TMOUT=1200' >> /etc/profilesource /etc/profileecho "----查看歷史操作記錄,并加時間戳----"echo 'export HISTTIMEFORMAT="%F %T `whoami` "' >> /etc/profilesource /etc/profile#內核優化
echo "----內核優化----"
grep 'net.ipv6.conf.all.disable_ipv6' /etc/sysctl.conf  > /dev/null 2>&1
if [ $? -ne 0 ];then
# 關閉ipv6echo 'net.ipv6.conf.all.disable_ipv6 = 1' >> /etc/sysctl.confecho 'net.ipv6.conf.default.disable_ipv6 = 1' >> /etc/sysctl.conf#允許系統打開的端口范圍,不建議從1024開始,因為某些端口會存在10000以內。一般情況下已夠用。echo 'net.ipv4.ip_local_port_range = 10000    65000' >> /etc/sysctl.confecho 'net.core.somaxconn = 32768 >> /etc/sysctl.conf'
fi

在這里插入圖片描述

(3)、執行初始化

#為文件添加執行權限
[root@rancher init]# chmod +x ./init.sh 
[root@rancher init]# ./init.sh 正在配置你的主機名...請輸入你的主機名:

在這里插入圖片描述

(4)、執行完后重啟系統

[root@rancher init]# reboot

2、配置hosts文件

[root@rancher ~]# vim /etc/hosts

打開hosts文件點擊鍵盤i進行插入,下面配置copy到hosts

192.168.255.141 rancher
192.168.255.142 master
192.168.255.143 worker01
192.168.255.144 worker02

在這里插入圖片描述

3、配置各節點免密登錄

#rancher
#生成ssh密鑰
[root@rancher init]# ssh-keygen

輸入后 敲擊3下enter鍵盤 即可生成成功
在這里插入圖片描述

訪問連接各節點ssh

#復制密鑰到其他節點(每個節點都要執行)
[root@rancher]#  ssh-copy-id root@rancher
[root@rancher]#  ssh-copy-id root@master
[root@rancher]#  ssh-copy-id root@worker01
[root@rancher]#  ssh-copy-id root@worker02

三、在每個節點安裝docker

1、配置docker-ce國內yum源(阿里云)

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在這里插入圖片描述

2、安裝docker依賴包

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在這里插入圖片描述

3、安裝docker-ce

 yum install docker-ce -y

在這里插入圖片描述

** 備注:**

  • 如果出現 【try to add ‘–allowerasing’ to command line to replace conflicting packages or ‘–skip-broken’ to skip uninstallable packages or ‘–nobest’ to use not only best candidate packages】,則執行下面命令
yum install docker-ce -y --allowerasing

在這里插入圖片描述

4、啟動docker服務并設置開機自啟

systemctl start docker && systemctl enable docker

5、查看docker運行狀態

systemctl status docker

在這里插入圖片描述

6、查看docker版本信息

docker version

7、開啟包轉發功能和修改內核參數

modprobe br_netfilter
cat > /etc/sysctl.d/docker.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

8、加載并應用 /etc/sysctl.d/docker.conf 文件中的配置

sysctl -p /etc/sysctl.d/docker.conf

在這里插入圖片描述

9、配置阿里云鏡像

創建 /etc/docker 目錄

sudo mkdir -p /etc/docker

創建docker鏡像配置文件

sudo tee /etc/docker/daemon.json <<-'EOF'{"registry-mirrors": ["https://ox288s4f.mirror.aliyuncs.com","https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://mirror.ccs.tencentyun.com","https://docker.hpcloud.cloud","https://docker.m.daocloud.io","https://docker.unsee.tech","https://docker.1panel.live","http://mirrors.ustc.edu.cn","https://docker.chenby.cn","http://mirror.azure.cn","https://dockerpu11.org","https://dockerhub.icu","https://hub.rat.dev","https://proxy.1panel.live","https://docker.1panel.top","https://docker.m.daocloud.io","https://docker.1ms.run","https://docker.ketches.cn"]
}
EOF

10、重啟docker

立即生效

sudo systemctl daemon-reload

重啟docker

sudo systemctl restart docker

四、部署rancher

1、在rancher節點下載rancher鏡像

[root@rancher ~]# docker pull rancher/rancher:v2.5.7

在這里插入圖片描述

2、通過docker運行rancher服務器的容器

命令描述

-d: 在后臺(detached mode)運行容器,即使終端關閉也保持運行。--restart=unless-stopped: 容器退出時,除非明確停止,否則會自動重啟。這個選項確保 Rancher 服務在意外關閉后能夠自動恢復運行。-p 80:80 -p 443:443: 將容器內部的端口映射到宿主機上,使得宿主機的 80 端口和 443 端口可以訪問 Rancher 服務器提供的服務。例如,可以通過 `http://宿主機IP``https://宿主機IP` 訪問 Rancher Web UI。--privileged: 賦予容器全部的 Linux capabilities,這在某些情況下可能是必要的,例如需要訪問設備或執行特權操作時。--name rancher: 指定容器的名稱為 `rancher`,這樣可以通過該名稱管理和操作這個容器。rancher/rancher:v2.5.7: 指定要運行的 Docker 鏡像,這里是 Rancher 服務器的鏡像版本為 `v2.5.7`

(1)、創建rancher數據掛載文件夾

mkdir -p /data/d/rancher/data

(2)、啟動rancher容器

[root@rancher ~]# docker run -d --restart=always -p 80:80 -p 443:443 -v /etc/localtime:/etc/localtime -v /etc/timezone:/etc/timezone -v /data/d/rancher/data:/var/lib/rancher --privileged=true --user=root --name rancher rancher/rancher:v2.5.7

(3)、查看rancher容器信息

docker ps -a|grep rancher

在這里插入圖片描述

五、登錄Rancher平臺

1、再瀏覽器訪問Rancher節點IP ,由于未使用授信證書,會有報警,忽略即可

2、設置密碼

在這里插入圖片描述

3、至此Rancher安裝完成

在這里插入圖片描述

4、登錄后可點擊右下角語言選項選擇中文

在這里插入圖片描述

5、設置Rancher默認鏡像倉庫

把系統設置里面的 ”system-default-registry” value設置為

registry.cn-hangzhou.aliyuncs.com

在這里插入圖片描述
在這里插入圖片描述

六、創建集群

1、點擊全局選擇添加集群

在這里插入圖片描述
在這里插入圖片描述

2、填寫集群名稱,選擇kubernetes版本點擊保存

在這里插入圖片描述

3、勾選Etcd、control,復制此命令,在每個master節點執行命令

在這里插入圖片描述

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run  registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.5.7 --server https://192.168.255.141 --token ndkzstpnht7z5lvftkhmbc7wvgsgrxlq6s2r64ttqk9gxjgrnmjp75 --ca-checksum b5cb4d97b8be287df94db3736d7b7b58f8b2cfcb2758d91fb06c78afbf7b5bcd --etcd --controlplane

4、勾選worker復制此命令在每個worker節點執行命令

在這里插入圖片描述

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run  registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.5.7 --server https://192.168.255.141 --token ndkzstpnht7z5lvftkhmbc7wvgsgrxlq6s2r64ttqk9gxjgrnmjp75 --ca-checksum b5cb4d97b8be287df94db3736d7b7b58f8b2cfcb2758d91fb06c78afbf7b5bcd --worker

備注:

  • worker命令在主機worker01和worker02上執行

5、等待服務安裝完成

此過程將耗時較長時間(拉取鏡像時間較長),本文3臺節點初始化完成用了近3個小時

在這里插入圖片描述

點擊主機查看監控

在這里插入圖片描述

七、部署nginx服務

1、配置nginx點擊進入集群tyzwkj-cloud選擇Default

在這里插入圖片描述

(1)、點擊部署服務
在這里插入圖片描述
(2)、拉取nginx鏡像,填寫配置;點擊啟動
在這里插入圖片描述

(3)、等待nginx啟動
在這里插入圖片描述
在這里插入圖片描述

2、配置負載均衡

(1)、進入【負載均衡】畫面
在這里插入圖片描述

(2)、新增ingress映射,點擊保存
在這里插入圖片描述
(3)、設置完成后會生成一個域名
在這里插入圖片描述
(4)、驗證nginx服務
在這里插入圖片描述

點擊nginx-ingress地址(上圖中80/http)

在這里插入圖片描述

備注:


如果點擊nginx-ingress地址無法解析域名時,需要修改一下本地hosts文件,將xip.io域名解析到master節點ip

  • 本例中master節點的ip是192.168.255.142,下面是在hosts文件中添加的配置
192.168.255.142 xip.io

(5)、驗證負載均衡

點擊上圖nginx進入點擊pods查看日志

【第一步】進入第一個nginx容器,查看第一個nginx容器的日志

在這里插入圖片描述
在這里插入圖片描述

【第二步】進入第二個nginx容器畫面,查看第一個nginx容器的日志

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

【第三步】每訪問一次

在這里插入圖片描述

八、kubectl 命令行工具設置

1 、使用rancher安裝的k8s集群,服務器里面的kubectl 工具不能正常使用,如果需要在服務器執行kubectl命令的話,需要配置一下上下文

(1)、 kubectl 配置命令自動補全

yum install -y bash-completion
echo 'source /usr/share/bash-completion/bash_completion' >> ~/.bashrc
echo 'source  <(kubectl completion bash)' >> ~/.bashrc
source ~/.bashrc

(2)、搜索根目錄文件名為 kubectl 的文件或目錄是否存在,不存在則自己創建

find / -name kubectl
mkdir kubectl

(3)、查看/var/lib/rancher/下的文件獲取要創建鏈接的源文件或目錄

cd /var/lib/rancher/
執行下面命令查看是否可以獲取到pod列表
v1.25.12-rke2r1-15557ace5a8f/bin/kubectl get pod -A

(4)、然后替換掉v1.25.12-rke2r1-15557ace5a8f/bin/kubectl換成自己的版本;執行然后執行下面軟鏈接的命令
/usr/bin/kubectl為目標路徑,來訪問實際的 kubectl 可執行文件

ln -s   /var/lib/rancher/rke/data/v1.25.12-rke2r1-15557ace5a8f/bin/kubectl /usr/bin/kubectl

2、從rancher頁面獲取Kubectl工具連接k8s集群所需的配置文件kubeconfig,如下圖所示

在這里插入圖片描述

(1)、創建目錄

mkdir ${HOME}/.kube/

(2)、把下載的kubeConfig上傳到服務器.重命名為config放到 ${HOME}/.kube/目錄下
查看安裝的版本

kubectl version

九、監控配置

在這里插入圖片描述

1、進入監控配置畫面

在這里插入圖片描述

2、啟用監控

點擊【啟用監控】按鈕
在這里插入圖片描述

3、部署監控服務

進入【集群】->System畫面后,會發現新增了加【cattle-prometheus】命名空間及相關服務,這就是監控服務,只需等待一段時間就會自動部署好

在這里插入圖片描述

4、驗證

待上一步【cattle-prometheus】命名空間下的所有服務全部部署完成并狀態為【Active】后,即可進入【集群】畫面后,會看到下圖所示的監控面板

在這里插入圖片描述

點擊上圖Grafana按鈕就會進入對應監控畫面,如下圖所示

在這里插入圖片描述

十、重新安裝

說明:
執行重復安裝,需要清除所有記錄再執行安裝

docker stop $(docker ps -aq)docker system prune -fdocker volume rm $(docker volume ls -q)docker image rm $(docker image ls -q)rm -rf /etc/ceph \/etc/cni \/etc/kubernetes \/opt/cni \/opt/rke \/run/secrets/kubernetes.io \/run/calico \/run/flannel \/var/lib/calico \/var/lib/etcd \/var/lib/cni \/var/lib/kubelet \/var/lib/rancher/rke/log \/var/log/containers \/var/log/pods \/var/run/calico

結束,以上就是通過RancherServer搭建k8s的全部內容。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913399.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913399.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913399.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java學習第八部分——泛型

目錄 一、概述 &#xff08;一&#xff09;定義 &#xff08;二&#xff09;作用 &#xff08;三&#xff09;引入原因 二、使用 &#xff08;一&#xff09;類 &#xff08;二&#xff09;接口 &#xff08;三&#xff09;方法 三、類型參數 &#xff08;一&#xf…

定時點擊二次鼠標 定時點擊鼠標

定時點擊二次鼠標 定時點擊鼠標 今天分享一個定時點擊兩次的小工具。 我們在生活中&#xff0c;可能會遇到一些定時點擊的任務。比如說在晚上9點去發送一個群發&#xff0c;或者倒計時點擊一個按鈕。那么可以使用這個工具&#xff0c;僅適用于Windows電腦。 #定時點擊鼠標 #倒計…

Linux網絡配置與故障排除完全指南

1. ifconfig命令 - 網絡接口配置器 ifconfig&#xff08;interface configurator&#xff09;是Linux系統中最基礎的網絡配置工具。該命令可以初始化網絡接口、分配IP地址、啟用或禁用接口&#xff0c;同時還能查看接口的詳細信息。 查看網絡接口信息 # ifconfig eth0 …

Python Pytest-Benchmark詳解:精準性能測試的利器

在軟件開發的迭代過程中&#xff0c;性能優化如同精密手術&#xff0c;需要精準的測量工具。Pytest-Benchmark作為pytest生態中的性能測試插件&#xff0c;憑借其無縫集成能力和專業統計功能&#xff0c;成為Python開發者進行基準測試的首選工具。本文將深入解析其技術特性與實…

60天python訓練營打卡day51

學習目標&#xff1a; 60天python訓練營打卡 學習內容&#xff1a; DAY 51 復習日 作業&#xff1a;day43的時候我們安排大家對自己找的數據集用簡單cnn訓練&#xff0c;現在可以嘗試下借助這幾天的知識來實現精度的進一步提高 學習時間&#xff1a; 2025.07.04 浙大疏錦行…

支持向量機(SVM)在肺部CT圖像分類(肺癌檢測)中的實現與優化

?? 博主簡介:CSDN博客專家、CSDN平臺優質創作者,高級開發工程師,數學專業,10年以上C/C++, C#, Java等多種編程語言開發經驗,擁有高級工程師證書;擅長C/C++、C#等開發語言,熟悉Java常用開發技術,能熟練應用常用數據庫SQL server,Oracle,mysql,postgresql等進行開發應用…

YOLOv3-SPP 深度解析:引入 SPP 結構,顯著提升目標檢測性能!

? YOLOv3-SPP 技術詳解 一、前言 YOLOv3-SPP 是在 YOLOv3 基礎上加入 SPP&#xff08;Spatial Pyramid Pooling&#xff09;模塊的一種改進版本&#xff0c;旨在提升模型對不同尺度目標的識別能力&#xff0c;尤其是在大目標檢測方面表現更優。 它由 Alexey Bochkovskiy 在…

負載均衡--常見負載均衡算法

負載均衡算法可以分為兩類&#xff1a;靜態負載均衡算法和動態負載均衡算法。 1、靜態負載均衡算法包括&#xff1a;輪詢&#xff0c;比率&#xff0c;優先權 輪詢&#xff08;Round Robin&#xff09;&#xff1a;順序循環將請求一次順序循環地連接每個服務器。當其中某個服務…

深入解析GCC:開源的編譯器之王

在編程世界中&#xff0c;編譯器是將人類可讀代碼轉化為機器指令的關鍵橋梁。而GCC&#xff08;GNU Compiler Collection&#xff09; 無疑是這個領域最耀眼的明星之一。作為開源世界的基石&#xff0c;它支撐著Linux內核、眾多開源項目和商業軟件的構建。今天&#xff0c;我們…

https和http有什么區別

目錄 一、核心區別&#xff1a;是否基于加密傳輸 二、底層傳輸機制差異 三、HTTPS 的加密原理 四、應用場景差異 五、其他細節區別 總結 在網絡通信中&#xff0c;HTTP&#xff08;Hypertext Transfer Protocol&#xff0c;超文本傳輸協議&#xff09; 和HTTPS&#xff0…

CSS3 文本效果詳解

CSS3 文本效果詳解 引言 隨著Web技術的發展,CSS3為前端設計師和開發者提供了豐富的文本效果選項。這些效果不僅能夠增強網頁的美觀性,還能提升用戶體驗。本文將詳細介紹CSS3中的文本效果,包括文本陰影、文本描邊、文本裝飾、文本換行、文本大小寫等,并探討如何在實際項目…

MySQL 中 -> 和 ->> 操作符的區別

簡介 MySQL 5.7 或更高版本&#xff0c;可以使用 ->> 和 -> 運算符簡化語法這兩個操作符都是用于提取 JSON 數據的&#xff0c;但有一些重要區別 -> 操作符 功能&#xff1a;提取 JSON 對象的指定路徑的值 返回類型&#xff1a;返回 JSON 類型的值&#xff08;可…

Vue2 day07

1.vuex的基本認知2.構建多組件共享的數據環境步驟&#xff1a;1.在自己創建的文件夾下創建腳手架2.創建三個組件### 源代碼如下App.vue在入口組件中引入 Son1 和 Son2 這兩個子組件html <template><div id"app"><h1>根組件</h1><input ty…

簡述MCP的原理-AI時代的USB接口

1 簡介隨著AI的不斷發展&#xff0c;RAG&#xff08;檢索增強生成&#xff09;和function calling等技術的出現&#xff0c;使得大語言模型的對話生成能力得到了增強。然而&#xff0c;function calling的實現邏輯比較復雜&#xff0c;一個簡單的工具調用和實現方式需要針對不同…

CISSP知識點匯總-資產安全

CISSP知識點匯總 域1---安全與風險管理域2---資產安全域3---安全工程域4---通信與網絡安全域5---訪問控制域6---安全評估與測試域7---安全運營域8---應用安全開發域2 資產安全 一、資產識別和分類 1、信息分級(Classification): 按照敏感程度(機密性被破壞) 按照重要程度…

Spring Boot 3.x 整合 Swagger(springdoc-openapi)實現接口文檔

本文介紹 Spring Boot 3.x 如何使用 springdoc-openapi 實現 Swagger 接口文檔&#xff0c;包括版本兼容表、最簡單的配置示例和常見錯誤解決方案。1. Spring Boot 3.x 和 springdoc-openapi 版本對應表Spring Boot 版本Spring Framework 版本推薦的 springdoc-openapi 版本3.0…

Redis內存隊列Stream

本文為個人學習筆記整理&#xff0c;僅供交流參考&#xff0c;非專業教學資料&#xff0c;內容請自行甄別 文章目錄概述一、生產者端操作二、消費者端操作三、消費組操作四、狀態查詢操作五、確認消息六、消息隊列的選擇概述 Stream是Redis5.0推出的支持多播的可持久化的消息隊…

Minio安裝配置,桶權限設置,nginx代理 https minio

**起因&#xff1a;因為用到ruoyi-vue-plus框架中遇到生產環境是https&#xff0c;但是http的minio上傳的文件不能在后臺系統中訪問**安裝配置minio1. 下載安裝2. 賦文件執行權限3.創建配置文件4.創建minio.service新版minio創建桶需要配置桶權限1.下載客戶端2.設置訪問權限3.連…

數論基礎知識和模板

質數篩 用于快速處理 1&#xff5e;n 中所有素數的算法 因為依次遍歷判斷每一個數是否質數太慢&#xff0c;所以把一些明顯不能質數的篩出來 普通篩法&#xff0c;對于每個整數&#xff0c;刪除掉其倍數。 bool vis[N];//0表示是質數 int pri[N],o; //質數表 void get(int n…

Ubuntu20.04.6桌面版系統盤制作與安裝

概述 本教程講述Ubuntu20.04.6桌面版的系統U盤制作與安裝&#xff0c;所需工具為一臺電腦、大于4G的U盤、一個需要安裝Ubuntu系統的主機。 步驟1&#xff1a;下載系統鏡像與rufus 在ubuntu官網下載 ubuntu-20.04.6-desktop-amd64.iso&#xff0c;如圖 下載rufus工具&#xf…