Kubernetes学习笔记(四)------部署应用和服务到k8s上

K8S(Kubernetes)简介和官方安装部署保姆级详细教程 Kubernetes简称为K8s,是用于自动部署、扩缩和管理容器化应用程序的开源系统,起源于Google 集群管理工具Borg。 阅读详情

一、部署nginx应用到k8s上

1.创建一个部署:kubectl create deployment nginx --image=nginx

2.查看部署:kubectl get deployments

3.创建一个服务:kubectl create service nodeport nginx --tcp 80:80

4.查看服务:kubectl get svc

5. 查看是否部署成功:curl localhost:30376

二、使用yaml文件部署应用到k8s上

1.创建一个nodejs应用程序,创建一个文件夹kube-demo, 接着创建一个server.js文件:

var http = require('http');
 
var handleRequest = function(request, response) {
  console.log('Received request for URL: ' + request.url);
  response.writeHead(200);
  response.end('Hello World!');
};
var www = http.createServer(handleRequest);
www.listen(8081);


运行应用:node server.js,打开浏览器访问http://localhost:8081, 可以看到我们的小应用程序可以正常运行,使用按Ctrl+C停止正在运行的Node.js服务器,将应用程序打包成Docker镜像并Push到Docker hub上去,接下来我们将此应用程序打包成Docker 镜像,这里使用Dockerfile来进行打包,如果看到这里你不太明白,那么你需要先学习一下Docker. Dockerfile的内容如下:

FROM node:8.11.2
WORKDIR app
COPY . .
EXPOSE 8081
ENTRYPOINT [ "node","server.js" ]

Dockerfile创建好后,执行如下命令:

docker build -t wucong60/kube-node-demo1:v1 .

运行docker images,可以看到镜像打包成功了,执行docker login --username  <你在dockerhub注册的账号> 再输入密码登录到docker hub,再将刚打包好的镜像push上去:

root@kube-dev:/home/cong/Desktop/NodeDemo1# docker login --username wucong60
Password: 
Login Succeeded
 
root@kube-dev:/home/cong/Desktop/NodeDemo1# docker push wucong60/kube-node-demo1:v1
The push refers to a repository [docker.io/wucong60/kube-node-demo1]
3f17035e6c72: xxxxx 
.....
v1: digest: sha256:009219456e793f3b53b777915247c71635b9c5bec6e70de6ab1f08664d056917 size: 2420

这时,所有人都可以从docker hub(公有镜像库)中拉取此镜像了。使用yaml文件创建Deployment, 创建一个名为deployment.yaml的yaml文件,内容如下:

---
 
apiVersion: extensions/v1beta1
 
kind: Deployment
 
metadata:
 
  name: kube-node
 
spec:
 
  replicas: 2
 
  template:
 
    metadata:
 
      labels:
 
        app: web
 
    spec:
 
      containers:
 
        - name: kube-node-demo-instance
 
          image: wucong60/kube-node-demo1:v1
 
          ports:
 
            - containerPort: 8081

 执行kubectl create -f deployment.yaml命令,创建一个deployment:

root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl create -f deployment.yaml
deployment.extensions/kube-node created
root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl get pods
NAME                            READY     STATUS             RESTARTS   AGE
kube-node-59bf664cbf-2qzgd      0/1       ImagePullBackOff   0          9s
kube-node-59bf664cbf-p6wtg      0/1       ImagePullBackOff   0          9s

 结果发现Pods的状态为ImagePullBackOff, 最终发现是,因为k8s不能够拉取私有仓库的镜像,通过执行下列命令可以查看具体的Pod信息,其中里面的Events下面显示了创建Pod的详细过程:

kubectl describe pods/kube-node-59bf664cbf-2qzgd

 参考Kubernetes配置secret拉取私有仓库镜像的官方文档后(点击这里查看),执行如下命令

root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl create secret docker-registry myregistrykey --docker-server=https://index.docker.io/v1/ --docker-username=wucong60 --docker-password=xxxx--docker-email=xxxx@qq.com
 
