首页 > 其他分享 >K8s hosts 解析 HostAliases

K8s hosts 解析 HostAliases

时间:2022-11-22 19:22:05浏览次数:49  
标签:解析 bar name HostAliases hosts foo K8s local

先来通过下图来表达一下现象:

通过图片内容可以看出,在 k8s 中,容器内部的 hosts 解析是不会继承宿主机的 host 解析的(与宿主机不相干),常规情况我们在这个应用体系内都有公共的 DNS 服务,DNS 服务是跨主机和容器共享的。

只是有时候在没有公共DNS解析服务的情况下,而容器中的程序又需要通过本地域名的方式去请求接口。这就需要我们手工配置 hosts 映射,这个配置如图来看在宿主机上配置是不可行的,那么在 k8s 的应用场景中,它为我们提供了可以为 pod 配置 hosts 解析的方式,如题所述就是使用 HostAliases。

使用说明
基于Pod 的示例:

apiVersion: v1
kind: Pod
metadata:
name: hostaliases-pod
spec:
restartPolicy: Never
hostAliases:
- ip: "127.0.0.1"
hostnames:
- "foo.local"
- "bar.local"
- ip: "10.1.2.3"
hostnames:
- "foo.remote"
- "bar.remote"
containers:
- name: cat-hosts
image: busybox
command:
- cat
args:
- "/etc/hosts"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
基于 Deployment 的示例:

apiVersion: v1
kind: Deployment
metadata:
name: hostaliases-dp
namespace: default
spec:
replicas: 1
selector:
name: hostaliases-pod
template:
metadata:
labels:
name: hostaliases-pod
spec:
hostAliases:
- ip: "127.0.0.1"
hostnames:
- "foo.local"
- "bar.local"
- ip: "10.1.2.3"
hostnames:
- "foo.remote"
- "bar.remote"
containers:
- name: cat-hosts
image: busybox
imagePullPolicy: Always
command:
- cat
args:
- "/etc/hosts"
————————————————
版权声明:本文为CSDN博主「catoop」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/catoop/article/details/122068545

标签:解析,bar,name,HostAliases,hosts,foo,K8s,local
From: https://www.cnblogs.com/gaoyanbing/p/16916180.html

相关文章

  • K8S kubesphere安装mysql
    原先我们使用Docker按照mysql时候的命令 dockerrun-p3306:3306--namemysql-01\-v/mydata/mysql/log:/var/log/mysql\-v/mydata/mysql/data:/var/lib/mysql......
  • k8s1.14.1 集群更新证书过期时间
    适用场景部分组件证书检查只有1年时间(即不止kubelet证书),但当前未过期部分老包可能会出现一些master组件证书,或者kubelet证书只有1年的时间,如果检查发现若干证书都是1年,需......
  • C# .NET 操作Windows hosts
    C#.NET操作Windowshosts 工具类HostsUtil:usingSystem;usingSystem.IO;usingSystem.Text;namespaceCommonUtils{publicstaticclassHostsUtil......
  • k8s在线升级
    在线升级仅支持小版本的相关的升级,不支持大版本的升级#master#确定要升级的版本yumlist--showduplicateskubeadm--disableexcludes=kubernetes#升级masetryumins......
  • K8S Pod Sidecar 应用场景之一-加入 NGINX Sidecar 做反代和 web 服务器
    KubernetesPodSidecar简介Sidecar是一个独立的容器,与Kubernetespod中的应用容器一起运行,是一种辅助性的应用。Sidecar的常见辅助性功能有这么几种:服务网格(s......
  • K8s介绍
    K8s介绍k8s是一个编排容器的工具,其实也是管理应用的全生命周期的一个工具,从创建应用,应用的部署,应用提供服务,扩容缩容应用,应用更新,都非常的方便,而且可以做到故障自......
  • 【云原生】Kubernetes(k8s)Calico 客户端工具 calicoctl
    目录一、概述二、calicoctl安装三、calicoctl简单使用1)认证信息配置2)查看IP资源池3)配置IP池4)IP资源池示例演示5)固定IP示例演示6)网络策略(NetworkPolicy)四、Kube-ip......
  • 安装k8s可视化UI界面dashboard
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od310安装k8s可视化UI界面dashboard10.1安装dasboard把安装kubernetes-dashboard......
  • kubeadm安装多master节点k8s高可用集群
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od39kubeadm安装多master节点k8s高可用集群9.1初始化实验环境K8S集群角色I......
  • k8s容器中通过Prometheus Operator部署Elasticsearch Exporter监控Elasticsearch
    写在前面在按照下面步骤操作之前,请先确保服务器已经部署k8s,prometheus以及prometheusoperator,关于这些环境的部署,可以自行查找相关资料安装部署,本文档便不在此赘述。关......