当前位置:首页 > CN2资讯 > 正文内容

Istio DNS 代理tls dns

2天前CN2资讯

DNS 代理

除了捕获应用流量,Istio 还可以捕获 DNS 请求,以提高网格的性能和可用性。 当 Istio 代理 DNS 时,所有来自应用程序的 DNS 请求将会被重定向到 Sidecar, 因为 Sidecar 存储了域名到 IP 地址的映射。如果请求被 Sidecar 处理, 它将直接给应用返回响应,避免了对上游DNS服务器的往返。 反之,请求将按照标准的 /etc/resolv.conf DNS 配置向上游转发。虽然 Kubernetes 为 Kubernetes Service 提供了一个开箱即用的 DNS 解析, 但任何自定义的 ServiceEntry 都不会被识别。有了这个功能,ServiceEntry 地址可以被解析,而不需要自定义 DNS 服务配置。对于 Kubernetes Service 来说, 一样的 DNS 响应,但减少了 kube-dns 的负载,并且提高了性能。此功能默认情况下未启用。要启用该功能,请在安装 Istio 时设置。

启动 DNS 代理

全局启用

cat <<EOF | istioctl install -y -f - apiVersion: /v1alpha1 kind: IstioOperator spec: meshConfig: defaultConfig: proxyMetadata: # 启用基本 DNS 代理 ISTIO_META_DNS_CAPTURE: "true" # 启用自动地址分配,可选 ISTIO_META_DNS_AUTO_ALLOCATE: "true" EOF

or 

istioctl install --set profile=default --set values.global.proxy.clusterDomain=cluster.local --set meshConfig.defaultConfig.proxyMetadata.ISTIO_META_DNS_CAPTURE=true --set meshConfig.defaultConfig.proxyMetadata.ISTIO_META_DNS_AUTO_ALLOCATE=true -y

pod 启用

kind: Deployment metadata: name: sleep spec: ... template: metadata: annotations: /config: | proxyMetadata: ISTIO_META_DNS_CAPTURE: "true" ISTIO_META_DNS_AUTO_ALLOCATE: "true" ...

创建 ServiceEntry 服务

serviceentry-gitlab.yaml

apiVersion: /v1alpha3 kind: WorkloadEntry metadata: name: workload-gitlab spec: address: "192.168.174.108" ports: http: 8080 labels: app: gitlab --- apiVersion: /v1alpha3 kind: ServiceEntry metadata: name: gitlab-external spec: hosts: - ports: - number: 80 name: http protocol: HTTP targetPort: 8080 location: MESH_EXTERNAL resolution: STATIC workloadSelector: labels: app: gitlab

创建 ServiceEntry 资源

# kubectl apply -f serviceentry-gitlab.yamlworkloadentry./workload-gitlab created serviceentry./gitlab-external created

查看 ServiceEntry 资源

kubectl get we,seNAME AGE ADDRESS workloadentry./workload-gitlab 6m5s 192.168.174.108 NAME HOSTS LOCATION RESOLUTION AGE serviceentry./gitlab-external [""] MESH_EXTERNAL STATIC 6m5s

DNS 测试

未启用 DNS

curl -I curl: (6) Could not resolve host:

启用 DNS

curl -I HTTP/1.1 302 Found server: envoy date: Tue, 14 Nov 2023 06:52:59 GMT content-type: text/html; charset=utf-8 content-length: 0 cache-control: no-cache content-security-policy: location: http:///users/sign_in permissions-policy: interest-cohort=() x-content-type-options: nosniff x-download-options: noopen x-frame-options: SAMEORIGIN x-gitlab-meta: {"correlation_id":"01HF69NM5P0JJ5N0NDSH5XTSKS","version":"1"} x-permitted-cross-domain-policies: none x-request-id: 01HF69NM5P0JJ5N0NDSH5XTSKS x-runtime: 0.010393 x-ua-compatible: IE=edge x-xss-protection: 1; mode=block strict-transport-security: max-age=63072000 referrer-policy: strict-origin-when-cross-origin x-envoy-upstream-service-time: 13

自动分配地址

