Kubernetes(K8s)极速入门
1. 概述
老话说的好:努力学习,努力提高,做一个有真才实学的人。
言归正传,之前我们聊了 如何使用国内的镜像源搭建 kubernetes(k8s)集群 ,今天我们来聊聊如何在 kubernetes(k8s)上部署容器。
官网教程:https://kubernetes.io/docs/home/
2. 部署 Pod
2.1 概述
Pod 是 kubernetes(k8s)的最小单元,一个 Pod 中可部署多个容器,这里我们以部署 Nginx 为例,先介绍一下 kubernetes(k8s)的编排脚本。
2.2 Pod 脚本例子
新建一个脚本,名为 my-pod.yml
# vi my-pod.yml
apiVersion: v1
kind: Pod
metadata:
name: my-nginx
spec:
containers:
- name: my-nginx
image: nginx
apiVersion:脚本的版本,Pod 通常使用 v1 这个版本
kind:脚本的类型,这里就是 Pod
metadata.name:Pod 的名称
spec.containers:Pod 中运行的容器,可以是多个
注意:下级相对上级缩进两个空格,而不是Tab。
2.3 执行脚本
# kubectl apply -f my-pod.yml
2.4 查看 pod 信息
# kubectl get pod -o wide

ContainerCreating 状态代表 pod 正在添加

Running 状态代表 pod 已经运行
2.5 查看 pod 详细信息
# kubectl describe pod my-nginx
2.6 删除 pod
# kubectl delete pod my-nginx
3. 部署 Deployment
3.1 概述
在 kubernetes(k8s)中, 使用 Pod 脚本部署 pod,只能单节点部署,无法高可用。
因此需要用到 Deployment ,Deployment 可以指定 Pod 的副本数,通常情况是使用 Deployment 部署。
3.2 Deployment 脚本例子
新建一个脚本,名为 my-deployment.yml
# vi my-deployment.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx-deployment
template:
metadata:
labels:
app: nginx-deployment
spec:
containers:
- name: my-nginx
image: nginx
spec.replicas:部署 Pod 的副本数
sepc.template.metadata.labels.app:deployment 标签名称。
3.3 执行脚本
# kubectl apply -f my-deployment.yml
3.4 查看 deployment 信息
# kubectl get deployment

# kubectl get pod -o wide

3.5 查看 deployment 详细信息
# kubectl describe deployment nginx-deployment
3.6 删除 deployment
# kubectl delete deployment nginx-deployment
4. 部署 Service
4.1 概述
上一步我们使用 deployment 部署了多个 Pod 实例,但我们无法访问到 Pod 中的 Nginx。
此时就要借助 Service。
4.2 Service 脚本例子
新建一个脚本,名为 my-service.yml
# vi my-service.yml
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
type: NodePort
selector:
app: nginx-deployment
ports:
- protocol: TCP
nodePort: 30000
port: 20000
targetPort: 80
spec.type:Service 的类型,NodePort 是端口映射的方式,就是把容器的端口映射到宿主机的端口。
spec.selector.app:作用于哪个 deployment 标签。
spec.ports:是端口映射设置,targetPort 是容器中服务真实的端口,Nginx默认使用 80 端口,port 是Service 对外暴露的端口,用于 K8s 内部访问,nodePort 是映射的宿主机的端口。
4.3 执行脚本
# kubectl apply -f my-service.yml
4.4 查看 Service 信息
# kubectl get service -o wide

4.5 查看 Service 详细信息
# kubectl describe service nginx-service

4.6 删除 Service
# kubectl delete service nginx-service
4.7 访问 Nginx
地址:http://宿主机IP:30000

5. 综述
今天聊了一下 kubernetes(k8s)集群上是如何部署容器的,希望可以对大家的工作有所帮助。
欢迎帮忙点赞、评论、转发、加关注 :)
关注追风人聊Java,每天更新Java干货。
6. 个人公众号
追风人聊Java,欢迎大家关注