root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl get secrets
NAME                  TYPE                                  DATA      AGE
default-token-2lvth   kubernetes.io/service-account-token   3         4d
myregistrykey         kubernetes.io/dockerconfigjson        1         4h


这样我们就创建好了secret,然后再将这个secret加到yaml文件中,修改后的deployment.yaml文件如下:

---
 
apiVersion: extensions/v1beta1
 
kind: Deployment
 
metadata:
 
  name: kube-node
 
spec:
 
  replicas: 2
 
  template:
 
    metadata:
 
      labels:
 
        app: web
 
    spec:
 
      containers:
 
        - name: kube-node-demo-instance
 
          image: kube-node-demo1
 
          ports:
 
            - containerPort: 8081
      imagePullSecrets:
       - name: myregistrykey

 删除之前的deployment并重新创建新的deployment(另一方法是 :直接编辑此deployment,命令是:kubectl edit deployments/kube-node,编辑完后就立即生效了,所有pods会重新生成),命令如下:

kubectl delete deployments/kube-node
 
kubectl create -f deployment.yaml

最终可以看到我们的应用程序被部署上去了:

root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl get pods -o wide
NAME                            READY     STATUS    RESTARTS   AGE       IP            NODE
kube-node-7bd98cf84d-c6q6h      1/1       Running   0          3m        10.244.2.66   kube-slave-1
kube-node-7bd98cf84d-fbjwz      1/1       Running   0          3m        10.244.1.36   kube-slave-3

执行下列命令,来验证部署上去的应用程序是否好用,我们尝试访问第一个IP+8081端口,正常显示Hello World!

root@kube-master:/home/cong/Desktop/NodeDemo1# curl 10.244.2.66:8081
Hello World!

2.Pod是有生命周期的,使用凡人皆有一死来描述pod很贴切,当一个工作节点(node)销毁时,节点上运行的pods也会被销毁, ReplicationController会动态地在其他节点上创建Pod来保持应用程序的运行,每一个Pod都有一个独立的IP地址,甚至是同一个节点上的Pod,可以看出Pod的IP是动态的,它随Pod的创建而创建,随Pod的销毁而消失,这就引出一个问题:如果由一组Pods组合而成的集群来提供服务,那如何访问这些Pods呢?Kubenetes的Service就是用来解决这个问题的。一个Service可以看作一组提供相同服务的Pods的对外访问接口,Service作用于哪些Pods是通过label selector来定义的,这些Pods能被Service访问,Pod之间的发现和路由(如应用中的前端和后端组件)由Kubernetes Service处理。

Service有四种type: ClusterIP(默认)、NodePort、LoadBalancer、ExternalName. 其中NodePort和LoadBalancer两类型的Services可以对外提供服务。

使用yaml文件创建Service(NodePort), 这里使用yaml文件来创建NodePort类型的Service,service.yaml文件内容如下:

---
apiVersion: v1
kind: Service
metadata:
  name: kube-node-service
  labels:
    name: kube-node-service
spec:
  type: NodePort      #这里代表是NodePort类型的
  ports:
  - port: 80          #这里的端口和clusterIP(10.97.114.36)对应,即10.97.114.36:80,供内部访问。
    targetPort: 8081  #端口一定要和container暴露出来的端口对应,nodejs暴露出来的端口是8081,所以这里也应是8081
    protocol: TCP
    nodePort: 32143   # 所有的节点都会开放此端口,此端口供外部调用。
  selector:
    app: web          #这里选择器一定要选择容器的标签,之前写name:kube-node是错的。

执行命令创建一个service,并列出所有的services:

root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl create -f service.yaml
service/kube-node-service created
 
root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl get services
NAME                TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
kube-node-service   NodePort    10.97.114.36   <none>        80:32143/TCP   7s
kubernetes          ClusterIP   10.96.0.1      <none>        443/TCP        7d

我们来验证一下创建的service是否正确,执行如下命令

root@kube-master:/home/cong/Desktop/NodeDemo1# curl localhost:32143
Hello World!
# 由于定义的port是80,所以直接访问clusterIP
root@kube-master:/home/cong/Desktop/NodeDemo1# curl 10.97.114.36
Hello World!