curl -sS -v * Trying 240.240.167.201:80... * TCP_NODELAY set * Connected to (240.240.167.201) port 80 (#0) > GET / HTTP/1.1 > Host: > User-Agent: curl/7.67.0 > Accept: */* > * Mark bundle as not supporting multiuse < HTTP/1.1 302 Found < server: envoy < date: Tue, 14 Nov 2023 06:54:45 GMT < content-type: text/html; charset=utf-8 < content-length: 99 < cache-control: no-cache < content-security-policy: < location: http:///users/sign_in < permissions-policy: interest-cohort=() < x-content-type-options: nosniff < x-download-options: noopen < x-frame-options: SAMEORIGIN < x-gitlab-meta: {"correlation_id":"01HF69RTT4YY0TMBR0SMK39HE4","version":"1"} < x-permitted-cross-domain-policies: none < x-request-id: 01HF69RTT4YY0TMBR0SMK39HE4 < x-runtime: 0.038758 < x-ua-compatible: IE=edge < x-xss-protection: 1; mode=block < strict-transport-security: max-age=63072000 < referrer-policy: strict-origin-when-cross-origin < x-envoy-upstream-service-time: 42 < * Connection #0 to host left intact <html><body>You are being <a href="http:///users/sign_in">redirected</a>.</body></html>

参考文档

https://istio.io/latest/zh/docs/ops/configuration/traffic-management/dns-proxy/



    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/24428.html

    分享给朋友:

    “Istio DNS 代理tls dns” 的相关文章

    2024黑五活动指南:抓住全球购物狂欢的绝佳机会

    黑五活动,全称“黑色星期五”,是跨境圈一年一度的大事件。这个购物狂欢节起源于美国,通常在感恩节后的第一天,也就是11月的第四个星期五举行。最初,黑五活动主要是线下实体店的促销活动,后来逐渐扩展到线上电商平台,成为全球消费者和卖家共同期待的购物盛宴。 黑五活动的意义不仅仅在于折扣和促销,它更是一个推动...

    探索日本V文化:从排球V联赛到Vtuber的多元化发展

    在谈到日本的多元化时,首先无法忽视的是“日本 v”这个词汇所涵盖的多个领域。它不仅代表了排球运动的一个新平台,也象征着现代金融科技,以及独特的二次元文化。这些领域虽然各自独立,但它们共同描绘出日本社会在多个层面上的文化与技术的融合。 1.1 日本排球V联赛 自2018年启幕以来,日本排球V联赛(V....

    宝塔面板安装指南:轻松搭建与管理云服务器

    宝塔面板是一款专为服务器运维设计的工具,以其简单易用的操作界面受到广泛欢迎。我在使用云服务器建站时,发现宝塔面板让繁琐的服务器管理变得轻松自如。它支持一键安装LAMP和LNMP环境,用户可以在数分钟内搭建出一个完整的网站环境,而且它还集成了监控、数据库管理、FTP等多种功能,真是一个多面手。 无论是...

    BT开心版:简化Linux服务器管理的最佳工具

    BT开心版是一个强大的Linux服务器管理工具,致力于简化网站的搭建、管理和维护过程。对于那些刚接触Linux操作系统的用户来说,BT开心版的出现无疑是一大福音。它的设计理念是让每个用户无论有多少技术背景,都能高效地管理自己的网页,不必深入学习Linux系统的复杂操作。 首先,我发现BT开心版的最大...

    甲骨文云注册:详细流程与免费试用攻略

    甲骨文云注册概述 甲骨文云介绍和服务特点 我对甲骨文云的首要印象是它独一无二的服务。甲骨文云不仅提供高性能的VPS服务器,还给予用户一个轻松的起步体验。其主要服务包括两台配置为1核1G内存、50G硬盘和10T流量的AMD VPS,还有一台配置为4核24G内存、100G硬盘、10T流量的ARM VPS...

    如何解决甲骨文IP被墙的问题及有效方法

    谈到甲骨文,大家可能会联想到古老的文字和悠久的历史,然而随着信息技术的飞速发展,甲骨文的应用已经不仅仅局限于文化研究。在数据存储、信息管理等领域,甲骨文的IP(互联网协议)在全球范围内发挥着重要的作用。不幸的是,现如今许多用户却发现自己无法正常访问这些IP。这就是我们所说的“甲骨文IP被墙”的现象。...