k8s学习——安装istio之dns卡壳

我准备使用istio来替代原来的traefic网关和consul服务注册发现的方案,但在安装istio过程中遇到了一些问题,把解决的过程记录下来,便于今后遇到类似问题做个参考。

istio安装的中文文档地址:Istio Prelim 1.23 / 文档

参照Istio Prelim 1.23 / 入门 官网的安装方法,首先下载istioctl,然后使用命令istioctl install以默认配置安装,正常部署会安装这两个pod

NAME                                   READY   STATUS    RESTARTS   AGE
istio-ingressgateway-94974fc7f-cxjwz   1/1     Running   0          5d4h
istiod-54785969-6rfzh                  1/1     Running   0          5d4h

我下载的istioctl是1.22.0这个版本,在安装过程中遇到的第一个问题:镜像下拉不下来。


可以通过
kubectl get events -n istio-system
kubectl describe pod istio-ingressgateway-94974fc7f-cxjwz -n istio-system 
kubectl describe pod istiod-54785969-6rfzh -n istio-system 
来查看问题原因。这里涉及下拉的镜像有两个:
pilot
proxyv2

在tar -xzvf istio-1.22.0-linux-amd64.tar.gz 解压后,cd到解压后的目录中查看manifest.yaml文件,可以看到其用的镜像仓库地址是docker.io/istio。这里有两种解决方案:

1、添加指定仓库的参数执行命令

bin/istioctl install --set hub=docker.m.daocloud.io/istio

2、到github下载相应版本的pilot和proxyv2打包文件通过docker本地安装,具体操作如下

到https://gcsweb.istio.io/gcs/istio-release/releases/1.22.0/docker/网址下载
pilot.tar.gz和proxyv2.tar.gz然后执行命令
sudo docker load -i ./pilot.tar.gz
sudo docker load -i ./proxyv2.tar.gz
sudo docker tag pilot:1.22.0 core.harbor.shell.com:443/istio/pilot:1.22.0
sudo docker tag proxyv2:1.22.0 core.harbor.shell.com:443/istio/proxyv2:1.22.0
sudo docker push core.harbor.shell.com:443/istio/pilot:1.22.0
sudo docker push core.harbor.shell.com:443/istio/proxyv2:1.22.0
将下拉不下来的两个镜像上传到自建的仓库中,然后在将下载仓库修改为本地仓库
bin/istioctl install --set hub=core.harbor.shell.com:443/istio

镜像下拉问题解决后,遇到的第二个问题是 istio-ingressgateway启动不起来。

报错类似这种

warn	sds	failed to warm certificate: failed to generate workload certificate: create certificate: rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: dial tcp: lookup istiod.istio-system.svc: i/o timeout"

一般这种问题属于dns解析的事,根据官网的问题排除步骤可参考如下。

调试 DNS 问题 | Kubernetes

后来重启了 kube-system 下的两个coredns 的pod问题解决了

第三个问题istio-system命名空间下载svc中的istio-ingressgateway一直处于pending状态。

找了很多文档,后来在官网的Istio Prelim 1.23 / 入口网关中找到了问题的答案。

需要通过kubectl edit 将LoadBalancer模式改为NodePort模式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/49703.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Perl中的时间机器:探索文件系统同步机制

Perl中的时间机器:探索文件系统同步机制 在Perl编程中,文件系统同步是一个重要的功能,它允许开发者在不同时间点对文件或目录的状态进行备份、更新和同步。Perl提供了多种内置的模块和函数,使得文件系统同步变得简单而高效。本文…

Mysql9安装

目录 一、下载mysql 二、安装 三、配置mysql环境变量 四、mysql初始化和启动 1.以管理员身份运行cmd 2.cd到mysql的安装目录 3.初始化mysql的数据库 4.为Windows系统安装MySQL服务 5.查看一下名为mysql的服务: 6.启动MySQL服务 五、附录 1.系统变量还在&…

CentOS 8中 更新或下载时报错:为仓库 ‘appstream‘ 下载元数据失败 : Cannot prepare internal mirrorlist

一、错误重现 CentOS Stream 8 - AppStream 0.0 B/s | 0 B 00:00 Errors during downloading metadata for repository appstream: - Curl error (6): Couldnt resolve host name for http://mirrorlis…

Python 之 os、open、json、pickle 模块的“疯狂”探险记