首先外部使用load balancer访问我们的两个slave节点(192.168.29.141:32143) 和 (192.168.29.139:32143),接着它会访问Service,即ClusterIP(10.97.114.36:80), Service再通过load balancer访问到某一个pod(端口8081)里的container(端口8081)。 这里第二个load balancer是由kube-proxy来负责的,官方的描述是:kube-proxy负责为service提供cluster内部的服务发现和负载均衡。实际上,我们还另一种创建service的方式,更快更便捷,即使用expose命令来创建service,如下:

root@kube-master:/home/cong# kubectl expose deployment kube-node --type=NodePort
service/kube-node exposed
 
root@kube-master:/home/cong# kubectl get services
NAME                TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
kube-node           NodePort    10.107.247.158   <none>        8081:31195/TCP   10s
kube-node-service   NodePort    10.97.114.36     <none>        80:32143/TCP     1d
kubernetes          ClusterIP   10.96.0.1        <none>        443/TCP          8d
nginx               NodePort    10.99.22.64      <none>        80:32322/TCP     2d
 
root@kube-master:/home/cong# curl localhost:31195
Hello World!
 
root@kube-master:/home/cong# curl 10.107.247.158:8081
Hello World!
 
root@kube-master:/home/cong# kubectl describe services/kube-node
Name:                     kube-node
Namespace:                default
Labels:                   app=web
Annotations:              <none>
Selector:                 app=web
Type:                     NodePort
IP:                       10.107.247.158
Port:                     <unset>  8081/TCP
TargetPort:               8081/TCP
NodePort:                 <unset>  31195/TCP
Endpoints:                10.244.1.71:8081,10.244.2.81:8081  #这里podIp+端口号就是endpoint
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>
 
root@kube-master:/home/cong# kubectl describe services/kube-node-service
Name:                     kube-node-service
Namespace:                default
Labels:                   name=kube-node-service
Annotations:              <none>
Selector:                 app=web
Type:                     NodePort
IP:                       10.97.114.36
Port:                     <unset>  80/TCP
TargetPort:               8081/TCP
NodePort:                 <unset>  32143/TCP
Endpoints:                10.244.1.71:8081,10.244.2.81:8081 #虽然暴露了两个service,但endpoint是一样滴。
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

 可以看出,expose命令这里并没有指定clusterIP,说明它是K8S系统中的虚拟IP地址,由系统动态分配。Pod的IP地址是由flannel插件来分配的,而不再由Docker Daemon根据docker0网桥的IP地址进行分配。可以在任意节点上输入ifconfig可以看到。使用yaml文件创建Service(LoadBalancer), 这里我们继续expose命令创建loadBalancer类型的service,命令如下:

service "kube-node" deleted
root@kube-master:/home/cong# kubectl expose deployment kube-node --type=LoadBalancer
service/kube-node exposed
 
root@kube-master:/home/cong# kubectl get services
NAME                TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
kube-node           LoadBalancer   10.99.201.195   <pending>     8081:31585/TCP   10s
kube-node-service   NodePort       10.97.114.36    <none>        80:32143/TCP     1d
kubernetes          ClusterIP      10.96.0.1       <none>        443/TCP          8d
nginx               NodePort       10.99.22.64     <none>        80:32322/TCP     2d
 
root@kube-master:/home/cong# curl localhost:31585
Hello World!
 
root@kube-master:/home/cong# curl 10.99.201.195:8081
Hello World!
 
root@kube-master:/home/cong# kubectl describe services/kube-node
Name:                     kube-node
Namespace:                default
Labels:                   app=web
Annotations:              <none>
Selector:                 app=web
Type:                     LoadBalancer
IP:                       10.99.201.195
Port:                     <unset>  8081/TCP
TargetPort:               8081/TCP
NodePort:                 <unset>  31585/TCP
Endpoints:                10.244.1.71:8081,10.244.2.81:8081
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

当然我们也可以使用yaml文件来创建,service-lb.yaml文件如下:

