kubernetes使用cri-o替换码头工人

  

部署环境

  
 <代码> #操作系统:Linux CentOS释放8.0.1905(核心)
  # kubelet版本:v1.14.0
  # runc版本:v1.0.0-rc9
  # crictl版本:v1.16.1
  # crio版本:v1.15.2
  # conmon版本:v2.0.1
  # cni版本:v0.8.2
  #网络插件:kube-router
  #工作目录:/应用程序
  #二进制文件目录:工作
  # cni目录:/应用程序/参股
  #工作节点:win10配置比;,/etc/crio/crio.conf
  #修改生成配置
  vim。/etc/crio/crio.conf
  #取消注释修改存储目录
  根="/应用程序/lib/集装箱/存储”
  #取消注释修改容器运行存储目录
  runroot="/应用程序/运行/集装箱/存储”
  #取消注释修改容器运行时文件打开数
  default_ulimits=[
  “nofile=1024000:1024000”,
  “nproc=1024000:1024000”,
  “核心=1:1”,
  ]
  #修改conmon路径默认conmon="/usr/地方/libexec/crio/conmon”
  conmon="/usr/bin/conmon "
  1024 #修改pids_limit默认
  pids_limit=102400
  # pause_image默认pause_image=" k8s.gcr.io/暂停:3.1”由于网络不通所有要修改
  pause_image=" docker.io/juestnow/pause-amd64:3.1”
  #修改参股了二进制路径
  plugin_dirs=[/应用程序/公司/bin/,
  #创建crictl配置
  猫在。/etc/crictl。yaml & lt; & lt; EOF
  runtime-endpoint: unix:///var/运行/crio/crio.sock
  EOF
  #创建crio启动文件
  猫在。/crio。服务& lt; & lt; EOF
  (单位)
  描述=OCI-based Kubernetes容器运行时界面的实现
  文档=https://github.com/github.com/cri-o/cri-o
  
  (服务)
  ExecStartPre=-/sbin/modprobe br_netfilter
  ExecStartPre=-/sbin/modprobe覆盖
  ExecStart=/usr/地方/bin/crio——进行日志级别信息
  重启=失败
  RestartSec=5
  LimitNOFILE=1024000
  LimitNPROC=1024000
  LimitCORE=无穷大
  LimitMEMLOCK=无穷大
  KillMode=过程
  (安装)
  WantedBy=multi-user.target
  EOF
  #分发解决目录结构
  root@Qist:/mnt/g/工作/crio #树
  .
  ├──有限公司
  │└──垃圾箱
  │├──带宽
  │├──桥
  │├──dhcp
  │├──防火墙
  │├──法兰绒
  │├──host-device
  │├──host-local
  │├──ipvlan
  │├──回环
  │├──macvlan
  │├──portmap
  │├──20元
  │├──sbr
  │├──静态的
  │├──调优
  │└──vlan
  ├──conmon
  ├──crictl
  ├──crio
  ├──crio.service
  ├──等
  │├──参股
  ││└──net.d
  87 - bridge.conflist││└──
  │├──容器
  ││|──policy.json
  │|
  │├──crictl.yaml
  │└──crio
  │└──crio.conf
  └──runc  
  

分发文件

  
 <代码> scp - r crio crictl 192.168.2.196:/usr/地方/bin/scp conmon runc 192.168.2.196:/usr/bin/#分发有限公司
  scp - r cni 192.168.2.196:/应用程序/#分发配置文件
  scp - r等192.168.2.196:/#分发启动文件
  scp crio。服务192.168.2.196:/usr/lib/systemd/系统/crio.service  
  

启动crio安装对应依赖

  
 <代码> dnf - y epel-release安装
  dnf安装dnf-utils ipvsadm telnet wget net-tools conntrack ipset金桥iptables curl sysstat libseccomp socat nfs-utils保险丝fuse-devel名为设备
  #启动crio
  systemctl daemon-reload
  systemctl启用crio
  systemctl开始crio
  (root@node05 ~) # crio systemctl状态
  ●crio。服务——OCI-based Kubernetes容器运行时界面的实现
  加载:加载(/usr/lib/systemd/系统/crio.service;启用;厂商预设:禁用)
  主动:主动Mon 2019-10-28 10:22:14 CST以来(运行);10小时前
  文档:https://github.com/github.com/cri-o/cri-o
  过程:714年ExecStartPre=/sbin/modprobe叠加(状态退出代码=,=0/成功)
  过程:659年ExecStartPre=/sbin/modprobe br_netfilter(状态退出代码=,=0/成功)
  主要PID: 726 (crio)
  任务:17(限制:49836)
  内存:89.3
  CGroup:/system.slice/crio.service
  └─726/usr/local/bin/crio——进行日志级别信息
  #创建测试应用
  猫在sandbox_config。json & lt; & lt; EOF
  {
  “元数据”:{
  “名称”:“podsandbox1”,
  “uid”:“redhat-test-crio”,
  “名称”:“redhat.test.crio”,
  “尝试”:1
  },
  “主机名”:“crictl_host”,
  “log_directory”:“”,
  " dns_config ": {
  “搜索”:(
  “8.8.8.8”
  ]
  },
  “port_mappings”: [],
  "资源":{
  “cpu”: {
  “限制”:3,
  “请求”:2
  },
  “记忆”:{
  “限制”:50000000,
  “请求”:2000000
  }
  },
  "标签":{
  “集团”:“测试”
  },
  "注释":{
  “老板”:“hmeng”,
  “security.alpha.kubernetes。io/seccomp豆荚”:“无侧限”
  },
  “linux”: {
  :“cgroup_parent/暴增/pod_123 - 456”,
  " security_context ": {
  " namespace_options ": {
  “网络”:0,
  “pid”: 1、
  “ipc”: 0
  },
  " selinux_options ": {
  “用户”:“system_u”,
  “角色”:“system_r”,
  “类型”:“svirt_lxc_net_t”,
  “级别”:“s0: c4、c5”
  }
  }
  }
  }
  EOF
  #创建舱
  POD_ID=$ (crictl runp。/sandbox_config.json)
  # POD ip
  crictl inspectp——输出表POD_ID美元
  crictl拉quay.io/crio复述:高山
  #创建容器
  CONTAINER_ID=(crictl创建POD_ID美元。/container_redis。json。/sandbox_config.json)
  #启动容器
  crictl开始CONTAINER_ID美元
  #查看集装箱
  crictl检查CONTAINER_ID美元
  #测试是否联通
  telnet 10.88.0.2 6379
  #查看复述,日志
  journalctl - u crio——no-pager
  #停止容器
  crictl停止CONTAINER_ID美元
  #删除容器
  crictl rm CONTAINER_ID美元
  #停止豆荚
  crictl阻止美元POD_ID
  #删除豆荚
  crictl rmp POD_ID美元
  #查看豆荚
  crictl豆荚
  #查看集装箱
  crictl ps
  #停止crio
  systemctl停止crio
  #删除创建cni0网络
  ▽dev cni0 ip链接
  #删除cni配置
  rm - f/etc/cni/net.d/87-bridge.conflist 

kubernetes使用cri-o替换码头工人