zoukankan      html  css  js  c++  java
  • Kubernetes 部署应用

    一、概念

    1、Pod

    • k8s 调度的最小单元,一个 pod 包含一组容器,一个 pod 不会跨越多个工作节点
    • pod 相当与逻辑主机,每个 pod 都有自己的 IP 地址
    • pod 内的容器共享相同的 IP 和端口空间
    • 默认情况下,每个容器的文件系统与其他容器完全隔离

    2、Deployment

    • 可以更好地做弹性扩容,负载均衡。可以实现无人值守

    3、Service

    • 实现多个pod的统一访问入口

    二、实践

      kubernetes 安装https://www.cnblogs.com/fanxp/p/12076982.html

    1、nginx.yaml

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-deplayment
    spec:
      selector:
        matchLabels:
          app: nginx
      # 数量
      replicas: 2
      template:
        metadata:
          labels:
            app: nginx    
        spec:
          containers:
          - name: nginx
            # 指定镜像
            image: nginx:alpine
            # 指定暴露端口
            ports:
            - containerPort: 80

    ---

    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-service
    spec:
      selector:
        app: nginx
      ports:
        # service 内部访问端口
      - port: 8080
        # pod 端口
        targetPort: 80

     2、在master 中执行 

    kubectl apply -f nginx.yaml

    3、查看pod运行情况

    kubectl get pod -o wide

     在任意一台node中:curl 10.244.2.2 

     4、查看service运行情况

    kubectl get service
    或
    kubectl get svc

     在任意一台node中:curl 10.96.46.205:8080

     5、查看service是否有负载均衡

    随便进入一个pod中修改一下nginx的index.html

    kubectl exec -it nginx-deplayment-5c559d5697-2r7br sh
    # 修改html
    vi /usr/share/nginx/html/index.html

    多访问几次Service,发现内容发生了变化

    6、通过域名访问service

    coredns是一个DNS服务器,每当有新的service被创建,kube-dns会添加该service的dns记录。cluster中的pod可以通过{service_name.namespace_name:port}访问service

    在任意pod中:wget -q -O - nginx-service.default.svc.cluster.local:8080  或 wget -q -O - nginx-service.default:8080

  • 相关阅读:
    02-model设计
    01-开发环境搭建
    04-Uwsgi配置启动Nginx虚拟主机配置
    03-MySQL安装与配置
    02-Nginx配置
    01-Nginx安装
    22-注册、登录、验证登录
    21-django-pure-pagination分页
    (二)windows上使用docker
    Docker在windows7上的安装
  • 原文地址:https://www.cnblogs.com/fanxp/p/12084733.html
Copyright © 2011-2022 走看看