Kubernetes(k8s) 实验总结

 

上面左边是我的个人微信,如需进一步沟通,请加微信。  右边是我的公众号“Openstack私有云”,如有兴趣,请关注。

在上篇博文《Kubernetes 入门学习》中提到了Katacoda实验环境可以进一步熟悉K8S的使用,具体网址是:

https://www.katacoda.com/courses/kubernetes/

最近花了一些时间完成这些实验场景,一共有17个实验场景,每个场景大概10分钟左右,经过这些实验,对K8S就有一个大体的了解。这些场景包含这些内容:

  • 启动单个节点群集

了解如何启动包含DNS和Kube UI的单节点Minikube群集

  • 使用Kubeadm启动多节点群集

使用Kubeadm引导Kubernetes集群

  • 使用Kubectl部署容器

了解如何使用Kubectl启动容器并使其可访问

  • 使用YAML部署容器

了解如何使用YAML定义来部署容器

  • 部署留言簿Web应用程序示例

本场景教您如何使用Kubernetes部署Guestbook示例

  • 网络介绍

了解可用的不同网络方法

  • 创建入口路由

了解如何定义基于主机和路径的Ingress路由

  • 生存和准备健康检查

了解如何使用Liveness和Readiness探针确保容器健康

  • 开始使用CRI-O和Kubeadm

了解如何部署基于CRI-O的Kubeadm群集

  • 在Kubernetes上运行状态服务

了解如何在Kubernetes上运行有状态服务

  • 使用Kubernetes管理秘密和密码

了解Kubernetes如何帮助确保机密

  • 用Kompose部署Docker Compose文件

了解如何使用Kompose部署现有的Docker Compose定义

  • 从源代码部署到Kubernetes

如何在Kubernetes中从源代码获取正在运行的服务

  • Helm包管理器

使用Kubernetes的Helm Package Manager来部署Redis

  • Helm(经典)包管理器

使用Kubernetes的Helm(经典)包管理器来部署Redis

  • 在Kubernetes上安装Weave Scope

了解如何在Kubernetes上运行Weave Scope

  • Kubeless入门

了解如何使用Kubeless将无服务器功能部署到Kubernetes

17个实验涵盖了k8s的安装配置和使用,另外,对于实际使用很有帮助的Helm可以实现标准化模块化功能组件(比如web服务、mariadb、redis等等)的自动化部署,包括自动化的镜像下载并根据dockerfile制作自己的镜像、上传镜像、自动配置标准化k8s的yaml部署配置文件。还有一个是k8s可视化组件Weave Scope,可以实现对整个k8s集群的web图形界面管理,更加直观方便的管理维护k8s集群。

经过实验,个人感觉k8s真的做到了上层应用和基础架构脱离,原来需要考虑的平台差异、基础架构、双机冗余、容量扩展、软件版本升级等等一系列很费人力和时间的事情,在k8s里面全部被非常非常简单的得到了解决。

k8s是基于容器管理docker,node节点类似于openstack的计算节点使用docker来完成对容器的承载,master类似于openstack的controller节点完成对node的管理以及对pod的调度、自动化健康监测、node节点资源的监控,以及其他自动化的pod副本部署或者迁移。

k8s的主要管理命令是kubectl,可以完成大部分的k8s的管理任务,从概念上来说,如果要学习k8s,一定要先熟悉docker的使用,kubectl对pod的相关管理命令的结构和docker非常类似。

开发人员使用k8s还是有一些复杂,如果需要平滑高效的使用k8s,应该还是需要使用Helm,Helm实现了大部分应用的标准模块化,比如web应用,各类中间件应用,各类开源版的数据应用,但是需要解决网络速度的问题,因为所有的应用都是由容器实现,一般容器文件都比较大,因此,后续使用需要考虑提前准备本地镜像。

平时k8s本身的监控和维护,可以通过部署Weave Scope 来完成。

对于k8s的应用场景,非常适用于应用复杂、软件应用版本变动频繁、资源使用变化大的互联网企业,对于中小规模的IT系统,个人觉得还是有一些小材大用。另外,也可以考虑直接使用红帽的k8s商业版Openshift,就不用自己部署k8s平台,直接使用即可。

个人觉得,对于k8s,应该要看做一个革命性的产品,因为它真正做到了上层应用于下层基础架构解耦合,如果一个公司使用k8s架构,应用程序的维护就是一个个容器的维护和流动,可以放在本地物理机上的k8s平台,也可以直接流动到公有云,并且自动化程度足够高,可以极大解放维护人员,使维护人员将更多的精力放到平台架构方面方面。

原文地址:http://blog.51cto.com/yuweibing/2116876

时间: 2024-11-01 18:49:46

Kubernetes(k8s) 实验总结的相关文章

Docker+Kubernetes(k8s)微服务容器化实践

