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. lighting

    lighting lighting 是基于 nodejs 构建的一个命令行工具,使用 lighting 可以快速搭建 H5.APP.RestAPI 的开发工程环境(结合 VSCode 最佳).本地开发 ...

  2. CSS 盒子模型属性

    盒子模型(Flexible Box) 属性 属性 说明 CSS box-align 指定如何对齐一个框的子元素 3 box-direction 指定在哪个方向,显示一个框的子元素 3 box-flex ...

  3. winform学习(4)控件的添加、显示和隐藏

    窗体的添加.显示与隐藏 可以直接通过工具栏将某个控件直接拖动至UI界面(也可以在工具栏里双击某个控件) 也可以在代码里直接添加:窗体的标识.Controls.Add(控件标识符); Button my ...

  4. 为什么CSS,JS以及图片等这些资源的路径需要加问号

    我们平时练习的时候,很少写路径上面需要加问号的,而实际应用当中,我们经常看到一些资源的路径后面跟着问号,这是为什么呢? 答:答案很简单哦,其实就是为了防止缓存,我们可以在原本路径的后面加上问号,加上我 ...

  5. UVA 1267 Network(DFS)

    题目链接:https://vjudge.net/problem/UVA-1267 首先我们要把这样一棵无根树转换成有根树,那么树根我们可以直接使用$VOD$. 还有一个性质:如果深度为$d$的一个节点 ...

  6. 【做题笔记】洛谷P1036 选数

    作为一个 DFS 初学者这题真的做得很惨...其实窝学 DFS 一年多了,然后一开始就学不会最近被图论和数据结构打自闭后才准备好好学一学233 一开始,直接套框架,于是就有 #include < ...

  7. codeforces 597div2 F. Daniel and Spring Cleaning(数位dp+二维容斥)

    题目链接:https://codeforces.com/contest/1245/problem/F 题意:给定一个区间(L,R),a.b两个数都是属于区间内的数,求满足 a + b = a ^ b ...

  8. Java compareTo的用法

    compareTo() 方法用于将 Number 对象与方法的参数进行比较.可用于比较 Byte, Long, Integer等. 该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比 ...

  9. 利用ansible-playbook一键部署ELK(ElasticSearch,logstash and kibana)

    一.部署前环境介绍: es集群5台(es01,es02,es03,es04,es05),logstash服务器1台(logstash2),kibana服务器1台(kibana2),模拟apache服务 ...

  10. php操作shee学习笔记之(一)PHP操作shell函数

    一.php操作shell 1.system函数:执行普通命令 string system (string $command [,int &$return_var]) 1)$command是命令 ...