zoukankan      html  css  js  c++  java
  • 用k8s构建生产环境下应用服务

    1.生成镜像

    见https://www.cnblogs.com/mushou/p/9713741.html,把测试成熟的应用添加到tomcat镜像生成新的镜像,用ansible部署到集群的几点服务器中。

    2.部署环境

    1)安装docker-ce

    2)安装k8s

    一定记得kubectl,kubeadm,kubelet,kubernetes-cni版本与使用的kube-apiserver,kube-schedule,etcd,kube-controll-manager的版本相同

    见https://www.cnblogs.com/mushou/p/9613365.html

    3)部署集群

    见 https://www.cnblogs.com/mushou/p/9613365.html

    3.部署应用

    应用依赖的数据库,图片,Java环境部署在数据库服务器,采用nfs服务器共享供集群节点使用,也可以把应用服务的应用数据包共享供节点挂载。

    1)配置nfs服务器

    2)创建数据库服务

    创建persistentVolume,创建persistentVolumeClaim

    3)创建应用配置文件.yml文件

    其中,Deployment应用的镜像为前面生成的新镜像,

    volumes包括了persistentVolumeClaim,有数据库卷,图片卷,Java环境卷,其中还有一个tomcat/conf下的 server.xml文件也需要挂到生成的deployment中,

    需要使用configMap,需要先建好,kubectl create configmap  server-xml-key   --from-file=server.xml,

    在 yml配置文件中的volumes使用:

    name: server-xml-key
            configMap:
              name: server-xml-key

    同时在volumeMounts:

    - name: server-xml-key
              mountPath: /usr/local/tomcat/conf/server.xml
              subPath: server.xml

    这样就把该文件挂到pod中,我们如果更改pod中容器的tomcat的配置,只需更改该文件即可。其实我们使用nfs服务器,采用共享挂载的方式就是方便更改,同时做到不因pod 或者节点的故障而导致应用服务不可用。

    4.

    上文只是针对用k8s部署应用服务到生产环境的一些基本思路,具体的细节因公司业务保密的关系未在文中详细列出,供大家参考。

  • 相关阅读:
    centos7 安装docker 对应的 rabbitmq3.6.15
    golang中defer的使用规则
    Yii2-redis 不用 composer 的安装
    安装并使用PHPunit
    PHP Taint – 一个用来检测XSS/SQL/Shell注入漏洞的扩展
    SQL Antipatterns——SQL 反模式(二)
    tp5 No input file specified.
    vue 封装自定义组件
    判断微信访问
    phalcon windows下安装phalcon-devtools 官网的坑
  • 原文地址:https://www.cnblogs.com/mushou/p/9909168.html
Copyright © 2011-2022 走看看