Kubernetes(K8s)极速入门的更多相关文章
- K8S从入门到放弃系列-(16)Kubernetes集群Prometheus-operator监控部署
Prometheus Operator不同于Prometheus,Prometheus Operator是 CoreOS 开源的一套用于管理在 Kubernetes 集群上的 Prometheus 控 ...
- K8S 从入门到放弃系列文章目录(Kubernetes 1.14)
1)软件环境 软件 版本 系统 Centos7.5 Kubernetes 1.14.1 Docker 18.09 Calico 3.6 Etcd 3.3.12 2)部署过程简单概要 三台master节 ...
- Kubernetes --(k8s)入门
k8s 简介: 什么是k8s? Kubernetes (k8s)是Google开源的容器集群管理系统(谷歌内部:Borg).在Docker技术基础上,为容器化的应用提供部署运行.资源调度.服务发现和动 ...
- Knative 初体验:CICD 极速入门
Knative 社区很早就在讨论用 Tekton 替换 Build 模块的相关事宜.Knative Build 官方已经正式说明不再建议使用 Knative Build 了. 如果你知道 Knativ ...
- 菜鸟系列k8s——k8s快速入门(1)
k8s快速入门 1.快速创建k8s集群 参考网站:https://kubernetes.io/docs/tutorials/kubernetes-basics 点击教程菜单 1. Create a C ...
- k8s miniKube 入门
k8s miniKube 入门 miniKube 是单机版kubernetes, 可以配置运行在同一台主机上的服务和pod,并使用docker作为虚拟化工具 下载:直接下载可执行文件,复制到path ...
- k8s(00)入门知识介绍
系列文章说明 本系列文章,可以基本算是 老男孩2019年王硕的K8S周末班课程 笔记,根据视频来看本笔记最好,否则有些地方会看不明白 需要视频可以联系我 k8s概念入门 目录 系列文章说明 k8s概念 ...
- [转]Nginx基本功能极速入门
原文链接:Nginx基本功能极速入门 | 叉叉哥的BLOG 本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理.废话不多,直接开始. 1.静态HTTP服务器 ...
- 《Python黑客编程之极速入门》正式开课
玄魂 玄魂工作室 今天 之前开启了一个<Python黑客编程>的系列,后来中断了,内容当时设置的比较宽,不太适合入门.现在将其拆分成两个系列<Python黑客编程之极速入门>和 ...
- 1 小时 SQL 极速入门(三)——分析函数
1 小时 SQL 极速入门 前面两篇我们从 SQL 的最基础语法讲起,到表联结多表查询. 大家可以点击链接查看 1 小时 SQL 极速入门(一) 1 小时 SQL 极速入门(二) 今天我们讲一些在做报 ...
随机推荐
- Windows用cmd编译运行C程序
在Windows环境下用命令行编译运行程序 浙江大学-C语言程序设计进阶 配置gcc 准备一个Dev-cpp 找到gcc.exe所在目录 Dev-Cpp\MinGW64\bin 地址栏右键将地址复制为 ...
- 项目实战:Qt文件改名工具 v1.2.0(支持递归检索,搜索:模糊匹配,前缀匹配,后缀匹配;重命名:模糊替换,前缀追加,后缀追加)
需求 在整理文件和一些其他头文件的时候,需要对其名称进行整理和修改,此工具很早就应该写了,创业后,非常忙,今天抽空写了一个顺便提供给学习. 工具和源码下载地址 本篇文章的应用包和源码包可在 ...
- 【数据结构与算法Python版学习笔记】图——强连通分支
互联网 我们关注一下互联网相关的非常巨大图: 由主机通过网线(或无线)连接而形成的图: 以及由网页通过超链接连接而形成的图. 网页形成的图 以网页(URI作为id)为顶点,网页内包含的超链接作为边,可 ...
- logging模块二
背景,在学习logging时总是遇到无法理解的问题,总结,尝试一下更清晰明了了,让我们开始吧! logging模块常用format格式说明 %(levelno)s: 打印日志级别的数值 %(level ...
- 面试题系列:new String("abc")创建了几个对象
new String("abc")创建了几个对象 面试官考察点猜想 这种问题,考察你对JVM的理解程度.涉及到常量池.对象内存分配等问题. 涉及背景知识详解 在分析这个问题之前,我 ...
- 第四单元博客总结——暨OO课程总结
第四单元博客总结--暨OO课程总结 第四单元架构设计 第一次UML作业 简单陈述 第一次作业较为简单,只需要实现查询功能,并在查询的同时考虑到性能问题,即我简单的将每一次查询的结果以及递归的上层结果都 ...
- HZOI帝国2019欢乐时刻
前言: update 只是恢复一下原来手残删掉的博客,不是在水,嘤嘤嘤 update 以后改成Stack,但是之前的就懒得改了... by 10.31 为了窝的访问量大家的好心情,模仿学长搞了一个这个 ...
- n阶行列式计算
1.化为上下三角 该类型的矩阵.行列式在之前写过(https://www.cnblogs.com/wangzheming35/p/12906624.html),也建议记住这个行列式的结论. 当然不仅仅 ...
- 正则表达式匹配 牛客网 剑指Offer
正则表达式匹配 牛客网 剑指Offer 题目描述 请实现一个函数用来匹配包括'.'和''的正则表达式.模式中的字符'.'表示任意一个字符,而''表示它前面的字符可以出现任意次(包含0次). 在本题中, ...
- cf 11B Jumping Jack(贪心,数学证明一下,,)
题意: 给一个数X. 起始点为坐标0.第1步跳1格,第2步跳2格,第3步跳3格,.....以此类推. 每次可以向左跳或向右跳. 问最少跳几步可以到坐标X. 思路: 假设X是正数. 最快逼近X的方法是不 ...