当前位置: 首页 > news >正文

天津品牌网站制作关系营销

天津品牌网站制作,关系营销,定陶区城乡建设局网站,视频网站制作目录 一、理论 1.资源控制 2.Docker数据管理 二、实验 1.Docker资源控制 2.Docker数据管理 三、问题 1.docker容器故障导致大量日志集满#xff0c;造成磁盘空间满 2、当日志占满之后如何处理 四、总结 一、理论 1.资源控制 (1) CPU 资源控制 cgroups#xff0…目录 一、理论 1.资源控制 2.Docker数据管理 二、实验 1.Docker资源控制 2.Docker数据管理  三、问题 1.docker容器故障导致大量日志集满造成磁盘空间满 2、当日志占满之后如何处理 四、总结 一、理论 1.资源控制 (1)  CPU 资源控制 cgroups是一个非常强大的linux内核工具他不仅可以限制被 namespace 隔离起来的资源 还可以为资源设置权重、计算使用量、操控进程启停等等。 所以 cgroups Control groups 实现了对资源的配额和度量。 (2)cgroups四大功能 ●资源限制可以对任务使用的资源总额进行限制●优先级分配通过分配的cpu时间片数量以及磁盘IO带宽大小实际上相当于控制了任务运行优先级●资源统计可以统计系统的资源使用量如cpu时长内存用量等●任务控制cgroup可以对任务执行挂起、恢复等操作 (3)  设置CPU使用率上限 Linux 通过 CFSCompletely Fair Scheduler完全公平调度器来调度各个进程对 CPU 的使用。CFS 默认的调度周期是 100ms。10万微秒 我们可以设置每个容器进程的调度周期以及在这个周期内各个容器最多能使用多少 CPU 时间。 使用 --cpu-period 即可设置调度周期使用 --cpu-quota 即可设置在每个周期内容器能使用的 CPU 时间。两者可以配合使用。 CFS 周期的有效范围是 1ms~1s对应的 --cpu-period 的数值范围是 1000~100000。 而容器的 CPU 配额必须不小于 1ms即 --cpu-quota 的值必须 1000。 启用一台容器:   docker run -itd --name test1 centos:7 /bin/bashcpu.cfs_period_uscpu分配的周期(微秒所以文件名中用 us 表示默认为100000。 cpu.cfs_quota_us表示该control group限制占用的时间微秒默认为-1表示不限制。 如果设为50000表示占用50000/10000050%的CPU。   ①进行CPU压力测试 编写一个脚本 docker exec -it 3ed82355f811 /bin/bash vim /cpu.sh #!/bin/bash i0 while true do let i done 运行 chmod x /cpu.sh ./cpu.sh exit ②设置50%的比例分配CPU使用时间上限 docker run -itd --name test2 --cpu-quota 50000 centos:7 /bin/bash #可以重新创建一个容器并设置限额 或者 cd /sys/fs/cgroup/cpu/docker/3ed82355f81151c4568aaa6e7bc60ba6984201c119125360924bf7dfd6eaa42b/ echo 50000 cpu.cfs_quota_us docker exec -it 3ed82355f811 /bin/bash ./cpu.sh exit (4)  设置CPU资源占用比设置多个容器时才有效 Docker 通过--cpu-shares 指定 CPU 份额默认值为1024值为1024的倍数。 例 创建两个容器为 c1 和 c2若只有这两个容器设置容器的权重使得c1和c2的CPU资源占比为1/3和2/3。 docker run -itd --name c1 --cpu-shares 512 centos:7 docker run -itd --name c2 --cpu-shares 1024 centos:7 分别进入容器进行压力测试 yum install -y epel-release yum install stress -y stress -c 4 (5)设置容器绑定指定的CPU 先分配虚拟机4个CPU核数 创建容器 docker run -itd --name cc1 --cpuset-cpus 1,3 centos:7 /bin/bash进入容器进行压力测试 yum install -y epel-release yum install stress -y stress -c 4 exit 退出容器执行 top 命令再按 1 查看CPU使用情况 (6) 对磁盘IO配额控制blkio的限制 --device-read-bps限制某个设备上的读速度bps数据量单位可以是kb、mb(M)或者gb。 例 docker run -itd --name test4 --device-read-bps /dev/sda:1M centos:7 /bin/bash --device-write-bps 限制某个设备上的写速度bps数据量单位可以是kb、mb(M)或者gb。 例 docker run -itd --name test5 --device-write-bps /dev/sda:1M centos:7 /bin/bash --device-read-iops 限制读某个设备的iops次数   --device-write-iops 限制写入某个设备的iops次数 创建容器并限制写速度 docker run -it --name cc3 --device-write-bps /dev/sda:1mb centos:7 /bin/bash通过dd来验证写速度 dd if/dev/zero oftest.out bs1M count10 oflagdirect #添加oflag参数以规避掉文件系统cache2.Docker数据管理 1数据卷 数据卷是一个供容器使用的特殊目录位于容器中。可将宿主机的目录挂载到数据卷上对数据卷的修改操作立刻可见并且更新数据不会影响镜像从而实现数据在宿主机与容器之间的迁移。数据卷的使用类似于Linux下对目录进行的mount操作。 例 先下载一个镜像 docker pull centos:7宿主机目录/var/www挂载到容器中的/data1。 注意:宿主机本地目录的路径必须是使用绝对路径。如果路径不存在Docker会自动创建相应的路径。 docker run -V /var/www:/data1 --name web1 -it centos:7 /bin/bash #-v选项可以在容器内创建数据卷ls echo this is cc1 /data1/abc.txt exit#返回宿主机进行查看 cat /var/www/abc.txt 2数据卷容器 如果需要在容器之间共享一些数据最简单的方法就是使用数据卷容器。数据卷容器是一个普通的容器专门提供数据卷给其他容器挂载使用。 例 创建一个容器作为数据卷容器 docker run --name web2 -v /data1 -v /data2 -it centos:7 /bin/bash echo this is web2 /data1/abc.txt echo THIS IS WEB2 /data2/ABC.txt 使用 --volumes-from来挂载web2容器中的数据卷到新的容器 docker run -it --volumes-from web2 --name web3 centos:7 /bin/bash cat /data1 /abc.txt cat /data2/ABC.txt 3端口映射 在启动容器的时候如果不指定对应的端口在容器外是无法通过网络来访问容器内的服务。端口映射机制将容器内的服务提供给外部网络访问实质上就是将宿主机的端口映射到容器中使得外部网络访问宿主机的端口便可访问容器内的服务。 docker run -d --name test1 -P nginx #随机映射端口( 从32768开始) docker run -d --name test2 -p 43000:80 nginx #指定映射端口 4容器互联使用centos镜像 容器互联是通过容器的名称在容器间建立一条专门的网络通信隧道。简单点说就是会在源容器和接收容器之间建立一条隧道接收容器可以看到源容器指定的信息 例 docker run -itd -P --name xx1 centos:7 /bin/bash创建并运行接收容器取名xx2使用--1ink选项指定连接容器以实现容器互联 docker run -itd -P --name xx2 --link xx1:xx2 centos:7 /bin/bash进xx2容器ping xxl docker exec -it xx2 bash二、实验 1.Docker资源控制 1设置CPU使用率上限 进行CPU压力测试 编写一个脚本 查看脚本占用CPU资源 设置50%的比例分配CPU使用时间上限 可以看到CPU占用率接近50%cgroups对CPU的控制起了效果 2设置CPU资源占用比设置多个容器时才有效 创建两个容器为 c1 和 c2若只有这两个容器设置容器的权重使得c1和c2的CPU资源占比为1/3和2/3。 分别进入容器进行压力测试 容器c1 容器c2 查看容器运行状态动态更新 CPU总和是400%。因为虚拟机使用的是4核而且C1和C2的CPU使用百分比约为12 3设置容器绑定指定的CPU 已分配虚拟机4个CPU核数 创建容器 只允许cc1容器使用第2个和第4个CPU 进入容器 安装依赖包 安装压力测试工具 进行压力测试 执行 top 命令 再按 1 查看CPU使用情况只有第2个和第4个CPU被使用 4对磁盘IO配额控制blkio的限制 创建容器并限制写速度 可以看到写的速度被限制了 清理docker占用的磁盘空间: 用于清理磁盘删除关闭的容器、无用的数据卷和网络 2.Docker数据管理  (1) 数据卷 先下载一个镜像 宿主机目录/var/www挂载到容器中的/data1。 注意:宿主机本地目录的路径必须是使用绝对路径。如果路径不存在Docker会自动创建相应的路径。 文件内容一样 2数据卷容器 创建一个容器作为数据卷容器 使用 --volumes-from来挂载web2容器中的数据卷到新的容器 是在上一个容器创建的文件说明挂载成功 3端口映射 在启动容器的时候如果不指定对应的端口在容器外是无法通过网络来访问容器内的服务。端口映射机制将容器内的服务提供给外部网络访问实质上就是将宿主机的端口映射到容器中使得外部网络访问宿主机的端口便可访问容器内的服务。 (4)  容器互联使用centos镜像 容器互联是通过容器的名称在容器间建立一条专门的网络通信隧道。简单点说就是会在源容器和接收容器之间建立一条隧道接收容器可以看到源容器指定的信息 创建并运行源容器取名xx1 创建并运行接收容器取名xx2使用--1ink选项指定连接容器以实现容器互联 进xx2容器ping xxl 三、问题 1.docker容器故障导致大量日志集满造成磁盘空间满 1解决方案 清除日志 #!/bin/bash logs$ (find /var/lib/docker/containers/ -name *-json.log*) for log in $logs do cat /dev/null $log done 2、当日志占满之后如何处理 ###设置docker日志文件数量及每个日志大小vim /etc/docker/daemon.json { registry-mirrors: [http://f613ce8f.m.daocloud.io] log-driver: json-file,   #我的一日志格式 log-opts: { max-size : 500m, max-file : 3}   日志的参数最大500M   我最大容器中有三个日志文件 每个日志文件大小是500M } 修改完需要重新加载  systemctl daemon-reload 四、总结 清理docker占用的磁盘空间: docker system prune -a #可以用于清理磁盘删除关闭的容器、无用的数据卷和网络
http://www.dnsts.com.cn/news/69128.html

