Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >从0到1搭建k8s(二)——启动一个服务

从0到1搭建k8s(二)——启动一个服务

原创
作者头像
点点寒彬
修改于 2021-01-15 12:57:19
修改于 2021-01-15 12:57:19
1.8K0
举报
文章被收录于专栏:用Python做测试用Python做测试

前文回顾

从0到1搭建k8s(一)——环境搭建

用到的yaml文件

代码语言:txt
AI代码解释
复制
apiVersion: v1
kind: Pod
metadata:
  name: static-web
spec:
  containers:
    - name: web
      image: nginx
      ports:
        - name: web
          containerPort: 80
          protocol: TCP

k8s使用的yaml文件,就有点类似dockerdocker run命令。目的就是起容器

如果不清楚字段意思的,可以先参考官方文档了解含义。

简而言之,这里要做的就是创建一个Pod,然后起的镜像是nginx,暴露的端口是80,协议是TCP

启动容器

yaml文件保存为nginx.yaml,执行命令kubectl apply -f nginx.yaml

如果没有问题,则会输出pod/static-web created

执行命令kubectl get pods,可以看到:

代码语言:txt
AI代码解释
复制
kubectl get pods
NAME         READY   STATUS    RESTARTS   AGE
static-web   1/1     Running   0          6s

表示容器已经正常的拉起来了。

进入容器查看信息

执行命令kubectl exec -it static-web -- /bin/bash就可以进入到容器内部去查看容器的信息了。

说明

为了更方便理解,这里再做一下讲解,方便有docker基础的同学更快速的理解。

我们如果要起一个nginxdocker,那么我们一般会执行

代码语言:txt
AI代码解释
复制
docker pull nginx
docker run -itd nginx

这样docker就会啦一个名叫nginx的镜像,并且启动成容器。(这里列的是最简单的命令)

这里的动作,就类似上文执行kubectl apply -f nginx.yaml

