kind: Namespace
apiVersion: v1
metadata:
  name: demo-webshell
  generateName: demo-webshell
  labels:
    name: demo-webshell
    purpose: Demonstration
  annotations:
    describe: Just show how to create
status:
  phase: ''
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: webshell-ingress
  namespace: demo-webshell
spec:
  rules:
  - host: webshell.com
    http:
      paths:
      - path: /
        backend:
          serviceName: webshell
          servicePort: 80
      - path: /ping
        backend:
          serviceName: webshell
          servicePort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: webshell
  namespace: demo-webshell
spec:
  type: ClusterIP
  ports:
  - name: webshell
    port: 80
    targetPort: 80
    protocol: TCP
  - name: ssh
    port: 22
    targetPort: 22
    protocol: TCP
  selector:
    app: webshell
---
apiVersion: v1
kind: Service
metadata:
  name: webshell-nodeport
  namespace: demo-webshell
spec:
  type: NodePort
  ports:
  - name: webshell
    port: 80
    targetPort: 80
    protocol: TCP
  - name: ssh
    port: 22
    targetPort: 22
    protocol: TCP
  selector:
    app: webshell
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: webshell
  namespace: demo-webshell
spec:
  replicas: 1
  selector:
    matchLabels:
      app: webshell
  template:
    metadata:
      labels:
        name: webshell
        app: webshell
    spec:
      containers:
      - name: webshell
        image: lijiaocn/webshell:1.0
        resources:
          limits:
            cpu: 3
            memory: 128Mi
          requests:
            cpu: 0.1
            memory: 32Mi
        livenessProbe:
          tcpSocket:
            port: 80
          initialDelaySeconds: 5
          timeoutSeconds: 5
          periodSeconds: 10
          successThreshold: 1
          failureThreshold: 3
        imagePullPolicy: Always
        securityContext:
          privileged: false
          runAsNonRoot: false
        stdin: false
        stdinOnce: false
        tty: false
      - name: sshproxy
        image: lijiaocn/sshproxy:1.0
        env:
        - name: ROOTPASS
          value: '123456'
        resources:
          limits:
            cpu: 3
            memory: 128Mi
          requests:
            cpu: 0.1
            memory: 32Mi
        livenessProbe:
          tcpSocket:
            port: 22
          initialDelaySeconds: 5
          timeoutSeconds: 5
        imagePullPolicy: Always
        securityContext:
          privileged: false
          runAsNonRoot: false
        stdin: false
        stdinOnce: false
        tty: false
      restartPolicy: Always
      dnsPolicy: Default
      serviceAccountName: default
      hostNetwork: false
      hostPID: false
      hostIPC: false

