ansible二进制安装docker

---
- hosts: 10.0.0.33
  vars: 
     - dockerver: "19.03.15"
     - dockersrc: "http://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/docker-{{dockerver}}.tgz"
     - dockerdir: "/usr/bin"
     - dockerdatadir: /data/docker
  tasks:
    - name: remove packs
      apt: 
        name: 
          - docker
          - docker-engine 
          - docker.io
        state: absent
    - name: download docker and unarchive
      unarchive: remote_src=yes src={{dockersrc}} dest=/usr/local
      register: var1
      until: var1 is succeeded
      retries: 5
    - name: copy binary
      shell: /bin/cp -a /usr/local/docker/*  {{dockerdir}} 
    - name: group add
      group: name=docker system=yes
    - name: user add
      user: name=deployer append=yes groups=docker shell=/bin/bash
    - name: generate container.service
      copy:
        content: |
              [Unit]
              Description=containerd container runtime
              Documentation=https://containerd.io
              After=network.target local-fs.target
              
              [Service]
              ExecStartPre=-/sbin/modprobe overlay
              ExecStart={{dockerdir}}/containerd
              
              Type=notify
              Delegate=yes
              KillMode=process
              Restart=always
              RestartSec=5
              # Having non-zero Limit*s causes performance problems due to accounting overhead
              # in the kernel. We recommend using cgroups to do container-local accounting.
              LimitNPROC=infinity
              LimitCORE=infinity
              LimitNOFILE=1048576
              # Comment TasksMax if your systemd version does not supports it.
              # Only systemd 226 and above support this version. 
              TasksMax=infinity
              OOMScoreAdjust=-999
              
              [Install]
              WantedBy=multi-user.target     
        dest: /lib/systemd/system/containerd.service
    - name: generate docker.socket
      copy:
        content: |
              [Unit]
              Description=Docker Socket for the API                                                                                                                                              PartOf=docker.service

              [Socket]
              ListenStream=/var/run/docker.sock
              SocketMode=0660
              SocketUser=root
              SocketGroup=docker
              
              [Install]
              WantedBy=sockets.target

        dest: /lib/systemd/system/docker.socket
    - name: generate docker.service
      copy:
        content: |
              [Unit]
              Description=Docker Application Container Engine
              Documentation=https://docs.docker.com
              BindsTo=containerd.service
              After=network-online.target firewalld.service containerd.service
              Wants=network-online.target
              Requires=docker.socket
              
              [Service]
              Type=notify
              # the default is not to use systemd for cgroups because the delegate issues still
              # exists and systemd currently does not support the cgroup feature set required
              # for containers run by docker
              ExecStart={{dockerdir}}/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
              ExecReload=/bin/kill -s HUP $MAINPID
              TimeoutSec=0
              RestartSec=2
              Restart=always
              
              # Note that StartLimit* options were moved from "Service" to "Unit" in systemd 229.
              # Both the old, and new location are accepted by systemd 229 and up, so using the old location
              # to make them work for either version of systemd.
              StartLimitBurst=3
              
              # Note that StartLimitInterval was renamed to StartLimitIntervalSec in systemd 230.
              # Both the old, and new name are accepted by systemd 230 and up, so using the old name to make
              # this option work for either version of systemd.
              StartLimitInterval=60s
              
              # Having non-zero Limit*s causes performance problems due to accounting overhead
              # in the kernel. We recommend using cgroups to do container-local accounting.
              LimitNOFILE=infinity
              LimitNPROC=infinity
              LimitCORE=infinity

              # Comment TasksMax if your systemd version does not support it.
              # Only systemd 226 and above support this option.
              TasksMax=infinity
              
              # set delegate yes so that systemd does not reset the cgroups of docker containers
              Delegate=yes
              
              # kill only the docker process, not all processes in the cgroup
              KillMode=process
              
              [Install]
              WantedBy=multi-user.target   
        dest: /lib/systemd/system/docker.service
    - name: make dir /etc/docker
      file: state=directory path=/etc/docker
    - name: generate config json
      copy: 
        content: |
              {
                 "registry-mirrors": ["https://dw5xdjrm.mirror.aliyuncs.com"],
                 "data-root": "/data/docker",
                 "insecure-registries": ["10.0.0.84"]
              }
        dest: /etc/docker/daemon.json
    - name: make docker data dir
      file: state=directory recurse=yes path=/data/docker owner=root group=root
    - name: start dockerd
      service: name=docker state=started enabled=yes

   

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装ansible二进制文件的过程如下:首先,进入ansible安装路径/etc/ansible,并删除该路径下的roles文件夹和hosts文件。然后,解压压缩文件kubeasz.zip并将解压后的内容放入当前目录下(/etc/ansible)。接下来,根据搭建集群环境的要求安装docker服务和ansible服务。修改ansible.cfg配置文件,并准备好离线yum仓库挂载点和registry仓库的相关挂载点。最后,执行相应的命令来安装kubernetes集群。请注意,虚拟机测试电脑容易死机,因此目前使用的是单节点测试部署,一主一从的高可用版本尚未测试。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [k8s二进制文件以及docker二进制文件](https://download.csdn.net/download/Adoiph_ldx/12235971)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [k8s自动化安装脚本(二进制-1.25.0)](https://blog.csdn.net/qq_44246980/article/details/126712571)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值