docker创建的目标是容器,k8s当然创建的也是容器(这里的容器不一定指的是docker,因为k8s支持的类型不止docker

再接下来的进入容器的动作,k8s的命令基本上跟docker的是类似的,换成docker的命令就是docker exec -it xxx /bin/bash

参考信息

创建静态 Pod

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
从0到1搭建k8s(三)——访问这个服务
如果读者按照前面的流程建好了服务,那么应该会有一个问题困扰,如何访问这个nginx服务呢?
点点寒彬
2021/01/15
2.3K0
k8s 资源管理之 Pod
Kubernetes 的本质就是一个集群系统,用户可以在集群中部署各种服务。所谓的部署服务,其实就是在 Kubernetes 集群中运行一个个的容器,并将指定的程序跑在容器中。 Kubernetes 的最小管理单元是 Pod 而不是容器,所以只能将容器放在 Pod 中,而 Kubernetes 一般也不会直接管理 Pod ,而是通过 Pod 控制器来管理 Pod 的。 Pod 提供服务之后,就需要考虑如何访问 Pod 中的服务,Kubernetes 提供了 Service 资源实现这个功能。 当然,如果 Pod 中程序的数据需要持久化,Kubernetes 还提供了各种存储系统。
看、未来
2022/08/11
5680
k8s 资源管理之 Pod
k8s运维命令大全
k8s常用命令 node 查看服务器节点 kubectl get nodes 查看服务器节点详情 kubectl get nodes -o wide 节点打标签 kubectl label nodes <节点名称> labelName=<标签名称> 查看节点标签 kubectl get node --show-labels 删除节点标签 kubectl label node <节点名称> labelName- pod 查看pod节点 kubectl get pod 查看pod节点详情 kubectl g
ruochen
2021/12/04
5.1K0
k8s基本使用
前几篇写了k8s的概念以及使用k8s进行简单的应用部署,今天写一下k8s的基本使用。 由于k8s的资源都是可以使用yaml文件进行描述,所以也顺便写一下yaml的使用。
Liusy
2020/09/24
7030
k8s基本使用
k8s命令全集2020版(最新整理)
波哥私人珍藏都是常用的命令: #查看所有namespace的pods运行情况 kubectl get pods --all-namespaces #查看具体pods,记得后边跟namespace名字哦 kubectl get pods kubernetes-dashboard-76479d66bb-nj8wr --namespace=kube-system # 查看pods具体信息 kubectl get pods -o wide kubernetes-dashboard-76479d66bb-nj8
IT运维技术圈
2022/06/26
5010
K8s上部署Go服务
通过Rancher一键部署k8s服务 地址: https://rancher.com/quick-start/ 命令 sudo docker run --privileged -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher 然后访问你的docker机器的IP地址就可以看到一个叫local的k8s环境,不过不知道是不是我操作不对,我不能使用这个集群 点击添加集群,自定义一通默认到最后给你一个docker命令执行后我们就又得到
conanma
2022/03/17
8690
深入k8s:k8s部署&在k8s中运行第一个程序
由于在国内网络问题,我们无法很好的使用minikube进行部署k8s实验环境,所以可以使用阿里提供的minikube进行搭建。除了minikube,也可以使用kubeasz进行部署。
luozhiyun
2020/07/22
3.3K0
大蕉说k8s(1)-quickstart No.181
今天这篇文章是写给觉得k8s很困难的娃的,其实每一门我们已知的互联网技术背后底层原理都简单得不行,但是中间被封装拓展得很复杂,在用户侧又被封装成比较简单的样子。
大蕉
2020/02/26
4070
浅析K8S各种未授权攻击方法
这篇文章可能出现一些图文截图颜色或者命令端口不一样的情况,原因是因为这篇文章是我重复尝试过好多次才写的,所以比如正常应该是访问6443,但是截图中是显示大端口比如60123这种,不影响阅读和文章逻辑,无需理会即可,另外k8s基础那一栏。。。本来想写一下k8s的鉴权,后来想了想,太长了,不便于我查笔记,还不如分开写,所以K8S基础那里属于凑数???写了懒得删(虽然是粘贴的:))
UzJu@菜菜狗
2023/10/20
1K0
浅析K8S各种未授权攻击方法
ubuntu20.04升级k8s集群,etcd备份恢复,k8s集群使用
5.资源对象 rc/rs/deployment、 service、 volume、 emptyDir、 hostpath、 NFS
conanma
2022/03/17
1.5K0
万字警告 - k8s入门,理应Pod先行!
大家好,欢迎来到小菜个人 solo 学堂。在这里,知识免费,不吝吸收!关注免费,不吝动手!死鬼~看完记得给我来个三连哦!
蔡不菜丶
2021/04/29
8360
万字警告 - k8s入门,理应Pod先行!
解决K8S 1.18.0版本REPLICAS被弃用问题
注意:在K8s v1.18.0版本以后,–replicas已弃用 ,推荐用 deployment 创建 pods
院长技术
2022/03/11
1.3K0
K8s集群部署篇(二)
一、k8s基本操作命令: 创建:kubectl create -f xxx.yaml 查询: kubectl get pod yourPodName kubectl describe pod yourPodName //这个我一般用来排查机器无故没有Running 删除:kubectl delete pod yourPodName 更新:kubectl replace /path/to/yourNewYaml.yaml 二、yaml文件的写法及遇到的问题 创建 pod 资源对象的yaml文件
老七Linux
2018/05/31
3.4K0
k8s集群上ingress实战
使用ingress之前要先在k8s集群部署ingress controller,ingress controller本身需要LoadBalancer支持,一个基本的访问流如下:
王录华
2019/09/25
2.6K0
k8s集群上ingress实战
浅析K8S各种未授权攻击方法
这篇文章可能出现一些图文截图颜色或者命令端口不一样的情况,原因是因为这篇文章是我重复尝试过好多次才写的,所以比如正常应该是访问6443,但是截图中是显示大端口比如60123这种,不影响阅读和文章逻辑,无需理会即可,另外k8s基础那一栏。。。本来想写一下k8s的鉴权,后来想了想,太长了,不便于我查笔记,还不如分开写,所以K8S基础那里属于凑数???写了懒得删(虽然是粘贴的:))
UzJu@菜菜狗
2022/05/11
6.2K0
浅析K8S各种未授权攻击方法
部署应用到 k8s 入门教程
本篇文章适合k8s入门参考,使用 yaml 文件和 kubectl 命令完成应用部署。本文的脚本只演示了最基础的配置。
谢正伟
2021/05/08
7K0
部署应用到 k8s 入门教程
自从上了K8S,项目更新都不带停机的!
ReplicaSet确保任何时间都有指定数量的Pod副本在运行。通常用来保证给定数量的、完全相同的Pod的可用性。建议使用Deployment来管理ReplicaSet,而不是直接使用ReplicaSet。
macrozheng
2021/02/05
1.7K0
自从上了K8S,项目更新都不带停机的!
本地 k8s 部署
minikube 是一个虚拟机,启动后会在内部自动创建一个 k8s 集群。minikube 是 k8s 的 node。
谛听
2022/04/08
1.7K0
K8s——Ingress-nginx原理及配置
在Kubernetes中,服务和Pod的IP地址仅可以在集群网络内部使用,对于集群外的应用是不可见的。为了使外部的应用能够访问集群内的服务,在Kubernetes中目前提供了以下几种方案:
小手冰凉
2020/09/15
6.8K0
K8s——Ingress-nginx原理及配置
k8s部署实战
节点名称如果都是lcoal,会造成后续加入 kubeadm join 时,pods pending,名称名称相同
AndreKzWu
2022/09/19
9820
相关推荐
从0到1搭建k8s(三)——访问这个服务
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档