给服务添加路由--ingress的更多相关文章

  1. k8s~为服务添加ingress的实现

    为服务添加ingress的实现 1 当我们为指定的项目添加ingress支持之后,它会在“负载均衡”标签页出现,并显示出你的域名解析到的服务. 2 我们的ingress是支持https的,所以需要为你 ...

  2. 面向服务的体系架构 SOA(二) --- 服务的路由和负载均衡

    2. 服务的路由和负载均衡 1.2.1 服务化的演变 SOA设计思想:分布式应用架构体系对于业务逻辑复用的需求十分强烈,上层业务都想借用已有的底层服务来快速搭建更多.更丰富的应用,降低新业务开展的人力 ...

  3. AngularJS路由系列(4)-- UI-Router的$state服务、路由事件、获取路由参数

    本系列探寻AngularJS的路由机制,在WebStorm下开发.主要包括: ● UI-Router的$state服务● UI-Router的路由事件● UI-Router获取路由参数 Angular ...

  4. Linux 静态和动态添加路由

    (一)静态添加 1/5 首先让我们查看当前机器的路由表,执行如下命令:route -n [root@vnode33 network-scripts]# route -n Kernel IP routi ...

  5. 02- web-mini框架添加路由、MySQL(二)

    本篇在上篇的基础上为其增设路由功能,同时将上篇中的数据库中数据备份添加进去. 一.装饰器 在之前有介绍过为一个函数不改变源代码不改变原函数的调用方式下为其增设附加功能,需要用到装饰器,而在该上篇的we ...

  6. vue-element-admin登录逻辑,以及动态添加路由,显示侧边栏

    这段时间在研究element-admin,感觉这个库有许多值得学习的地方,我学习这个库的方法是,先看它的路由,顺着路由,摸清它的逻辑,有点像顺藤摸瓜. 这个库分的模块非常清晰,适合多人合作开发项目,但 ...

  7. 玩转Windows服务系列——给Windows服务添加COM接口

    当我们运行一个Windows服务的时候,一般情况下,我们会选择以非窗口或者非控制台的方式运行,这样,它就只是一个后台程序,没有界面供我们进行交互. 那么当我们想与Windows服务进行实时交互的时候, ...

  8. C# MVC ( 添加路由规则以及路由的反射机制 )

    在项目文件夹下找到 App_Start 下 找到 RouteConfig.cs文件 打开   (1) 约束的规则 从上往下 贪婪性   (2) 用 routes.MapRoute(...) 添加   ...

  9. centos7 拨号之后添加路由

    问题:拨号主机再自动拨号(/sbin/ifdown ppp0;/sbin/ifup ppp0)之后,无法上网(没有添加路由) 思路:在拨号程序中添加路由代码 vim /sbin/ifup { slee ...

随机推荐

  1. rancher三节点k8s集群部署例子

    rancher三节点k8s集群部署例子 待办 https://rorschachchan.github.io/2019/07/25/使用Rancher2-1部署k8s/

  2. 如何在Go中获得 "A1","B2" 类似字符+数字的字符串

    package main import ( "fmt" ) func main() { // 字符串 str := "ABCDEFGHIJKLMNOPQRSTUVWXYZ ...

  3. 寒假安卓app开发学习记录(6)

    今天把之前学过的内容复习了一遍,然后用了大概一个小时的时间看了看教学视频. 学到的主要内容是如何调试Android程序,以及Android的应用以及打包过程.   调试: 依次点击Run“-”Atta ...

  4. windows系统安装 ionic

    windows系统安装 ionic 参考菜鸟教程:https://www.runoob.com/ionic/ionic-install.html 命令行安装 Window 和 Linux 上打开命令行 ...

  5. EAC3 spectral extension原理

    1.Spectral extension简介 Spectral extension是通过低频的transform coefficients合成高频transform coefficients的过程. ...

  6. 使用VS2017开发安卓app(2)新建项目

    安装完成后,在c#下找到Android,选择Android应用(Xamarin),修改项目名称和路径,新建第一个安卓项目! 点击确定后会出现 这里我们选择空白应用和Android 7.1. 创建新项目 ...

  7. 每天进步一点点------Xilinx DCM

    时钟---锁相环 1.       Xilinx DCM 数字时钟管理模块(Digital Clock Manager,DCM)是基于Xilinx的其他系列器件所采用的数字延迟锁相环(DLL,Dela ...

  8. 修改vsftpd的默认根目录/var/ftp/pub到其他目录

    修改ftp的根目录只要修改/etc/vsftpd/vsftpd.conf文件即可: 加入如下几行: local_root=/var/www/html chroot_local_user=YES ano ...

  9. Oracle expdp 多表导出处理

    一个项目中需要在oracle数据库某个用户下导出1000多个表,导入到测试库做数据分析测试.很少遇到需要导出这么多表的情况,通常都是按schema导出,或者整库导出.考虑到expdp中include参 ...

  10. 前端知识之html

    html介绍 web服务器的本质 import socket sk=socket.socket() sk.bind(('127.0.0.1'.8080)) sk.listen(5) while Tru ...