K8s简介及环境搭建

news2024/10/9 22:55:20

一、Kubernetes简介

kubernetes 的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器进行管理。目的是实现资源管理的自动化,主要提供了如下的主要功能:
  • 自我修复:一旦某一个容器崩溃,能够在1秒中左右迅速启动新的容器
  • 弹性伸缩:可以根据需要,自动对集群中正在运行的容器数量进行调整
  • 服务发现:服务可以通过自动发现的形式找到它所依赖的服务
  • 负载均衡:如果一个服务起动了多个容器,能够自动实现请求的负载均衡
  • 版本回退:如果发现新发布的程序版本有问题,可以立即回退到原来的版本
  • 存储编排:可以根据容器自身的需求自动创建存储卷

1.1 K8s组件及其用途

k8s集群包括2种角色:master管理节点和node工作节点,至少要有一个node工作节点。

kubectl 是一个客户端的管理工具,直接管理API server,提供一个请求到一个api server,中间有一个auth认证(判断是否有权限访问)。

1、Master 节点包含4大组件,分别是:kube-api  server、kube-controller-master、kube-scheduler、etcd,备注:etcd可以单独部署集群,不必在master节点上
组件名称

作用

kube-apiservermaster核心组件,k8s集群的统一访问入口,各组件的协调者,以RESTful API提供接口方式,所有的对象资源的增删改查和监听操作都交给APIServer处理后再提交给etcd数据库做持久化存储
kube-controller-manager 处理集群中常规后台任务,一个资源对应一个控制器,而controller-Manager就是负责处理这些控制器的,例如 deployment-controller、endpoint-controller(负责维护集群的状态,比如程序部署安排,故障检测,自动扩展,滚动更新等)
kube-schedulerscheduler根据调度算法为新创建的pod选择一个node节点(负责集群资源调度,按照调度策略将pod绑定到某个node节点上,即给pod分配一个家)
etcd分布式键值存储数据库,用于保存集群状态数据,比如Pod,Service等对象信息,etcd可以有多个(etcd数据库集群),也可以不与master节点在一起,只要master能通过网络连接etcd数据库即可

2、Node节点包含2大组件,分别是:kubelet、kube-proxy  

组件名称

