Rancher的快速使用及问题分析(一)之快速使用

7 篇文章 1 订阅
6 篇文章 0 订阅

一、 简介

  • 需求:IT公司里面都是需求驱动制,昨天盆友丢给我一个问题使用Rancher创建的容器,查不到端口映射,容器跑起来了,但是在浏览器中使用ip+port无法访问到容器内部的服务。没办法确定是宿主机/容器端口映射出问题,还是容器内部服务没启动。文章围绕着解决这个问题而展开。本人将该问题分为两部分:首先介绍Rancher的快速使用,然后在另一片文章介绍Rancher内部的docker网络机制。
  • 内容:快速搭建Rancher服务,使用Rancher创建容器,排查相关问题
  • 环境:Centos+虚拟机(出问题)、Centos+服务器

二、安装过程及问题分析

  1. 开启rancher服务

    • 环境:linux+服务器
    • sudo docker run -d --restart=always -p 9966:8080 rancher/server(启动rancher server)
      在这里插入图片描述
    • sudo docker logs -f <CONTAINER_ID>(查看日志)
      在这里插入图片描述
    • 容器启动完毕后使用主机ip+端口号(192.168.131.191:9966)即可访问rancher的UI界面
      在这里插入图片描述
  2. 添加主机
    在这里,为了简化操作,我们将添加运行着Rancher Server的主机为Rancher内的主机。在实际的生产环境中,请使用专用的主机来运行Rancher Server。

    1. 步骤如下图所示(host-addhost-save-copy-run in host-close):
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    2. 在运行server容器的宿主机上面执行复制出来的命令,即可开启Rancher agent。然后在UI节目可看到添加的主机信息

      sudo docker run --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.11 http://192.168.31.191:9966/v1/scripts/58DC07B475EFEF23411C:1546214400000:1007gJSboVnWjnmPQyfAdb8UbI
      

      在这里插入图片描述
      在这里插入图片描述

  3. 使用rancher创建容器
    使用Rancher创建一个nginx容器,开放本地的10086端口(10086->80)在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  4. 宿主机ip+端口号访问nginx(192.168.31.191:10086)
    在这里插入图片描述
    注意:1.初始安装时Rancher的访问控制并未配置,任何能够访问你的IP地址的人,都可以访问你的UI和API。我们建议你配置 访问控制. 2. 国内的公有云主机,如果需要使用80和8080端口,需备案后才可以使用。(官网原话)

  5. 到运行容器的主机上docker ps |grep nginx,奇怪的事情发生了, 缺少了docker容器的宿主机端口与容器端口的映射信息
    在这里插入图片描述

  6. docker run -d --name nginx docker.io/nginx (使用docker cli 创建一个新的容器对比)
    在这里插入图片描述

  7. docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container ip> 也没返回容器的ip信息

  8. docker psdocker inspect都没办法返回容器的ip信息,那么上面提到的问题怎么解决呢?

  9. netstat -apn|grep 10086也没查到宿主机监听的端口信息,但是使用ip+port确实可以访问到nginx容器?

  10. 欲知后事如何,却看下篇文章

三、总结

Rancher是一个开源的企业级容器管理平台。通过Rancher,企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台。Rancher提供了在生产环境中使用的管理Docker和Kubernetes的全栈化容器部署与管理平台。本文主要介绍Rancher的快速使用和引出使用Rancher创建容器与docker cli创建容器的区别,希望给同是Rancher初学者的博友们占个坑,少走一些弯路。介绍中提出的问题将在下一篇文章Rancher的快速使用及问题分析(二)之网络驱动分析与问题解决详细说明,敬请关注。本人旨在分享技术,文章写的不好或者不多的地方请多多指正,将不胜感激。本文属于原创,若有引用请注明出处。若有疑问或错误,欢迎各位指出,可以评论或者跟本人联系。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值