---
apiVersion: v1
kind: Service
metadata:
  name: kube-node-service-lb
  labels:
    name: kube-node-service-lb
spec:
  type: LoadBalancer
  clusterIP: 10.99.201.198
  ports:
  - port: 80
    targetPort: 8081
    protocol: TCP
    nodePort: 32145
  selector:
    app: web
status:
  loadBalancer:
    ingress:
    - ip: 192.168.174.127    #这里是云服务商提供的负载匀衡器的IP地址
执行命令:

root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl create -f service-lb.yaml
service/kube-node-service-lb created
 
root@kube-master:/home/cong/Desktop/NodeDemo1# kubectl get services
NAME                   TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
kube-node              LoadBalancer   10.99.201.195   <pending>     8081:31585/TCP   21m
kube-node-service      NodePort       10.97.114.36    <none>        80:32143/TCP     1d
kube-node-service-lb   LoadBalancer   10.99.201.198   <pending>     80:32145/TCP     9s
kubernetes             ClusterIP      10.96.0.1       <none>        443/TCP          8d
nginx                  NodePort       10.99.22.64     <none>        80:32322/TCP     2d
 
root@kube-master:/home/cong/Desktop/NodeDemo1# curl 10.99.201.195:8081
Hello World!
 
root@kube-slave-3:/home/cong# curl localhost:31585
Hello World!

 

[Kubernetes]1.Kubernetes(K8S)介绍,基于腾讯云的K8S环境搭建集群以及裸机搭建K8S集群 Kubernetes(K8S)介绍,基于腾讯云的K8S环境搭建集群以及裸机搭建K8S集群 阅读详情

相关推荐

在centos7部署k8s搭建kubernetes集群

Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。 Kubernetes一个核心的特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望状态运行着(比如用户想让apache一直运行,用户不需要关心怎么去做,Kubernetes会自动去监控,然后去重启,新建,总之,让apache一直提供服务),管理员可以加载一个微型服务,让规划器来找

山东梅长苏 1万+

容器集群k8s从入门到精通之kubernates介绍(第一章)

第一章 kubernetes介绍 本章节主要介绍应用程序在服务器上部署方式演变以及kubernetes的概念、组件和工作原理。 应用部署方式演变 在部署应用程序的方式上,主要经历了三个时代: 传统部署:互联网早期,会直接将应用程序部署在物理机上 优点:简单,不需要其它技术的参与 缺点:不能为应用程序定义资源使用边界,很难合理地分配计算资源,而且程序之间容易产生影响 虚拟化部署:可以在一台物理机上运行多个虚拟机,每个虚拟机都是独立的一个环境 优点:程序环境不会相互产生影响,提供了一定程度的安全性

梦溪笔谈的博客 2427

【Kubernetes】以LOL的视角打开K8s

LOL和K8s都上手之后,其实我觉得相比较起来,LOL的上手难度要高多了,这么多个英雄,每个英雄有不同的机制和技能,这些可比K8s的内容多多了,所以如果大家LOL都能上手的话,上手K8s肯定不会是问题的!

ThisIsClark 2069

kubernetes集群环境搭建(kubeadm 方式)

集群环境搭建(kubeadm 方式) 1.前置知识点 目前生产部署Kubernetes 集群主要有两种方式: kubeadm Kubeadm 是一个K8s 部署工具,提供kubeadm init 和kubeadm join,用于快速部署Kubernetes 集群。 官方地址:https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/ 二进制包 从github 下载发行版的二进制包,手动部署每个组件,组成Kubernetes 集群。 Ku

wumingdaxiacc的博客 339

K8S:Rancher管理 Kubernetes 集群

本文对Rancher介绍:Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,确保集群的安全性,能够管理 k8s 集群。 对对Rancher安装以及配置、登录进入平台后如何操作进行介绍

Katie_ff的博客 5827

K8s(Kubernetes)搭建从0到1

• Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8s。• Kubernetes用于。官方网站:http://www.kubernetes.io官方文档:https://kubernetes.io/zh/docs/home/

asdmjy123的博客 1909

应用上云-在kubernetes中部署nacos

