Giter Club home page Giter Club logo

ingressdns's Introduction

ingress dns

This code looks for ingress controllers and then adds an entry to a consul server so that the ingress point has a DNS entry.

Define a replication controller for ingress DNS

apiVersion: v1
kind: ReplicationController
metadata:
  name: router
spec:
  replicas: 1
  selector:
    name: router
  template:
    metadata:
      labels:
        name: router
    spec:
      containers:
      - name: ingressdns
        image: zekizeki/ingressdns:0.0.2
        env:
          - name: KUBE_API_URL
            value: "http://kubernetes"
          - name: DOMAIN
            value: service.consul
          - name: CONSUL_API_ADDRESS
            value: http://localhost:8500/v1/agent/service/register

Create the ingressdns rc

kubectl create -f ingressdns.yaml

The host name used in an ingress must be made up of 4 portions and end in service.consul (unless consul has been configured to use a different domain label)

e.g. myservice.myenv.service.consul

an option HOST_REGEX env variable may be passed to add extra validation around the hostname used in an ingress. If the regex is not matched the host name will not be added to consul.

e.g. The following would validate that the host name used only used alpha numerics and ended with service.consul

- name: HOST_REGEX
  value: '^[aA0-zZ9]*\.[aA0-zZ9]*\.service.consul$'

ingressdns's People

Contributors

zekizeki avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.