kubernetes 1.3 使用skydns + kube2dns +etcd部署DNS服务器

1. 直接从Docker中拉取skydns,kube2dns,etcd容器,放到一个Pod中

  • kube2sky:1.14
  • etcd:2.0.9
  • skydns-amd64

2. 创建RC

apiVersion: v1
kind: ReplicationController
metadata:
  name: kube-dns-v6
  namespace: default
  labels:
    k8s-app: kube-dns
    version: v6
    kubernetes.io/cluster-service: "true"
spec:
  replicas: 1
  selector:
    k8s-app: kube-dns
    version: v6
  template:
    metadata:
      labels:
        k8s-app: kube-dns
        version: v6
        kubernetes.io/cluster-service: "true"
    spec:
      containers:
      - name: etcd
        image: 109.105.46.94:5000/dns/etcd:2.0.9
        command:
        - /usr/local/bin/etcd
        - -listen-client-urls
        - http://0.0.0.0:2379,http://0.0.0.0:4001
        - -advertise-client-urls
        - http://127.0.0.1:2379,http://127.0.0.1:4001
        - -initial-cluster-token
        - skydns-etcd
      - name: kube2sky
        #image: 109.105.46.94:5000/dns/kube2sky:1.11
        image: 109.105.46.94:5000/dns/kube2sky:1.14
        resources:
          limits:
            cpu: 100m
            memory: 50Mi
        command:
        - /kube2sky
       # - -kube_master_url=http://109.105.46.94:8080
       # - -domain=cluster.local
        - --kube-master-url=http://109.105.46.94:8080
        - --domain=cluster.local
      - name: skydns
        image:  109.105.46.94:5000/dns/skydns-amd64
        resources:
        command:
        - /skydns
        - -machines=http://localhost:4001
        - -addr=0.0.0.0:53
        - -domain=cluster.local.
        ports:
        - containerPort: 53
          name: dns
          protocol: UDP
        - containerPort: 53
          name: dns-tcp
          protocol: TCP
      dnsPolicy: Default

3.创建SVC

apiVersion: v1
kind: Service
metadata:
  name: kube-dns
  namespace: default
  labels:
    k8s-app: kube-dns
    kubernetes.io/cluster-service: "true"
    kubernetes.io/name: "KubeDNS"
spec:
  selector:
    k8s-app: kube-dns
  clusterIP: 192.168.3.100
  ports:
  - name: dns
    port: 53
    protocol: UDP
  - name: dns-tcp
    port: 53
    protocol: TCP

4. 启动dns:

kubectl create -f skydns-etcd-rc.yaml
kubectl create -f skydns-etcd-svc.yaml

5.修改各node节点上的/etc/kubernetes/kubelet.service配置文件,增加启动参数:

--cluster-dns=192.168.3.100 \--cluster-domain=cluster.local \

6.重启各节点:

systemctl daemon-reloadsystemctl restart kubelet
时间: 2025-01-08 22:36:32

kubernetes 1.3 使用skydns + kube2dns +etcd部署DNS服务器的相关文章

Centos 使用dnsmasq部署DNS服务器

Centos 使用dnsmasq部署DNS服务器 一.默认情况下Centos已安装dnsmasq,如未安装,请自行安装. 12  yum install dnsmasq   13  yum install bind-utils 二.配置hosts文件,解析域名.   14  vim /etc/hosts #添加内容格式 172.17.100.26    ns1.xnnet.com 三.配置主配置文件.   19  vim /etc/dnsmasq.conf #配置在最后三行log-queries

centos7.5下coredns+etcd搭建DNS服务器

coredns简介 安装etcd 安装coredns 设置域名解析 A记录 AAAA记录 CNAME记录 SRV记录 TXT记录 coredns简介 CoreDNS是一个DNS服务器,和Caddy Server具有相同的模型:它链接插件.CoreDNS是云本土计算基金会启动阶段项目. CoreDNS是SkyDNS的继任者. SkyDNS是一个薄层,暴露了DNS中的etcd中的服务. CoreDNS建立在这个想法上,是一个通用的DNS服务器,可以与多个后端(etcd,kubernetes等)进行通

centos7 部署dns服务器

=============================================== 2017/11/4_第1次修改                       ccb_warlock =============================================== 有些时候作为内部调试或测试,需要指定某些域名不是指向网上的环境,而是指向我们需要指定的ip(举例,就像我们可能需要www.baidu.com不是指向115.239.210.27,而是指向内网的192.168.

linux 部署DNS服务器

安装DNS步骤: 1.挂载光盘并安装主程序和伪装包 2.复制主配置文件和区域配置文件并改变所有者为named 3.修改主配置文件并在最后一行前添加如下内容 4.修改区域配置文件 5.启动服务并关闭selinux和防火墙 6.测试 二.构建主从DNS 1.修改主DNS配置文件 在从DNS服务器上安装主程序和伪装包 同上安装过程 3.复制主配置文件 cp -p /etc/named.conf/var/named/chroot/etc/ 4.修改从DNS的主配置文件 5.在区域配置文件目录创建slav

Kubernetes集群部署DNS服务

Kubernetes集群部署DNS服务在kubernetes中每一个service都会被分配一个虚拟IP,每一个Service在正常情况下都会长时间不会改变,这个相对于pod的不定IP,对于集群中APP的使用相对是稳定的. 但是Service的信息注入到pod目前使用的是环境变量的方式,并且十分依赖于pod(rc)和service的创建顺序,这使得这个集群看起来又不那么完美,于是kubernetes以插件的方式引入了DNS系统,利用DNS对Service进行一个映射,这样我们在APP中直接使用域

kubernetes高可用设计-CA,etcd

环境准备: master01:192.168.150.128 master02:192.168.150.130 master03:192.168.150.131 node01:192.168.150.132 lb01:192.168.150.133 lb02:192.168.150.134 集群环境变量 后面的嗯部署将会使用到的全局变量,定义如下(根据自己的机器.网络修改): # TLS Bootstrapping 使用的Token,可以使用命令 head -c 16 /dev/urandom

k8s部署dns

硬件环境: 两台虚拟机, 10.10.20.203 部署docker.etcd.flannel.kube-apiserver.kube-controller-manager.kube-scheduler 10.10.20.206 部署docker.flannel.kubelet.kube-proxy 软件环境: kubernetes:1.3.3 DNS-etcd:index.tenxcloud.com/google_containers/etcd:2.2.5 kube2sky:index.ten

基于Windows Server 2012 R2部署KMS服务器

基于Windows Server 2012 R2部署KMS服务器 关于Microsoft Windows / Microsoft Office "VLK" 和"MAK"两种激活的异同 "VLK"和"MAK"都是微软为"大客户"量身特定的激活方式.只要实施激活,就是永久激活."VLK"是Volume Licensing Key的缩写.微软对于"VLK"密钥施行"

JBPM(四)——把流程部署到服务器上

当我们的业务流程被设计开发完毕之后,会有许多相关的文件"散落"在工程中,其中包括: 定义流程的JPDL文件 根据图形化流程定义同步生成的流程图片文件(PNG格式) 业务流程中用于人机交互的表单页面文件 事件监听器等用户自定义代码的Java类文件 其他流程资源文件,例如小图标.css样式表.脚本文件.属性文件等 jbpm4支持将流程定义及其相关资源打包一个JAR(Java归档)格式的文件,部署到服务器上(其实就是服务所连接的JBPM数据库中),然后流程定义就可以被执行了. 一.如何将流程