在kubernetes中搭建高可用的nacos集群。

weixin_45093078的博客 1480

Kubernetes k8s学习笔记 尚硅谷王泽老师 由浅入深

Kubernetes k8s学习笔记尚硅谷2019 这里写目录标题Kubernetes k8s学习笔记尚硅谷2019Kubernetes 特点Kubernetes 学习知识点Kubernetes 组件说明brog的架构K8S的架构 Kubernetes 特点 Kubernetes 学习知识点 Kubernetes 组件说明 brog的架构 k8s算是brog系统的GO语言版 Brog Master负责请求分发 分发到Broglet完成工作 BrogMaster节点最好三个以上且单数 Seched

weixin_43691773的博客 4888

K8S安装部署Nacos集群

在k8s中部署nacos集群和在裸机器上直接部署nacos机器其实差别不大。 最主要的区别是k8s中部署的服务没有固定的ip地址,而nacos集群部署需要配置所有实例的ip 在k8s中通过StatefulSet和Headless Service为每个nacos实例生成一个唯一的dns地址, 创建一个普通Service给可客户端使用

程序员阿超的博客 2万+

[RK3588从入门到精通] 专栏目录及介绍

[RK3588从入门到精通] 专栏目录及介绍

nb124667390的博客 6495

第六节 旅烨cms实战练习 -2021.03.11

