栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

K8s部署nginx

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

K8s部署nginx

上一篇博客已经安装初始化完成了K8S

文章目录
  • 1.初步搭建一个pod
    • 1.1拉取镜像
    • 1.2等待镜像完成
    • 1.3将运行的服务对外暴露
    • 1.4查询当前pod查看端口
    • 1.5删除服务
  • 2.使用yaml文件部署
  • 出现的错误

1.初步搭建一个pod 1.1拉取镜像
kubectl create deployment nginx --image=nginx

1.2等待镜像完成
kubectl get pod

当status为running就是拉取完成已经运行了

1.3将运行的服务对外暴露

kubectl expose deployment nginx --port=80 --type=NodePort

1.4查询当前pod查看端口
kubectl get pod,svc


注:正常情况下,容器会运行在一个节点中,节点的ip+端口号都可以访问该网站

1.5删除服务
kubectl delete deployment nginx
2.使用yaml文件部署

创建一个yaml文件,我的是demo-nginx.yaml(是我加的一个群,里边的大佬发给我学习用的)

##版本号,pod资源
apiVersion: apps/v1
##类型/控制器
kind: Deployment
##数据标签
metadata:
  ##容器名称
  name: mynginx
  ##子标签
  namespace: default
  labels:
    ##业务容器
    app: mynginx
spec:
  ##副本数
  replicas: 1
  ##选择器
  selector:
    ##匹配标签
    matchLabels:
      ##对应上面的容器名称
      app: mynginx
  ##模板
  template:
    metadata:
      labels:
        ##对应上面的容器名称
        app: mynginx
    #指定资源内容
    spec:
      ##业务容器
      containers:
        ##对应上面的容器名称
        - name: mynginx
          ##使用哪个镜像
          image: nginx
          ports:
            ##容器端口信息
            - containerPort: 80
              ##协议
              protocol: TCP
          resources:
            limits:
              cpu: 150m
              memory: 500Mi
            requests:
              cpu: 10m
              memory: 10Mi
          # 错误日志路径和类型
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
---
##版本号
apiVersion: v1
##服务类型
kind: Service
metadata:
  name: mynginx
  namespace: default
  labels:
    app: mynginx
spec:
  ports:
    - name: http
      ##内部端口
      port: 80
      protocol: TCP
      ##映射端口
      targetPort: 80
      ##指定访问端口
      nodePort: 30002
  ##选择器
  selector:
    ##选择业务进行发布
    app: mynginx
  sessionAffinity: None
  ##端口映射
  type: NodePort

然后切换到配置目录下执行以下命令

kubectl apply -f demo-nginx.yaml #启动服务
kubectl delete-f demo-nginx.yaml #删除服务
出现的错误

容器正常启动,pods查询也能查到,但是就是访问不了
dns显示不正常,我重启解决了问题!!!!!
惊呆了我,我不知道为啥,对不起在座的诸位,有大佬希望能告诉我为啥

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/450422.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号