您的位置:首页 > 房产 > 家装 > 网页设计高清素材_平面设计接单话术_免费推广网站平台_百度推广获客成本大概多少

网页设计高清素材_平面设计接单话术_免费推广网站平台_百度推广获客成本大概多少

2025/2/24 13:10:26 来源:https://blog.csdn.net/m0_66705547/article/details/142763485  浏览:    关键词:网页设计高清素材_平面设计接单话术_免费推广网站平台_百度推广获客成本大概多少
网页设计高清素材_平面设计接单话术_免费推广网站平台_百度推广获客成本大概多少

1 docker相关信息和优化配置

1)查看docker版本详解

root@zz:~# docker version
Client: Docker Engine - CommunityVersion:           27.3.1API version:       1.47Go version:        go1.22.7Git commit:        ce12230Built:             Fri Sep 20 11:40:59 2024OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          27.3.1API version:      1.47 (minimum version 1.24)Go version:       go1.22.7Git commit:       41ca978Built:            Fri Sep 20 11:40:59 2024OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.7.22GitCommit:        7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311crunc:Version:          1.1.14GitCommit:        v1.1.14-0-g2c9f560docker-init:Version:          0.19.0GitCommit:        de40ad0

2)docker 信息详解

root@zz:~# docker info
Client: Docker Engine - CommunityVersion:    27.3.1Context:    defaultDebug Mode: false     #client 端是否开启debugPlugins:buildx: Docker Buildx (Docker Inc.)Version:  v0.17.1Path:     /usr/libexec/docker/cli-plugins/docker-buildxcompose: Docker Compose (Docker Inc.)Version:  v2.29.7Path:     /usr/libexec/docker/cli-plugins/docker-composeServer:Containers: 0   #当前主机运行的容器总数Running: 0     #有几个容器是正在运行的Paused: 0      #有几个容器是暂停的Stopped: 0     #有几个容器是停止的Images: 0       #当前服务器镜像数Server Version: 27.3.1       #服务端版本Storage Driver: overlay2     #正在使用的存储引擎Backing Filesystem: extfs   #后端文件系统,即服务器的磁盘系统Supports d_type: true       #是否支持 d_typeUsing metacopy: false       #是否使用 metacopyNative Overlay Diff: true   #是否支持差异数据存储userxattr: false            #是否试用 userxattrLogging Driver: json-file    #日志类型,每个容器的标准输出以日志存放Cgroup Driver: systemd       #cgroup类型Cgroup Version: 2            #cgroup版本Plugins:                     #插件Volume: local               #卷Network: bridge host ipvlan macvlan null overlay  #overlay跨主机通信Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog #日志类型Swarm: inactive              #是否支持swarm 没有开启 类似k8s的工具Runtimes: io.containerd.runc.v2 runc   #已安装的容器运行时Default Runtime: runc        #默认容器运行时Init Binary: docker-init     #初始化容器的守护进程,即 pid 为1的进程containerd version: 7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311c #版本runc version: v1.1.14-0-g2c9f560 #runc版本init version: de40ad0        #init版本Security Options:            #安全选项apparmor                    #安全模块seccomp                     #安全计算模块Profile: builtin       cgroupns                    #安全计算模块Kernel Version: 6.8.0-45-generic       #宿主机内核版本Operating System: Ubuntu 24.04.1 LTS   #宿主机os版本OSType: linux                          #宿主机os类型Architecture: x86_64                   #宿主机cpu架构CPUs: 2                                #宿主机cpu核数Total Memory: 1.638GiB                 #宿主机总内存Name: zz                               #宿主机主机名ID: d1c4671f-58d4-4832-90be-fe062f3c9b4e  #宿主机 IDDocker Root Dir: /var/lib/docker#宿主机docker数据的保存目录建议使用独立ssd磁盘保证性能和空间Debug Mode: false             # server 端 debug是否开启Experimental: false           #测试新功能和收集社区反馈,一般测试版会开启Insecure Registries:          #非安全的镜像仓库127.0.0.0/8Live Restore Enabled: false   #是否开启活动重启(重启docker-daemo 不关闭容器)WARNING: bridge-nf-call-iptables is disabled #系统警告
WARNING: bridge-nf-call-ip6tables is disabled #系统警告

①metacopy使用场景
处理大量小文件:在处理大量小文件时,metacopy 可以显著减少文件系统的 I/O 操作,提高性能。
频繁的文件创建和删除:在需要频繁创建和删除文件的场景中,metacopy 可以减少文件系统的开销。
容器镜像构建:在构建容器镜像时,如果涉及到大量文件的复制和修改,metacopy 可以加速这一过程。
启用 metacopy
metacopy 特性默认是禁用的,需要在启动 Docker 守护进程时通过配置文件或命令行参数来启用