作用

 kubelet kubelet 是Master在Node节点上的Agent,管理node节点主机运行容器的生命周期,比如创建容器,Pod挂载数据卷,下载secret,获取容器和节点状态等工作,kubelet 将每个Pod转换成一组容器(负责维护容器的生命周期,即通过控制docker来创建、更新、销毁容器
kube-proxy在Node节点上实现Pod网络代理,维护网络规则和四层负载均衡工作,实现让Pod节点(一个或者多个容器)对外提供服务(负责提供集群内部的服务发现和负载均衡)

1.2 K8s常用名词概念

名词概念
Master
集群控制节点,每个集群需要至少一个 master 节点负责集群的管控
Node
工作负载节点,由 master 分配容器到这些 node 工作节点上,然后 node 节点上的
Pod
kubernetes 的最小控制单元,容器都是运行在 pod 中的,一个 pod 中可以有 1 个或者多个容器
Controller
控制器,通过它来实现对 pod 的管理,比如启动 pod 、停止 pod 、伸缩 pod 的数量等
Service
pod 对外服务的统一入口,下面可以维护者同一类的多个 pod
Label
标签,用于对 pod 进行分类,同一类 pod 会拥有相同的标签
NameSpace命名空间,用来隔离pod的运行环境

二、K8s环境部署

2.1 docker仓库环境部署

[root@docker-hub ~]# hostname
docker-hub

# 修改配置文件
[root@docker-hub ~]# cd /etc/yum.repos.d/
[root@docker-hub yum.repos.d]# vim docker.repo
[root@docker-hub yum.repos.d]# cat docker.repo
[docker]
name=docker-ce
baseurl=https://mirrors.aliyun.com/docker-ce/linux/rhel/9/x86_64/stable/
gpgcheck=0

# 安装docker镜像
[root@docker-hub yum.repos.d]# yum install docker-ce -y

已安装:
  containerd.io-1.7.22-3.1.el9.x86_64
  docker-buildx-plugin-0.17.1-1.el9.x86_64
  docker-ce-3:27.3.1-1.el9.x86_64
  docker-ce-cli-1:27.3.1-1.el9.x86_64
  docker-ce-rootless-extras-27.3.1-1.el9.x86_64
  docker-compose-plugin-2.29.7-1.el9.x86_64

[root@docker-hub yum.repos.d]# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock-
-iptables=true

# 启动docker
[root@docker-hub yum.repos.d]# systemctl enable --now docker.service
[root@docker-hub yum.repos.d]# docker info

# 从本地上传registry并导入
[root@docker-hub ~]# ls
公共  视频  文档  音乐  anaconda-ks.cfg  registry.tag.gz
模板  图片  下载  桌面  
[root@docker-hub ~]# docker load -i registry.tag.gz
ce7f800efff9: Loading layer  7.644MB/7.644MB
30609d4f10dd: Loading layer  792.6kB/792.6kB
3b6a51496c9d: Loading layer  17.55MB/17.55MB
e704e9e3e9dc: Loading layer  3.584kB/3.584kB
f019f591461d: Loading layer  2.048kB/2.048kB
Loaded image: registry:latest
[root@docker-hub ~]# mkdir certs

# 做解析
[root@docker-hub ~]# vim /etc/hosts
[root@docker-hub ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.25.254.250  harbor.yee.org  reg.yee.org

[root@docker-hub ~]# openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/yee.org.key -subjectAltName = DNS:reg.yee.org" -x509 -days 365 -out certs/yee.org.crt
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Shanxi
Locality Name (eg, city) [Default City]:XI'an
Organization Name (eg, company) [Default Company Ltd]:docker
Organizational Unit Name (eg, section) []:registry
Common Name (eg, your name or your server's hostname) []:reg.yee.org
Email Address []:admin@yee.org

# 上传本地harbor包并解压缩
[root@docker-hub ~]# tar zxf harbor-offline-installer-v2.5.4.tgz
[root@docker-hub ~]# ls
公共  文档  anaconda-ks.cfg                      registry.tag.gz
模板  下载  certs
视频  音乐  harbor
图片  桌面  harbor-offline-installer-v2.5.4.tgz

# 修改配置文件
[root@docker-hub ~]# cd harbor/
[root@docker-hub harbor]# cp harbor.yml.tmpl harbor.yml
[root@docker-hub harbor]# vim harbor.yml
hostname: reg.yee.org
certificate: /data/certs/yee.org.crt
private_key: /data/certs/yee.org.key
harbor_admin_password: 123

[root@docker-hub ~]# docker load -i nginx-latest.tar.gz
9853575bc4f9: Loading layer  77.83MB/77.83MB
72db5db515fd: Loading layer    114MB/114MB
8b87c0c66524: Loading layer  3.584kB/3.584kB
ec1a2ca4ac87: Loading layer  4.608kB/4.608kB
55e54df86207: Loading layer   2.56kB/2.56kB
f4f00eaedec7: Loading layer   5.12kB/5.12kB
5f0272c6e96d: Loading layer  7.168kB/7.168kB
Loaded image: nginx:latest
[root@docker-hub ~]# mkdir /data/
[root@docker-hub ~]# cd /data/
[root@docker-hub data]# cp /root/certs/ /data/ -r
[root@docker-hub data]# cd
[root@docker-hub ~]# cd harbor/
[root@docker-hub harbor]# ./install.sh --with-chartmuseum

[root@docker-hub harbor]# cd /root/certs/
[root@docker-hub certs]# ls
yee.org.crt  yee.org.key
[root@docker-hub certs]# cp /root/certs/yee.org.crt /etc/docker/certs.d/reg.yee.org/ca.crt  

做本地解析,路径:C:\Windows\System32\drivers\etc

测试harbor环境

上传镜像:

在docker界面创建文件夹yee

至此,harbor仓库搭建完成。

2.2 K8s集群部署

2.1.1 K8s环境部署说明

K8S 中文官网: https://kubernetes.io/zh-cn/
在本次实验中,我们采用一主多从集群结构类型,一台master节点,两台node节点。其中,maser结点命名为,node结点命名为node1、node2
主机名ip扮演的角色
k8s-master172.25.254.200

K8s集群控制节点

k8s-node1172.25.254.10K8s集群工作节点
k8s-node2172.25.254.20K8s集群工作节点

2.1.2 K8s集群实验环境搭建

注意:

  • 所有节点禁用selinux和防火墙
  • 所有节点同步时间和解析
  • 所有节点安装docker-ce
  • 所有节点禁用swap,注意注释掉/etc/fstab文件中的定义
1、本地解析

[root@k8s-node1 ~]# scp /etc/hosts root@172.25.254.20:/etc/hosts
[root@k8s-node1 ~]# scp /etc/hosts root@172.25.254.100:/etc/hosts
[root@k8s-node1 ~]# scp /etc/hosts root@172.25.254.250:/etc/hosts

2、检测软件仓库
3、安装docker镜像

1、配置私有仓库,使其支持认证

2、创建目录,目录与域名相同

3、在docker中将hub拷贝给主机master,并将其命名为ca.crt

重启

4、检测

5、在node1、node2中拉取镜像:

# 将master中的后缀为rpm的所有文件全部拷贝到node1、node2中
[root@k8s-master ~]# scp *.rpm root@172.25.254.10:/mnt
[root@k8s-master ~]# scp *.rpm root@172.25.254.20:/mnt


# 在node1、node2中查看
[root@k8s-node1 ~]# cd /mnt/
[root@k8s-node1 mnt]# ls
containerd.io-1.7.20-3.1.el9.x86_64.rpm
docker-buildx-plugin-0.16.2-1.el9.x86_64.rpm
docker-ce-27.1.2-1.el9.x86_64.rpm
docker-ce-cli-27.1.2-1.el9.x86_64.rpm
docker-ce-rootless-extras-27.1.2-1.el9.x86_64.rpm
docker-compose-plugin-2.29.1-1.el9.x86_64.rpm
hgfs

[root@k8s-node2 ~]# cd /mnt/
[root@k8s-node2 mnt]# ls
containerd.io-1.7.20-3.1.el9.x86_64.rpm
docker-buildx-plugin-0.16.2-1.el9.x86_64.rpm
docker-ce-27.1.2-1.el9.x86_64.rpm
docker-ce-cli-27.1.2-1.el9.x86_64.rpm
docker-ce-rootless-extras-27.1.2-1.el9.x86_64.rpm
docker-compose-plugin-2.29.1-1.el9.x86_64.rpm
hgfs


# 在node1、node2安装
[root@k8s-node2 mnt]# dnf install *.rpm -y

2.3 K8s 安装

2.3.1 所有禁用swap和本地解析

[root@k8s-master mnt]# swapon -s
Filename                                Type            Size            Used            Priority
/dev/nvme0n1p2                          partition       5242876         0               -2
[root@k8s-node1 ~]# systemctl  mask dev-nvme0n1p3.device
Created symlink /etc/systemd/system/dev-nvme0n1p3.device → /dev/null.
[root@k8s-node2 ~]# systemctl  mask dev-nvme0n1p3.device
Created symlink /etc/systemd/system/dev-nvme0n1p3.device → /dev/null.

[root@k8s-node2 ~]# swapoff /dev/dm-1
[root@k8s-node2 ~]# swapon -s
[root@k8s-node1 dev]# systemctl status dev-dm\\x2d1.swap
● dev-dm\x2d1.swap - /dev/dm-1
    Follows: unit currently follows state of dev-mapper-rhel\x2dswap.swap
     Loaded: loaded
     Active: active since Thu 2024-09-26 17:59:08 CST; 2 days ago
      Until: Thu 2024-09-26 17:59:08 CST; 2 days ago
       What: /dev/dm-1
[root@k8s-node1 dev]# systemctl mask dev-dm\\x2d1.swap
Created symlink /etc/systemd/system/dev-dm\x2d1.swap → /dev/null.
[root@k8s-node1 dev]# vim /etc/fstab
[root@k8s-node1 dev]# swapoff /dev/dm-1
[root@k8s-node1 dev]# swapon -s

2.3.2 依赖的安装

[root@k8s-master mnt]# scp cri-dockerd-0.3.14-3.el8.x86_64.rpm libcgroup-0.41-19.el8.x86_64.rpm  root@172.25.254.10:/opt/
root@172.25.254.10's password:
cri-dockerd-0.3.14-3.el8.x86_64.rpm           100%   11MB 182.8MB/s   00:00
libcgroup-0.41-19.el8.x86_64.rpm              100%   69KB  45.6MB/s   00:00
[root@k8s-master mnt]#  scp cri-dockerd-0.3.14-3.el8.x86_64.rpm libcgroup-0.41-19.el8.x86_64.rpm  root@172.25.254.20:/opt/
root@172.25.254.20's password:
cri-dockerd-0.3.14-3.el8.x86_64.rpm           100%   11MB 214.2MB/s   00:00
libcgroup-0.41-19.el8.x86_64.rpm              100%   69KB  69.3MB/s   00:00


[root@k8s-node1 ~]# dnf install /opt/*.rpm -y
[root@k8s-node2 ~]# dnf install /opt/*.rpm -y
[root@k8s-node1 ~]# systemctl enable --now cri-docker.service
Created symlink /etc/systemd/system/multi-user.target.wants/cri-docker.service → /usr/lib/systemd/system/cri-docker.service.

[root@k8s-node2 ~]# systemctl enable --now cri-docker.service
Created symlink /etc/systemd/system/multi-user.target.wants/cri-docker.service → /usr/lib/systemd/system/cri-docker.service.

[root@k8s-master yum.repos.d]# dnf install kubelet-1.30.0 kubeadm-1.30.0 --downloadonly --downloaddir=/mnt

[root@k8s-master yum.repos.d]# scp /etc/yum.repos.d/k8s.repo  root@172.25.254.20:/etc/yum.repos.d/
root@172.25.254.20's password:
k8s.repo                                      100%   98   198.4KB/s   00:00
[root@k8s-master yum.repos.d]# scp /etc/yum.repos.d/k8s.repo  root@172.25.254.10:/etc/yum.repos.d/
root@172.25.254.10's password:
k8s.repo 

[root@k8s-node1 mnt]# dnf install kubelet-1.30.0 kubeadm-1.30.0 --downloadonly --downloaddir=/mnt -y
[root@k8s-node1 mnt]# dnf install kubectl-1.30.0 -y

2.3.3 设置kubectl命令补齐

[root@k8s-master ~]# dnf install bash-completion -y
[root@k8s-master ~]# echo "source <(kubectl completion bash)" >> ~/.bashrc
[root@k8s-master ~]# source ~/.bashrc

2.3.4 在节点安装cri-docker及其master节点拉取K8S所需镜像

[root@k8s-master ~]# kubeadm config images pull \
 --image-repository  registry.aliyuncs.com/google_containers \
> --kubernetes-version v1.30.0 \
> --cri-socket=unix:///var/run/cri-dockerd.sock
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-apiserver:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-controller-manager:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-scheduler:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-proxy:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/coredns:v1.11.1
[config/images] Pulled registry.aliyuncs.com/google_containers/pause:3.9
[config/images] Pulled registry.aliyuncs.com/google_containers/etcd:3.5.12-0
[root@k8s-master ~]# kubeadm config images pull \

 --image-repository  registry.aliyuncs.com/google_containers \
> --kubernetes-version v1.30.0 \
> --cri-socket=unix:///var/run/cri-dockerd.sock
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-apiserver:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-controller-manager:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-scheduler:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-proxy:v1.30.0
[config/images] Pulled registry.aliyuncs.com/google_containers/coredns:v1.11.1
[config/images] Pulled registry.aliyuncs.com/google_containers/pause:3.9
[config/images] Pulled registry.aliyuncs.com/google_containers/etcd:3.5.12-0

2.3.5 集群初始化

[root@k8s-master ~]# systemctl status kubelet.service
[root@k8s-master ~]# kubeadm init --pod-network-cidr=10.244.0.0/16 \
--image-repository reg.timinglee.org/k8s \
--kubernetes-version v1.30.0 \
--cri-socket=unix:///var/run/cri-dockerd.sock
[root@k8s-master ~]# echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >>
~/.bash_profile
[root@k8s-master ~]# kubectl get node
NAME STATUS ROLES AGE VERSION
k8s-master.timinglee.org NotReady control-plane 4m25s v1.30.0
root@k8s-master ~]# kubectl get pod -A
NAMESPACE NAME READY STATUS
RESTARTS AGE
kube-system coredns-647dc95897-2sgn8 0/1 Pending
0 6m13s
kube-system coredns-647dc95897-bvtxb 0/1 Pending
0 6m13s
kube-system etcd-k8s-master.timinglee.org 1/1 Running
0 6m29s
kube-system kube-apiserver-k8s-master.timinglee.org 1/1 Running
0 6m30s
kube-system kube-controller-manager-k8s-master.timinglee.org 1/1 Running
0 6m29s

2.3.6 节点扩容

# node1与node2相同操作
[root@k8s-node1 ~]# kubeadm join 172.25.254.100:6443 --token
5hwptm.zwn7epa6pvatbpwf --discovery-token-ca-cert-hash
sha256:52f1a83b70ffc8744db5570288ab51987ef2b563bf906ba4244a300f61e9db23 --crisocket=unix:///var/run/cri-dockerd.sock

[root@k8s-master ~]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master.yee.org Ready control-plane 98m v1.30.0
k8s-node1.yee.org Ready <none> 21m v1.30.0
k8s-node2.yee.org Ready <none> 21m v1.30.0

# 建立
[root@k8s-master ~]# kubectl run test --image nginx

# 查看状态
[root@k8s-master ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
test 1/1 Running 0 6m29s

# 删除
root@k8s-master ~]# kubectl delete pod

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2200277.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用HashiCorp Nomad Cluster App管理高可用集群

容器化和Kubernetes如今已成为创建可扩展云原生应用程序的基本要素。但并非每个应用程序工作负载都需要容器或Kubernetes资源。HashiCorp Nomad是一个轻量级的工作负载调度程序&#xff0c;提供了与Kubernetes相似的优势&#xff0c;但不仅可以管理容器&#xff0c;还能管理其他…

SSL证书是否可以给多个域名使用?

在当今数字化的网络环境中&#xff0c;SSL证书在保障网站安全、保护用户数据传输方面发挥着至关重要的作用。那么&#xff0c;SSL 证书是否可以给多个域名使用呢&#xff1f;这是一个在网站开发、运营和安全管理领域备受关注的问题。 SSL 证书能够给多个域名使用吗&#xff1f…

指针函数C++

指针函数概念 指针函数在C中是一种特殊类型的函数。从本质上讲&#xff0c;它是一个函数&#xff0c;不过其返回值是一个指针类型的数据。例如&#xff0c;像int* plusfunction(int a, int b);这样的函数声明&#xff0c;plusfunction就是一个指针函数&#xff0c;它接受两个i…

Jvisualvm介绍;使用Jvisualvm:运行jvisualvm.exe;安装gc插件;查看gc

一&#xff0c;Jvisualvm介绍 jvisualvm是用来查看硬件使用情况的工具&#xff0c;多数会用它来看内存的使用情况 VisualVM 是Netbeans的profile子项目&#xff0c;已在JDK6.0 update 7 中自带(java启动时不需要特定参数&#xff0c;监控工具在bin/jvisualvm.exe)&#xff0c…

leetcode 10.9 94.二叉树的中序遍历

94. 二叉树的中序遍历 已解答 简单 相关标签 相关企业 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2]示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a…

LabelImag标注工具环境配置

LabelImag标注工具环境配置 Anaconda的安装和使用 Anaconda是一个集成了Python解释器、conda包管理器和众多科学计算、数据分析、机器学习等常用库的发行版。它允许用户轻松地管理Python环境和包&#xff0c;无需手动解决依赖问题。Anaconda特别适用于数据科学、机器学习、人…

Mac 下编译 libaom 源码教程

AV1 AV1是一种开放、免版税的视频编码格式&#xff0c;由开放媒体联盟&#xff08;AOMedia&#xff09;开发&#xff0c;旨在提供高压缩效率和优秀的视频质量。AV1支持多种分辨率&#xff0c;包括SD、HD、4K和8K&#xff0c;并适用于视频点播&#xff08;VOD&#xff09;、直播…

Python酷库之旅-第三方库Pandas(139)

目录 一、用法精讲 626、pandas.plotting.scatter_matrix方法 626-1、语法 626-2、参数 626-3、功能 626-4、返回值 626-5、说明 626-6、用法 626-6-1、数据准备 626-6-2、代码示例 626-6-3、结果输出 627、pandas.plotting.table方法 627-1、语法 627-2、参数 …

从0开始linux(11)——进程(3)进程的切换与调度

欢迎来到博主的专栏&#xff1a;从0开始linux 博主ID&#xff1a;代码小豪 文章目录 进程优先级进程的切换linux的调度算法 进程优先级 进程的优先级决定了进程获得CPU资源分配的顺序&#xff0c;在进程&#xff08;0&#xff09;这篇文章中博主就讲过并发和并行两个概念。即对…

ai论文写作软件哪个好?分享5款ai论文题目生成器

在当前的学术研究和写作领域&#xff0c;AI论文写作软件已经成为提高效率和质量的重要工具。根据多个来源的评测和推荐&#xff0c;以下是五款值得推荐的AI论文写作软件&#xff0c;其中特别推荐千笔-AIPassPaper。 1. 千笔-AIPassPaper 千笔-AIPassPaper是一款基于深度学习和…

超级详细 安装 Python 最佳实践文档

第一步&#xff0c;下载Python 打开Python官网&#xff1a;Welcome to Python.org 可以根据自己的需要下载相应的版本 第二步&#xff0c;安装Python 右键.exe文件->选择打开 安装 勾选 Install for all users选项 Browse为选择安装路径&#xff0c;可以自定安装路径 D盘…

动态规划12:213. 打家劫舍 II

动态规划解题步骤&#xff1a; 1.确定状态表示&#xff1a;dp[i]是什么 2.确定状态转移方程&#xff1a;dp[i]等于什么 3.初始化&#xff1a;确保状态转移方程不越界 4.确定填表顺序&#xff1a;根据状态转移方程即可确定填表顺序 5.确定返回值 题目链接&#xff1a;213.…

DAMA数据管理知识体系(第15章 数据管理成熟度评估)

课本内容 15.1 引言 概要 能力成熟度评估&#xff08;Capability Maturity Assessment&#xff0c;CMA&#xff09;是一种基于能力成熟度模型&#xff08;Capability Maturity Model&#xff0c;CMM&#xff09;框架的能力提升方案&#xff0c;描述了数据管理能力初始状态发展到…

怎么将手机备忘录传送至电脑

在数字化时代&#xff0c;手机备忘录已成为我们生活中不可或缺的一部分。无论是记录购物清单、工作事项&#xff0c;还是灵感闪现的瞬间&#xff0c;手机备忘录都能随时记录下这些宝贵的信息&#xff0c;帮助我们防止遗忘。然而&#xff0c;有时候我们需要将这些备忘录内容转移…

IPSeizer/Zenmap 查看内网哪些ip没有被占用

下载IPSeizer, 无需安装直接双击打开使用&#xff0c;填入需要的网段&#xff0c;点start查询 或者使用Zenmap&#xff0c;指定范围和端口号

LSTM(长短时记忆网络)

一、引言 在处理序列数据时&#xff0c;循环神经网络&#xff08;RNN&#xff09;虽然能够处理序列数据并保留历史信息&#xff0c;但在实践中发现它对于捕捉长时间依赖关系的能力有限&#xff0c;尤其是在训练过程中容易遇到梯度消失或梯度爆炸的问题。为了解决这些问题&…

《Oracle DB备份与恢复》开篇:一切从Oracle Incarnation开始

题记&#xff1a;从本篇开始&#xff0c;我将为大家介绍Oracle DB备份与恢复。备份恢复是DBA的核心工作&#xff0c;重在实操&#xff0c;多加练习&#xff0c;模拟各种DB或实例崩溃的场景。不同于一些博主一出场就讲如何备份恢复&#xff0c;我将从备份的源头原理开始介绍。本…

科研必备降重画图工具

科研必备降重工具 1. Quillbot 链接&#xff1a;https://quillbot.com/ 2. paperyy 链接&#xff1a;https://www.paperyy.com/ 3、秘塔写作猫 链接&#xff1a;https://xiezuocat.com/#/ 4. DeepL 链接&#xff1a;https://www.deepl.com/translator 科研必备画图工具 1…

软考攻略/超详细/系统集成项目管理工程师/基础知识分享11

4.7 安全架构&#xff08;掌握&#xff09; 安全保障以风险和策略为基础&#xff0c;在信息系统的整个生命周期中&#xff0c;安全保障应包括技术、管理、人员和工程过程的整体安全&#xff0c;以及相关组织机构的健全等。 4.7.1 安全威胁&#xff08;掌握&#xff09; 常见的…

ZigMa: A DiT-style Zigzag Mamba Diffusion Model

ZigMa: DiT风格之字形Mamba扩散模型 论文链接&#xff1a;https://arxiv.org/abs/2403.13802 项目链接&#xff1a;https://taohu.me/zigma/ Abstract 扩散模型长期以来一直受到可扩展性和二次复杂度问题的困扰&#xff0c;特别是在基于Transformer的结构中。在本研究中&…