Docker+Kubernetes(k8s)微服务容器化实践网盘地址:https://pan.baidu.com/s/1uVkMsKgfzsJcShlnuLk3ZQ 密码:1i7q备用地址(腾讯微云):https://share.weiyun.com/5ZcsfIX 密码:udrifz Docker官方支持Kubernetes, Kubernetes是容器编排最大赢家,Kubernetes 以其高效.简便.高水平的可移植性等优势占领了绝大部分市场,江湖一哥地位毋庸置疑,脱胎于谷歌的成熟的Borg

《两地书》--Kubernetes(K8s)基础知识(docker容器技术)

大家都知道历史上有段佳话叫“司马相如和卓文君”.“皑如山上雪,皎若云间月”.卓文君这么美,却也抵不过多情女儿薄情郎. 司马相如因一首<子虚赋>得汉武帝赏识,飞黄腾达之后便要与卓文君“故来相决绝”,寄来给家乡留守的妻子一封<两地书>,上面只有一行数字:“一二三四五六七八九十百千万.”意义是:无亿,我已经无意于你啦. 卓文君看了这封信也不示弱,回了一首<怨郎诗>,司马相如看了发现虽然我是靠写诗吃饭的.要说写诗还是我媳妇厉害,于是亲自将卓文君迎回长安. 卓文君其实是个二婚.头

kubernetes(k8s)-介绍2

kubernetes(k8s)-安装(二) 什么是Kubernetes Kubernetes是一个开源平台,用于跨主机群集自动部署,扩展和操作应用程序容器,提供以容器为中心的基础架构. 使用Kubernetes,您可以快速高效地响应客户需求: 快速,可预测地部署应用程序. 在运行中扩展应用程序. 无缝推出新功能. 仅使用您需要的资源来优化硬件的使用. 我们的目标是建立一个组件和工具的生态系统,以减轻在公共云和私有云中运行应用程序的负担. Kubernetes是: Kubernetes是Googl

Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)

0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 master 服务器的组件有:kube-apiserver.kube-controller-manager.kube-scheduler 因此需要下载k8s master,下载地址:https://github.com/kubernetes/kubernetes/blob/master/CHANGE

Kubernetes(K8S)集群在centos7.4下创建

自己在搭Kubernetes(K8S)集群下遇到的坑写一点随笔. 本次采用192.168.60.21,192.168.60.22,192.168.60.23作为需要装的服务器. master需要安装etcd, flannel,docker, kubernetes   192.168.60.21 yum –y install etcd yum –y install flannel yum –y install docker yum –y install kubernetes 分支上安装flanne

kubernetes (K8S) 集群的搭建方式

kubernetes (K8S) 集群的搭建方式有两种: 守护进程模式和容器模式 (请注意看图,不一样的) 容器的编排管理工具,当然推荐使用容器来部署了.不过容器镜像是在 Google 云上的,需要各位各显神通了. container部署: systemd模式部署: 原文地址:https://www.cnblogs.com/liuxgcn/p/11154259.html

Build Kubernetes[k8s] cluster

我是先对docker初步到进阶的了解学习,常用的命令,基本的容器构建和docker原理概念学习完之后,步入k8s.即使这样,刚看k8s官方文档时,其设计理念.组件构成以及生态需要了解掌握的知识不在少数.为此,花了几天时间在官方文档&个人博客上做了上述方面初步了解,较为直观的便可分为两方面: master: API server Controller Manager Scheduler Etcd node: kublet kube-proxy pod Kubernetes集群组件: etcd 一个

ubuntu16.04 docker kubernetes(k8s) istio 安装

版本: docker: 19.03.5 kubernetes: 1.17.0 istio: 1.4.3 步骤一:给ubuntu换源 https://www.cnblogs.com/lfri/p/10612037.html 步骤二:装docker sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.

Kubernetes K8s架构师实战集训营

Kubernetes K8s架构师实战集训营 https://pan.baidu.com/s/1ZSHbOurKhvVLu15Q_fNI9Q Kubernetes K8s架构师实战集训营 https://pan.baidu.com/s/1ZSHbOurKhvVLu15Q_fNI9Q ├─第 1 章:Ansible 自动化部署 K8S 集群 01-Ansible 概述,基本使用.mp4 02-7个常用模块基本使用.mp4 03-Playbook 基本使用-A.mp4 03-Playbook 基本使

(二)搭建一个完成的Kubernetes/K8s集群v.1.16

单节点集群多节点集群 注意node通过连接loadbalancer 转发到mateter 的apiserver来进行运作的 集群规划: 角色 ip 组件 K8S-master1 192.168.0.101 kube-apiserver kube-controller-manager kube-scheduleretcd K8S-master2 192.168.0.102 kube-apiserver kube-controller-manager kube-scheduleretcd K8S-n