设为首页 收藏本站
查看: 1162|回复: 0

[经验分享] centos7下kubernetes(1。kubernetes

[复制链接]

尚未签到

发表于 2018-1-4 23:07:51 | 显示全部楼层 |阅读模式
  kubernetes官网:https://kubernetes.io/docs/home/
  也是怀着不情愿的心情,要开始kubernetes了,本身是非常热爱技术,尤其是容器技术,可能是最近有点累和懈怠,变得有些懒惰了。
  每每这种情况,我都会去智联招聘搜一下docker。。。。薪资很高,看了具体的招聘要求,差距很大很大,感觉好累啊。只能说学海无涯,回头可能是岸。。。。话不多说了。开始吧
  跑起来~~~
  https://kubernetes.io/docs/tutorials/kubernetes-basics/

  左面是教程菜单。
  我们先来创建一个kubernetes集群,感受一下:

  显示以下操作界面:

  很热情的开始界面

  左边是操作说明,右边是terminal,命令终端口

  根据操作说明,我们在terminal中执行minikube start,然后执行kubectl get nodes,这样就创建好了一个单节点的kubernetes集群
  集群的唯一节点为host01,需要注意的是当前执行命令的地方并不是host01.我们是在通过kubernetes的命令行工具远程管理集群

  heapster,kubernetes-dashboard都是集群中运行的服务
  集群就这么创建好了
  kubernetes核心功能
  部署应用:
  kubectl run kubernetes-bootcamp  --image=docker.io/jocatalin/kubernetes-bootcamp:v1   --port=8080
注:显示的有点不正常

  这里的deployment是kubernetes的一个术语,可以理解为应用。
  kubernetes还有一个重要的术语:Pod
  pod是容器的集合,通常会将紧密相关的一组容器放到一个POd中,同一个Pod中的所有容器共享IP地址和port空间,也就是说他们在一个newwork namespace中
  Pod是kubernetes调度的最小单位,同一Pod中的容器始终被一起调度。
  运行kubectl get pods

  kubernetes-bootcamp-390780338-rsrzj   就是应用的pod
  访问应用:
  默认情况下,所有pod只能在集群内部访问。对于上面这个例子,要访问应用只能直接访问容器的8080端口。为了能从外部访问应用,我们需要将容器的8080端口映射到节点的端口。
  执行如下命令:
  kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port 8080

  执行kubectl get services可以查看应用被映射到那个端口

  这里有两个service
  kubernetes是默认的service,暂时不考虑
  kubernetes-bootcamp是我们应用的service,8080端口已经映射到host01的31068端口,端口号是随机分配的,可以执行如下命令访问应用:
  curl host01:31068

  Scale应用:
  默认情况下只运行一个副本,可以通过kubectl get deployments

  执行以下命令将副本数增加到3个:
  kubectl scale deployments/kubernetes-bootcamp --replicas=3


  通过curl访问应用:

  可以看到每次请求发送到不同的pod,三个副本轮询处理,这样就实现了负载均衡
  要scale down也很方便,执行命令:


  滚动更新:
  当前应用使用的image版本为v1,执行如下命令将其升级到v2:
  kubectl set image deployments/kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2


  如果要退回v1版本也很容易,执行kubectl rollout undo


  验证版本已经回退到v1

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-431717-1-1.html 上篇帖子: 资深实践篇 下篇帖子: Kubernetes网络模型概念
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表