1.open函数的使用 Python 中的 open() 函数是处理文件的标准方法。它允许你打开一个文件,并对其进行读取、写入或追加操作 open(file,mode,encoding)函数的格式:file:文件路径 mode:打开方式(读: r写&…

昇思25天学习打卡营第18天|生成式-GAN图像生成

打卡 目录 打卡 GAN 博弈函数 博弈过程 GAN 案例 数据集 数据加载与可视化 隐码构造 模型构建 生成器 判别器 损失函数和优化器 模型训练 输出展示-1w张训练样本 输出展示-6w张训练样本 输出展示-6w张-100 epoch 效果展示 部分展示如图-12epoch-6w张 部分展…

Windows系统上Git详细图文安装及使用教程

Git 是一种高效、分布式的版本控制系统,用于代码的跟踪、分支管理和协同工作,支持快速提交、合并和回滚操作。它是开发者工具箱中必不可少的工具之一,广泛应用于软件开发和其他需要版本控制的领域。 1. Git的安装 1.1 Git下载 可以通过以下…

WEB渗透信息收集篇--IP和端口信息

WEB渗透信息收集篇--域名信息-CSDN博客 WEB渗透信息收集篇--网站架构和指纹识别-CSDN博客 ​​​​​​​​​​​​​​WEB渗透信息收集篇--人员信息-CSDN博客​​​​​​​ WEB渗透信息收集篇--其他信息-CSDN博客 一、ASN ASN Tool - MxToolBox ASN通常指的是"自…

Qt SQLite数据库学习总结

到此为止,就使用Qt进行SQLite数据库的操作,做一次总结 1. Qt中数据库操作的相关概念和类 Qt 数据库编程相关基本概念https://blog.csdn.net/castlooo/article/details/140497177 2.表的只读查询--QSqlQueryModel QSqlQueryModel单表查询的使用总结htt…

JDK、JRE、JVM之间的关系

JDK是Java的开发环境,用JDK开发了JAVA程序后,通过JDK中的编译程序(javac)将java文件编译成字节码文件,作为运行环境的JRE,字节码文件在JRE上运行,作为虚拟机的JVM解析这些字节码,映射…

微信小程序--点击按钮可新增可删除

案例: html: <view ><view ><view class="guzhang" wx:for="{{inputs}}" wx:key="id" wx:for-item="item" wx:for-index="index"><view class="huanhang"><view class="fontBo…

员工网络监控软件:把控员工网络活动的标尺

在竞争激烈的漩涡之中&#xff0c;企业如同一只不断旋转的陀螺&#xff0c;努力保持着自身的平衡和稳定&#xff0c;而员工的网络活动则是那无形却强大的力量&#xff0c;时刻影响着企业的运转。员工网络监控软件仿佛一根坚固无比的轴心&#xff0c;以其精准的标尺帮助企业实现…

一篇了解Microsoft SEAL

目录 引言 核心概念 同态加密 微软SEAL 入门 可选依赖项 示例 使用EVA进行CKKS编程 手动构建Microsoft SEAL 构建C组件 要求 构建微软SEAL 安装微软SEAL 在Windows上构建和安装(不做重点介绍) 为Android和iOS构建(不做重点介绍) 为WebAssembly构建(不做重点介绍…

Mindspore框架循环神经网络RNN模型实现情感分类|(六)模型加载和推理(情感分类模型资源下载)

Mindspore框架循环神经网络RNN模型实现情感分类 Mindspore框架循环神经网络RNN模型实现情感分类|&#xff08;一&#xff09;IMDB影评数据集准备 Mindspore框架循环神经网络RNN模型实现情感分类|&#xff08;二&#xff09;预训练词向量 Mindspore框架循环神经网络RNN模型实现…

顶级 Vue 管理仪表板和模板

Vue.js 是当今繁忙的 Web 开发领域中最受欢迎的 JavaScript 框架之一&#xff0c;用于创建交互式动态用户界面。Vue.js 的组件反应性及其流畅的数据绑定使其在管理仪表板设计方面占据了主导地位。 本文讨论了一些领先的 ​​Vue 管理员仪表板&#xff0c;它们可以节省您制作 We…

计算机网络之http和https的区别(外加http详解)

http协议和各种协议之间的关系 1、DNS解析&#xff0c;获取到访问服务器的IP 2、HTTP生成请求报文请求&#xff0c;请求访问页面资源 3、TCP协议将报文切割成一份一份报文段后&#xff0c;以可靠的方式进行传输 4、IP协议边搜索边中转&#xff0c;将这些数据包传输给接受方…

k8s 公共服务

修改named.conf。修改第13行和第21行 下面是 named.rfc1912 修改位置&#xff0c;在最后 所以用cp -p 复制文件&#xff0c;保留权限 nslookup 回车&#xff0c;server是看哪个dns 在起作用 dns服务器要配置给所有公共服务节点和 k8s 节点 就在网络文件加个DNS2就行了&…

CSS3雷达扫描效果

CSS3雷达扫描效果https://www.bootstrapmb.com/item/14840 要创建一个CSS3的雷达扫描效果&#xff0c;我们可以使用CSS的动画&#xff08;keyframes&#xff09;和transform属性。以下是一个简单的示例&#xff0c;展示了如何创建一个类似雷达扫描的动画效果&#xff1a; HTM…

【前端】JavaScript入门及实战91-95

文章目录 91 DOM92 事件93 文档的加载94 DOM查询(1)95 图片切换的练习 91 DOM <!DOCTYPE html> <html> <head> <title></title> <meta charset"utf-8"><style> </style> </head> <body><button id&…

docker笔记4-镜像理解

docker笔记4-镜像理解 一、镜像原理之联合文件系统二、镜像原理之分层理解三、commit镜像 一、镜像原理之联合文件系统 UnionFS&#xff08;联合文件系统&#xff09;: Union文件系统&#xff08;UnionFS&#xff09;是一种分层、轻量级并且高性能的文件系统&#xff0c;它支持…

vue2使用univerjs

1、univerjs Univer 提供了一个全面的企业级文档与数据协同的解决方案&#xff0c;支持电子表格、文本文档和演示幻灯片三大核心文档类型。通过灵活的 API 和插件机制&#xff0c;开发者可以在 Univer 的基础上进行个性化功能的定制和扩展&#xff0c;以适应不同用户在不同场景…