通过配置文件启用
编辑 Docker 的配置文件(通常是 /etc/docker/daemon.json):

{"storage-driver": "overlay2","storage-opts": ["overlay2.metacopy=on"]
}


重启 Docker 服务:
 

sudo systemctl restart docker


通过命令行启用
在启动 Docker 守护进程时,可以通过命令行参数启用 metacopy:

sudo dockerd --storage-driver overlay2 --storage-opt overlay2.metacopy=on


注意事项
兼容性:metacopy 特性依赖于底层文件系统(如 ext4、XFS)的支持。确保你的文件系统支持 metacopy。
性能影响:虽然 metacopy 在某些场景下可以提高性能,但在其他场景下可能会带来额外的开销。建议在实际环境中进行测试,以确定是否适合启用该特性。
数据一致性:在某些情况下,metacopy 可能会影响文件系统的数据一致性。确保在启用该特性前了解其潜在的风险。

②d_type

文件系统支持 d_type 的常见情况
ext4:默认支持 d_type。
XFS:默认支持 d_type。
btrfs:默认支持 d_type。
tmpfs:默认支持 d_type。

检查 Docker 是否使用 d_type
你可以通过查看 Docker 的日志来确认是否启用了 d_type 支持:

sudo journalctl -u docker | grep d_type


d_type 支持是 Docker 中 overlay2 存储驱动的一个重要特性,可以显著提高文件系统操作的性能和可靠性。确保你的文件系统支持 d_type,并在启动 Docker 时启用该特性,可以进一步优化 Docker 的性能。如果你的文件系统不支持 d_type,Docker 会自动回退到不使用 d_type 的模式,但性能可能会受到影响。

③ userxattr 选项的作用
启用 userxattr (userxattr: true):
允许在文件和目录上设置和读取用户扩展属性。
这对于某些应用程序和工具(如 SELinux、AppArmor 和其他安全相关工具)可能非常重要,因为它们依赖于这些扩展属性来实现细粒度的安全控制。
禁用 userxattr (userxattr: false):
禁止在文件和目录上设置和读取用户扩展属性。
这可以减少文件系统的开销,提高性能,特别是在不需要这些扩展属性的情况下。
配置 userxattr 选项
通过配置文件启用或禁用 userxattr
编辑 Docker 的配置文件(通常是 /etc/docker/daemon.json):

{"storage-driver": "overlay2","storage-opts": ["overlay2.userxattr=false"]
}


重启 Docker 服务:

sudo systemctl restart docker


通过命令行启用或禁用 userxattr
在启动 Docker 守护进程时,可以通过命令行参数启用或禁用 userxattr:

sudo dockerd --storage-driver overlay2 --storage-opt overlay2.userxattr=false

④cgroupfs vs systemd
cgroupfs:
描述: cgroupfs 是 Docker 的默认 cgroup 驱动程序。
优点: 简单易用,不需要额外的依赖。
缺点: 可能与系统的其他部分(如 systemd)存在冲突,特别是在较新的系统中。
systemd:
描述: systemd 是一个系统和服务管理器,广泛用于现代 Linux 发行版。systemd 也支持 cgroup 管理。
优点: 更好的系统集成,与 systemd 服务管理器无缝配合,提供更细粒度的资源管理和监控。
缺点: 配置稍微复杂一些,需要 systemd 支持。
如何将 Docker 配置为使用 systemd 作为 cgroup 驱动程序
编辑 Docker 配置文件:
打开 Docker 的配置文件(通常是 /etc/docker/daemon.json)。
添加或修改 cgroup-driver 配置项,将其设置为 systemd。

{"exec-opts": ["native.cgroupdriver=systemd"]
}

重启 Docker 服务:
保存配置文件后,重启 Docker 服务以使更改生效。
 


sudo systemctl restart docker

⑤AppArmor: 用于限制程序的文件访问、网络连接和其他系统调用。
Seccomp: 用于限制进程可以执行的系统调用,减少攻击面。

cgroupns: 用于将 cgroups 隔离到不同的命名空间中,提高容器之间的资源隔离性。  

⑥常见警告及解决办法

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
vim /etc/sysctl.conf
添加以下内容
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1

最后再执行

sysctl -p

sudo systemctl restart docker

若出现 sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: No such file or directory sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-ip6tables: No such file or directory

则执行 sudo modprobe br_netfilter

再执行 

sysctl -p

sudo systemctl restart docker

即可

方法二 用ipvs代替

当看到 `WARNING: bridge-nf-call-iptables is disabled` 警告时,确实可以考虑使用 `ipvs` 作为替代方案,尤其是在需要高性能负载均衡和网络管理的场景中。`ipvs`(IP Virtual Server)是一个内核模块,用于实现高性能的负载均衡和网络地址转换(NAT)。