第六节 旅烨cms实战练习 -2021.03.11 前期使用win10里小皮搭建旅烨cms,以为自己的各项配置有问题,但是小皮能够正常带动DVWA,始终带动不了旅烨cms。 后来与其他安全人员交流,发现win7可以正常运行旅烨cms。 所以目前为何出现问题尚不清楚 1.环境搭建 win7+小皮 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nOSTEFUw-1615475228402)(C:\Users\LuXian\AppData\Roaming\Typora\typora

lyx3429的博客 571

K8S 部署 Nacos:构建云原生服务管理基石

在当今云原生应用蓬勃发展的时代,Kubernetes(K8S)已成为容器编排的事实标准,而 Nacos 作为一款强大的服务发现与配置管理中心,二者的结合为构建高效、可扩展的分布式系统提供了有力保障。本文将详细介绍如何在 K8S 环境中部署 Nacos,助力开发者快速搭建稳健的云原生服务架构。

qq_24442273的博客 2707

RC电路(一):微分|积分

的取值不同,会导致输出波形和输入波形之间的关系也不同,由此也会产生不同的应用。输出为0,随着电容充满电,运放-输入端得到的分压为正最大值,可等效成一个电压源,且电压不可突变,此时电流反向为最大值,开始充电时的容抗为0,电压不可突变则电压差为0,运放。开始充电时的容抗为0,电压不可突变则电压差为0,运放。输入端得到的分压也不可突变,随着电容放完电,于是。,因电容上电压不能突变(来不及充电,相当于短路,由上分析可得积分运算电路中,输出为运放的负最大峰值,随着电容充满电,输出为运放的正最大峰值,随着电容放完电,

既有随处可栖的江湖,也有追风逐梦的骁勇! 1万+

K8s(Kubernetes)简介及安装部署

前言: k8s是Kubernetes的简称,因为K和S之间有8个字母,所以才会被称为k8s。 k8s最初是在Google公司内部使用了10多年的技术,它的前身是叫做Borg(博格),直到2015年才被Google公司捐赠为开源项目。 如果之前我们有接触过OpenStack,那么应该知道管理VM虚拟机资源可以用OpenStack。那么管理容器所对应的开源平台是什么呢?k8s就是其中之一,在k8s之...

lvjianzhaoa的博客 4万+

SAP-MM-采购申请字段解析

采购申请抬头以及行项目字段解析

yanzibing99的博客 7305

保姆级教程:用Docker一键部署vLLM大模型推理服务(附常见报错解决方案)

本文提供了一份详细的Docker化vLLM大模型推理服务部署指南,涵盖从环境准备到性能调优的全流程。通过容器化技术解决大语言模型部署中的显存利用率、吞吐量等核心问题,并附常见报错解决方案,帮助开发者快速构建高效、可扩展的AI推理服务。

weixin_29248313的博客 490

Kubernetes K8S 基于 Docker 安装部署

在 Docker 容器技术被炒得热火朝天之时,大家发现,如果想要将 Docker 应用于具体的业务实现,是存在困难的——编排、管理和调度等各个方面,都不容易。于是,人们迫切需要一套管理系统,对 Docker 及容器进行更高级更灵活的管理。就在这个时候,K8S 出现了。K8S,就是基于容器的集群管理平台,它的全称,是 Kubernetes。 本次主题将会为你分享: K8S 起源 K8S 集群 为什...

GitChat 1万+

YOLOv8推理程序

YOLOv8单独推理,有时候我们自定义的模块算子无法正常转换为其他框架,而且需要做成应用,因此需要一个单独推理的程序,返回的是识别后的照片还有各个类别及其对应数量。文章最后给出Flask封装为Server以及调用的实例还有Client请求代码,支持几十路多线程并发,只需加载一次模型,后边推理即可。

AIOT魔法师 698

K8S(Kubernetes)概念、原理及部署过程

目录: 云计算概念和原理 云计算分类 什么是K8S K8S部署 云计算概念和原理 What 云计算是将硬件服务器、网络设备、网络资源、操作系统、应用程序统一的管理和调度,将所有的资源统一的按需分配,租户可以根据自己的需求来按需购买和使用 云计算重点强调的是资源池、租户概念,资源池中资源可以分配或者租用给租户(企业内部、互联网用户),可以根据需求直接去购买或者租用,对于租户来讲,不需要关...

番茄炒蛋君的博客 1万+

华为od 面试八股文_C++_02_含答案

华为od 面试八股文_C++_02_含答案

MISAYAONE的博客 3121

python实现序列比对之Needleman-wunsch算法 (附完整源码)

python实现序列比对之Needleman-wunsch算法 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 459

在Kubernetes(k8s)上部署整个SpringCloud微服务应用

Kubernetes上部署整个SpringCloud微服务应用,并使用ingress暴露应用。部署包括nacos、redis、mysql等组件。同时还部署monitor监控模块。

XiaoHH的博客 1万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Kubernetes(k8s)实战:Kubernetes(k8s)部署Springboot项目

在集群中,pod之间可以通过service 的name进行访问,不仅仅是ip,这就意味着,service中不仅帮我们做了负载均衡,而且做了dns处理。如上,加上hostNetwork: true,就会在nacos上注册的ip端口,会映射成宿主机的ip和端口。如果在同一个k8s集群下,这样部署是没问题的,但是不同k8s集群下,微服务之间就互相不可访问了。我们发现,搭建成功了,用浏览器访问192.168.56.101:30493,发现访问成功了!访问:http://localhost:8080/k8s。

秃了也弱了 5748

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

什么是Kubernetes(K8s)?

更新时间: 2024-02-02 16:41:38内容Kubernetes(通常简称为K8s)是一款用于自动部署、扩缩和管理容器化应用程序的开源容器编排平台。Kubernetes已发展为现代企业实现敏捷开发、快速迭代、资源优化及灵活扩展的关键技术组件之一。它拥有庞大的开源社区和丰富的生态系统。围绕Kubernetes已经形成了众多工具、插件和解决方案,其使企业能够实现更高的资源利用率、更优的业务连续性和稳定性、更快的创新速度。为什么需要。

weixin_46575696的博客 2413

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

一、kubernetes k8s

k8s的全称:kubernetes k8sk8s的版本:1.301.20------------用的最多的版本,1.18-1.211.24------------>k8s的镜像不再使用docker,containerd。

2401_87896172的博客 3634

【Kubernetes】k8s 部署指南

介绍了 k8s 在 windows 环境的安装,以及如何使用 k8s 来部署一个 Go web 应用

weixin_62533201的博客 2513
上一篇: Kubernetes学习笔记(三)------运行Kubernetes集群
下一篇: hyperledger fabric 测试(九)couch DB数据库设置
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值