小白到运维工程师自学之路 第七十三集 (kubernetes应用部署)

一、安装部署

1、以Deployment YAML方式创建Nginx服务

这个yaml文件在网上可以下载

cat nginx-deployment.yaml
apiVersion: apps/v1	#apiVersion是当前配置格式的版本
kind: Deployment	#kind是要创建的资源类型,这里是Deploymnet
metadata:			#metadata是该资源的元数据,name是必须的元数据项name: nginx-deploymentlabels:app: nginx
spec:				#spec部分是该Deployment的规则说明replicas: 3		#relicas指定副本数量,默认为1selector: matchLabels:app: nginxtemplate:			#template定义Pod的模板,这是配置的重要部分metadata:		#metadata定义Pod的元数据,至少要顶一个label,label的key和value可以任意指定labels:app: nginxspec:			#spec描述的是Pod的规则,此部分定义pod中每一个容器的属性,name和image是必需的containers:- name: nginximage: nginx:1.19.4ports:- containerPort: 80

创建nginx-deployment应用
kubectl create -f nginx-deployment.yaml

查看deployment详情  (由于需要下载镜像所有需要等一会才会成功)
kubectl get deployment
kubectl get pod

 这个是正在获取镜像

 这个是下载完成的

查看某个pod的详细信息
kubectl describe pod nginx-deployment-7947dc656-7lfp5

二、创建pod

kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [--command] -- [COMMAND] [args...] [options]

各选项的作用分别如下所示。

  • NAME:指定容器运行的名称;
  • Image:指定运行的基础镜像;
  • env:指定在容器中设置的环境参数;
  • port:指定容器暴露的端口;
  • replicas:指定启动容器设置的副本数;
  • dry-run:dry-run 值如果为 true,则只打印要发送的对象,而不发送它;
  • overrides:生成对象的内联 JSON 重写。如果非空,则用于覆盖生成的对象。要求对象提供有效的 apiVersion 字段。
kubectl run nginx-deployment --image=nginx:1.19.4 --port=80 --replicas=3
kubectl get pods

 三、发布服务

kubectl expose (-f FILENAME | TYPE NAME) [--port=port] [--protocol=TCP|UDP] [--target -port=number-or-name] [--name=name] [--external-ip=external-ip-of-service] [--type=type]

上述命令语法中,各选项的作用分别如下所示。

  • -f:标识公开服务的资源的文件的文件名,目录或 URL;
  • TYPE NAME:指定 deployment 名称;
  • port:指定内部通信端口;
  • protocol:指定网络协议,tcp 或者 udp;
  • target-port:指定暴露在外部的端口;
  • name:指定最新创建的对象的名称;
  • external-ip:为 service 的外部 IP 地址;
  • type:指定此服务的类型 ClusterIP,NodePort,LoadBalancer 或 ExternalName,默认 ClusterIP。
kubectl expose deployment nginx-deployment --port=80 --target-port=80 --name=nginx-service --type=NodePort
kubectl get pods,svc

通过 kubectl expose 命令创建 Service,设置内部通信端口和外部暴露的端口均为 80、名称为 nginx-service、类型是 NodePort。创建 Service 完后,就可以通过 kubectl get svc命令查看到对外暴露的端口是31749,内部通信的地址是10.96.215.14

执行 kubectl get endpoints 查看容器自带的负载均衡。从执行结果可以得知容器自带的负载均衡分别是 10.244.1.4、10.244.1.5、10.244.2.3

kubectl get endpointskubectl get pods 命令时加参数 -o wide 可以查看到 Node 真实节点上的分布
kubectl get pods -o wide

 完成上述步骤就已经完成了发布,并且可以进行对其访问

以上就是k8s应用部署发布的基本操作

如有错误欢迎各位大佬批评指正,我们共同进步

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/69786.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch翻译官网教程-LANGUAGE MODELING WITH NN.TRANSFORMER AND TORCHTEXT

