19-k8s的附加组件-coreDNS组件

这篇具有很好参考价值的文章主要介绍了19-k8s的附加组件-coreDNS组件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、概念

19-k8s的附加组件-coreDNS组件,k8s系列,kubernetes,容器,云原生

        coreDNS组件:就是将svc资源的名称解析成ClusterIP;

        kubeadm部署的k8s集群自带coreDNS组件,二进制部署需要自己手动部署;

[root@k8s231 ~]# kubectl get pods -o wide -A

    k8s系统中安装了coreDNS组件后,会有一个coreDNS开头的pod资源;

19-k8s的附加组件-coreDNS组件,k8s系列,kubernetes,容器,云原生

二、查看k8s集群的coreDNS的IP地址

        查看kubelet的配置文件中,可以看到集群dns的地址;

[root@k8s231 ~]# vim /var/lib/kubelet/config.yaml 

............
clusterDNS:
- 10.200.0.10
clusterDomain: xinjizhiwa.com

...............

[root@k8s231 ~]# kubectl get svc -A

19-k8s的附加组件-coreDNS组件,k8s系列,kubernetes,容器,云原生

查看k8s集群中DNS的svc的详细信息,可以看到,里面解析了coreDNS的地址在endpoint列表中;

[root@k8s231 ~]# kubectl describe -n kube-system svc kube-dns

三、测试coreDNS组件是否正常

1,第一种方式验证

· 准备wordpress的案例的资源文件

[root@k8s231 dns]# ll
total 12
-rw-r--r-- 1 root root 574 Feb 17 22:47 db.yaml
-rw-r--r-- 1 root root 599 Feb 17 22:51 deploy.yaml
-rw-r--r-- 1 root root 411 Feb 17 22:50 svc.yaml

[root@k8s231 dns]# cat deploy.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:
  name: dm-wordpress
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s: k8s
  template:
    metadata:
      labels:
        k8s: k8s
    spec:
      containers:
      - name: wp-c
        image: wordpress:latest
        ports:
        - name: wp-port
          containerPort: 80
        env:
        - name: WORDPRESS_DB_HOST
          value: 10.200.22.22:3306
        - name: WORDPRESS_DB_USER
          value: wordpress
        - name: WORDPRESS_DB_PASSWORD
          value: wordpress
        - name: WORDPRESS_DB_NAME
          value: wordpress

[root@k8s231 dns]# cat db.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:
  name: wordpress-db
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s: db
  template:
    metadata:
      labels:
        k8s: db
    spec:
      containers:
      - name: db-c
        image: mysql:8.0
        ports:
        - name: db-port
          containerPort: 3306
        env:
        - name: MYSQL_DATABASE
          value: wordpress
        - name: MYSQL_USER
          value: wordpress
        - name: MYSQL_PASSWORD
          value: wordpress
        - name: MYSQL_ROOT_PASSWORD
          value: wordpress

[root@k8s231 dns]# cat svc.yaml 
apiVersion: v1
kind: Service
metadata:
  name: svc-db
spec:
  type: NodePort
  clusterIP: 10.200.22.22
  selector:
    k8s: db
  ports:
    - protocol: TCP
      port: 3306
      targetPort: 3306
      nodePort: 30001
---
apiVersion: v1
kind: Service
metadata:
  name: svc-wp
spec:
  type: NodePort
  selector:
    k8s: k8s
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      nodePort: 30000

· 查看现有的svc

19-k8s的附加组件-coreDNS组件,k8s系列,kubernetes,容器,云原生

· 响应式创建一个pod容器

[root@k8s231 ~]# kubectl run xinjizhiwa-dns --rm -it --image=alpine:latest -- sh

/ # ping svc-wp
PING svc-wp (10.200.20.12): 56 data bytes

2,第二种方式验证

· dig一个svc名称

[root@k8s231 ~]# yum -y install bind-utils

[root@k8s231 ~]# dig @10.200.0.10 svc-wp.default.svc.xinjizhiwa.com +short
10.200.20.12

四、使用coreDNS

1,将wordpress指向数据库svc的IP换成名称

[root@k8s231 dns]# vim deploy.yaml

19-k8s的附加组件-coreDNS组件,k8s系列,kubernetes,容器,云原生

[root@k8s231 dns]# kubectl apply -f deploy.yaml

2,浏览器访问查看

19-k8s的附加组件-coreDNS组件,k8s系列,kubernetes,容器,云原生

至此,coreDNS学习完毕;

###############################################################

qq学习群:1053357173

微信号:xinjizhiwa-1030文章来源地址https://www.toymoban.com/news/detail-833688.html