什么是 `ipvs`?

`ipvs` 是 Linux 内核的一个模块,用于实现第四层(传输层)的负载均衡。它可以在内核态处理大量的网络流量,提供比 `iptables` 更高效的负载均衡和转发能力。`ipvs` 通常用于高性能的负载均衡器,如 `HAProxy` 和 `Kubernetes` 的 `kube-proxy` 组件。

 为什么使用 `ipvs`?

1. **高性能**: `ipvs` 在内核态处理网络流量,性能通常优于 `iptables`。
2. **可扩展性**: `ipvs` 支持多种负载均衡算法,可以更好地处理大规模的网络流量。
3. **灵活性**: `ipvs` 提供了丰富的配置选项,可以满足不同场景的需求。

如何启用 `ipvs`?

1. 安装 `ipvs` 模块

首先,确保你的系统已经安装了 `ipvs` 模块。你可以使用以下命令来加载 `ipvs` 模块:


sudo modprobe ip_vs
sudo modprobe ip_vs_rr
sudo modprobe ip_vs_wrr
sudo modprobe ip_vs_sh
 

这些模块分别对应 `ipvs` 的核心功能和不同的负载均衡算法(轮询、加权轮询、最少连接数)。

 2. 配置 `ipvs` 模块

你可以使用 `ipvsadm` 工具来配置 `ipvs`。首先,安装 `ipvsadm`:


sudo apt-get install ipvsadm  # Debian/Ubuntu
sudo yum install ipvsadm      # CentOS/RHEL
 

 3. 配置 `ipvs` 规则

使用 `ipvsadm` 添加和管理 `ipvs` 规则。例如,创建一个虚拟服务器并将流量转发到两个真实服务器:


sudo ipvsadm -A -t 192.168.1.100:80 -s rr
sudo ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.101:80 -g
sudo ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.102:80 -g
```

- `-A`:添加虚拟服务器
- `-t`:指定虚拟服务器的 IP 和端口
- `-s`:指定负载均衡算法(`rr` 表示轮询)
- `-a`:添加真实服务器
- `-r`:指定真实服务器的 IP 和端口
- `-g`:使用直接路由模式

4. 验证配置

你可以使用以下命令查看 `ipvs` 的配置:


sudo ipvsadm -L -n
 

在 Docker 中使用 `ipvs`

如果你在使用 Docker 并希望使用 `ipvs`,可以考虑以下几点:

1. **Kubernetes**: 如果你在使用 Kubernetes,可以配置 `kube-proxy` 使用 `ipvs` 模式。编辑 `kube-proxy` 的配置文件(通常是 `/etc/kubernetes/manifests/kube-proxy.yaml`),添加或修改以下内容:

spec:containers:- name: kube-proxyimage: k8s.gcr.io/kube-proxy:v1.21.0command:- /usr/local/bin/kube-proxy- --config=/var/lib/kube-proxy/config.conf- --iptables-sync-period=30s- --ipvs-sync-period=30s- --feature-gates=SupportIPVSProxyMode=true- --proxy-mode=ipvs

2. **Docker Swarm**: Docker Swarm 本身没有直接支持 `ipvs` 的选项,但你可以通过自定义网络配置和使用 `ipvs` 负载均衡器来实现类似的效果。

总结

`WARNING: bridge-nf-call-iptables is disabled` 警告表示 Docker 的网桥无法调用 `iptables` 规则,这可能影响网络的安全性和功能。虽然你可以通过启用 `bridge-nf-call-iptables` 来解决这个问题,但如果你需要更高性能的负载均衡和网络管理,可以考虑使用 `ipvs` 作为替代方案。`ipvs` 提供了更高的性能和更丰富的配置选项,适用于高性能的负载均衡场景。

Docker之WARNING: IPv4 forwarding is disabled. Networking will not work

配置转发

vim /etc/sysctl.conf
#配置转发
net.ipv4.ip_forward=1
#重启服务,让配置生效
systemctl restart network
#查看是否成功,如果返回为“net.ipv4.ip_forward = 1”则表示成功
sysctl net.ipv4.ip_forward

检查容器是否正常访问网络

#重启docker服务
service docker restart
#查看运行过的容器
docker ps -a
#启动gitlab 容器
docker start gitblab2
#进入gitlab容器
docker attach gitlab2
#获取百度信息
curl baidu.com

WARNING: No swap limit support

系统警告信息 (没有开启 swap 资源限制 )

vim /etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=2
GRUB_DISTRIBUTOR=`lsb_ release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX="net.ifnames=0 swapaccount=1"                 #修改此行swapaccount=1update-grub
reboot

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com