官网链接 Language Modeling with nn.Transformer and torchtext — PyTorch Tutorials 2.0.1cu117 documentation 使用 NN.TRANSFORMER 和 TORCHTEXT进行语言建模 这是一个关于训练模型使用nn.Transformer来预测序列中的下一个单词的教程。 PyTorch 1.2版本包含了一个基于论…

【注解使用】使用@Autowired后提示:Field injection is not recommended(Spring团队不推荐使用Field注入)

问题发生场景: 在使用 IDEA 开发 SpringBoot 项目时,在 Controller 类中使用注解 Autowired 注入一个依赖出现了警告提示,查看其他使用该注解的地方同样出现了警告提示。这是怎么回事?由于先去使用了SpringBoot并没有对Spring进行…

Linux基本知识及常用命令(超全面,超详细)

Linux系统是一种基于UNIX的开放源码的操作系统,本部分所叙述的Linux更多的是指Linux的内核,其主要职责是对底层硬件的管理控制,内核除对下层硬件进行管理还要对上层的应用提供接口。 接口既包括命令也包括相应的接口函数,命令可以…

【tool】快捷操作

最近在弄材料然后文件太深了,交流起来很不方便,做了记录 复制文件路径 复制文件路径步骤: 1、首先按住Shift 鼠标右键单击,弹出:复制为路径 2、快捷键黏贴路径,即可

Apache Maven:从构建到部署,一站式解决方案

目录 一、Maven介绍 1. Maven是什么? 2.Maven的作用? 二、Maven仓库介绍 2.1 库的分类 三、Maven安装与配置 3.1 Maven安装 3.2 Maven环境配置 3.3 仓库配置 四、Eclipse与Maven配置 五、Maven项目测试 5.1 新建Maven项目步骤及注意事项 5.…

用AI攻克“智能文字识别创新赛题”,这场大学生竞赛掀起了什么风潮?

文章目录 一、前言1.1 大赛介绍1.2 项目背景 二、基于智能文字场景个人财务管理创新应用2.1 作品方向2.2 票据识别模型2.2.1 文本卷积神经网络TextCNN2.2.2 Bert 预训练微调2.2.3 模型对比2.2.4 效果展示 2.3 票据文字识别接口 三、未来展望 一、前言 1.1 大赛介绍 中国大学生…

Shell编程——弱数据类型的脚本语言快速入门指南

目录 Linux Shell 数据类型 变量类型 运算符 算术运算符 赋值运算符 拼接运算符 比较运算符 关系运算符 控制结构 顺序结构 条件分支结构 if 条件语句 case 分支语句 循环结构 for 循环 while 循环 until 循环 break 语句 continue语句 函数 函数定义 …

【Oracle 数据库 SQL 语句 】积累1

Oracle 数据库 SQL 语句 1、分组之后再合计2、显示不为空的值 1、分组之后再合计 关键字: grouping sets ((分组字段1,分组字段2),()) select sylbdm ,count(sylbmc) a…

(7)原神各属性角色的max与min

在对全部角色进行分析之后,还有必要对各属性角色的生命值/防御力/攻击力进行max与min显示: 话不多说,上货! from pyecharts.charts import Radar from pyecharts import options as opts import pandas as pd from pyecharts.ch…

16.3.4 【Linux】系统资源的观察

free :观察内存使用情况 系统当中有 2848MB 左右的实体内存,我的 swap 有 1GB 左右, 那我使用free -m 以 MBytes 来显示时,就会出现上面的信息。Mem 那一行显示的是实体内存的量,Swap 则是内存交换空间的量。 total 是…

面试热题(反转字符串中的单词)

给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意:输入字符串 s中可能会存在前导空格、尾随空格…

60页数字政府智慧政务大数据资源平台项目可研方案PPT

导读:原文《60页数字政府智慧政务大数据资源平台项目可研方案PPT》(获取来源见文尾),本文精选其中精华及架构部分,逻辑清晰、内容完整,为快速形成售前方案提供参考。 项目需求分析 项目建设原则和基本策略…