相关文章:

  • 做队徽的网站国内重要新闻
  • 企业网站设计与优化网站做收录要多少长时间
  • 凡科建站官网网站模板信托公司网站建设
  • 名校建设网站wordpress加实时时间
  • 网站实名认证查询申请表阿里巴巴做短视频网站
  • 做内衣模特接广告网站青羊建站报价
  • 网站销售策划网站建设 软文
  • 中国网站开发的前景赣州网站建设新闻
  • 泰安网站建设案例html5 手机 网站
  • 网站建设dyfwzx建聊天网站
  • 普陀区网站制作洛阳建设厅网站
  • 站酷设计网站官网入企业网站开发背景
  • 谁有qq网站开发资源群廊坊seo排名公司
  • 百度排名 网站标题网站制作 昆明
  • 手机网站开发人员工具wordpress接口密码
  • 济南网站优化公司排名网站被k
  • 济源建网站简单网站搭建
  • 网站开发平台开发公司租号网站建设贴吧
  • iis能建设网站吗wordpress08影视
  • 给网站做seo的必要性有没有专门做宝宝用品的网站
  • 沈阳康平志诚建设集团网站创新网站建设
  • 中国建设银行网站是什么上海网页制作步骤
  • 广州网站建设哪家技术好wordpress分类页面添加幻灯片
  • 网站做收录要多少长时间个人网站花多少钱
  • 网站维护升级装修设计师培训班
  • 网站架构模式用哪种优秀交互设计app欣赏
  • wordpress快速仿站教程给企业做网站前景
  • thinkphp手机网站模板学设计哪个网站好
  • 漳浦网站制作刚刚发生了什么大事
  • 住房城乡建设部招投标网站网站开发技术路线与规范