到了这里,关于19-k8s的附加组件-coreDNS组件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • [Kubernetes[K8S]集群:master主节点初始化]:通过Calico和Coredns网络插件方式安装

    [Kubernetes[K8S]集群:master主节点初始化]:通过Calico和Coredns网络插件方式安装

    主节点:安装coredns - init初始化 主节点(此时还没有安装calico) 从节点:基于主节点生成join命令加入集群 主节点:安装calico:apply 生成pod,此时没有调整yaml网卡 coredns 和calico pod 运行成功 但是 calico-node-cl8f2 运行失败 查看 解决链接 因为之前写过一篇,calico一直异常,步骤

    2024年04月15日
    浏览(10)
  • 【云原生 | Kubernetes 系列】K8s 实战 如何给应用注入数据 II 将pod数据传递给容器

    【云原生 | Kubernetes 系列】K8s 实战 如何给应用注入数据 II 将pod数据传递给容器

    在上一篇文章中,我们学习了针对容器设置启动时要执行的命令和参数、定义相互依赖的环境变量、为容器设置环境变量,三种设置方式,本篇文章,我们将继续学习数据的传递。 有两种方式可以将 Pod 和 Container 字段传递给运行中的容器: 环境变量 卷文件 这两种呈现 Pod

    2024年01月25日
    浏览(257)
  • 容器化进阶Kubernetes(K8S)详解

    容器化进阶Kubernetes(K8S)详解

    1.1.1 Kubernetes是什么及作用 Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。 Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 官网地址 Kubernetes 中文社区 Kubernetes(k8s)中文文档 目录_Kubernetes中文社

    2024年02月05日
    浏览(17)
  • K8s(Kubernetes)学习(一):k8s概念及组件

    K8s(Kubernetes)学习(一):k8s概念及组件

    Kubernetes中文文档:https://kubernetes.io/zh-cn/docs/home/ Kubernetes源码地址:https://github.com/kubernetes/kubernetes 首先要了解应用程序部署经历了以下几个时代: 传统部署时代:在物理服务器上运行应用程序。 虚拟化部署时代:虚拟化技术允许你在单个物理服务器的 CPU 上运行多台虚拟机

    2024年02月05日
    浏览(15)
  • 容器技术,1. Docker,2. Kubernetes(K8s):

    容器技术,1. Docker,2. Kubernetes(K8s):

    目录 容器技术 1. Docker: 2. Kubernetes(K8s): Docker和Kubernetes 容器的主要应用场景有哪些? 有效的将单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组之间平衡有冲突的资源使用需求,这种技术就是容器技术。 容器技术指通过在物理主机操作系统上创建一个一个

    2024年02月11日
    浏览(16)
  • Kubernetes(k8s)容器编排Pod介绍和使用

    Kubernetes(k8s)容器编排Pod介绍和使用

    Pod是kubernetes中你可以创建和部署的最小也是最简的单位,一个Pod代表着集群中运行的一个进程。 Pod有两个必须知道的特点 通过yaml文件或者json描述Pod和其内容器的运行环境和期望状态,例如一个最简单的运行nginx应用的pod,定义如下 3.1.1 参数描述 下面简要分析一下上面的

    2024年02月08日
    浏览(51)
  • Kubernetes(K8s):容器化应用的航空母舰

    Kubernetes(K8s)是一个开源的容器编排系统,它的出现就像是为容器化应用提供了一艘强大的航空母舰。在这艘母舰上,你的应用容器就像是一架架战斗机,Kubernetes负责指挥它们起飞、飞行、降落,确保它们能在正确的时间、正确的地点执行任务。 Pod: Kubernetes的基本飞行编队

    2024年04月08日
    浏览(13)
  • Kubernetes(K8s)的核心组件简介

    Kubernetes(简称 K8s)是一个开源的,用于自动化部署、扩展和管理容器化应用程序的平台。在这篇文章中,我们将深入研究 Kubernetes 的核心组件及其功能。 一、Master 组件 1. API Server:Kubernetes 的主要管理组件。所有的管理任务都是通过 API Server 进行的。它是 Kubernetes 的前端,

    2024年02月15日
    浏览(15)
  • Kubernetes(k8s)入门:核心组件详解

    Kubernetes(k8s)入门:核心组件详解

    附:集群搭建请移步: Kubernetes(k8s)集群搭建,完整无坑,不需要科学上网~ Controllers官网文档:https://kubernetes.io/docs/concepts/workloads/controllers/ 官网:https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/ 官网原文:A ReplicationController ensures that a specified number of pod repl

    2024年02月13日
    浏览(15)
  • kubernetes(k8s)为容器和 Pod 分配内存资源

    kubernetes(k8s)为容器和 Pod 分配内存资源

    展示如何将内存请求(request)和内存限制(limit)分配给一个容器。 我们保障容器拥有它请求数量的内存,但不允许使用超过限制数量的内存。 创建新的命名空间 编辑yaml文件 配置文件的 args 部分提供了容器启动时的参数。 “–vm-bytes”, “150M” 参数告知容器尝试分配 15

    2024年02月15日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包