zoukankan      html  css  js  c++  java
  • 一个简单的Kubernetes应用部署示例

    说明

    我们通过一个示例来演示一下kubernetes部署应用的基本配置。

    这个示例相对比较简单,就是一个tomcat应用加上一个mysql数据库

    在tomcat里运行一个简单的webappp,这个app会访问Mysql获取数据。并展示在页面上。为了演示和简化的目的,只要程序正确连接到了数据库上,它就会自动完成对应的table的创建与初始化数据的准备工作。所以当我们通过浏览器访问此应用的时候,就会显示一个表格的页面,数据则来自数据库。

    配置

    我们在/root/k8s-yaml/目录下创建一个webapp的目录,在这个目录里面创建四个文件:

    .
    ├── mysql-dm.yaml
    ├── mysql-svc.yaml
    ├── myweb-dm.yaml
    └── myweb-svc.yaml
    

    这四个文件的内容分别如下:

    mysql-dm.yaml:

    apiVersion: apps/v1beta1
    kind: Deployment
    metadata:
      name: mysql
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: mysql
      template:
        metadata:
          labels:
            app: mysql
        spec:
          containers:
          - name: mysql
            image: mysql:5.7
            ports:
            - containerPort: 3306 
            env:
            - name: MYSQL_ROOT_PASSWORD
              value: "123456"
    

    mysql-svc.yaml:

    apiVersion: v1
    kind: Service
    metadata:
      name: mysql
    spec:
      ports:
      - port: 3306
      selector:
        app: mysql``
    

    myweb-dm.yaml:

    apiVersion: apps/v1beta1
    kind: Deployment
    metadata:
      name: myweb
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: myweb
      template:
        metadata:
          labels:
            app: myweb
        spec:
          containers:
          - name: myweb
            image: kubeguide/tomcat-app:v1
            ports:
            - containerPort: 8080
            env:
            - name: MYSQL_SERVICE_HOST
              value: 'mysql'
            - name: MYSQL_SERVICE_PORT
              value: '3306
    

    myweb-svc.yaml:

    apiVersion: v1
    kind: Service
    metadata:
      name: myweb
    spec:
      type: NodePort
      ports:
      - port: 8080
        nodePort: 30001
      selector:
        app: myweb
    

    我们通过如下方式启动:

    kubectl apply -f ./
    

    访问:

    http://$node_ip:30001/demo

  • 相关阅读:
    词云
    结巴分词
    重复值处理
    异常值判断
    MySQL基本使用
    缺失值处理
    fit_transform和transform的区别
    sklearn学习笔记之简单线性回归
    图解机器学习
    Unity---UNet学习(1)----基本方法介绍
  • 原文地址:https://www.cnblogs.com/breezey/p/9457734.html
Copyright © 2011-2022 走看看