istio pod不启动及访问报RBAC错误问题解决

istio pod不启动问题解决

在kubernetes集群中安装istio之后,在创建的depoyment中已经使用了注入注解sidecar.istio.io/inject: 'true’配置,但是istio pod不创建,代码示例如下

kind: Deployment
apiVersion: apps/v1
metadata:name: name-anamespace: namespace-alabels:app: xxxxapp.kubernetes.io/name: xxxapp.kubernetes.io/version: v1version: v1annotations:deployment.kubernetes.io/revision: '5'servicemesh.kubesphere.io/enabled: 'true'
spec:replicas: 1selector:matchLabels:app: xxxxapp.kubernetes.io/name: xxxapp.kubernetes.io/version: v1version: v1template:metadata:creationTimestamp: nulllabels:app: xxxxapp.kubernetes.io/name: xxxapp.kubernetes.io/version: v1version: v1annotations:cni.projectcalico.org/ipv4pools: '["default-ipv4-ippool"]'kubesphere.io/restartedAt: '2024-03-01T05:44:45.617Z'sidecar.istio.io/inject: 'true'spec:containers:- name: xxx-v1image: image-a:0.0.1ports:- name: http-8080containerPort: 8080protocol: TCPresources:limits:cpu: '2'memory: 4Ginvidia.com/gpu: '0'requests:nvidia.com/gpu: '0'terminationMessagePath: /dev/termination-logterminationMessagePolicy: FileimagePullPolicy: AlwaysrestartPolicy: AlwaysterminationGracePeriodSeconds: 30dnsPolicy: ClusterFirstserviceAccountName: defaultserviceAccount: defaultsecurityContext: {}imagePullSecrets:- name: harbor-secretschedulerName: default-schedulerstrategy:type: RollingUpdaterollingUpdate:maxUnavailable: 25%maxSurge: 25%revisionHistoryLimit: 10progressDeadlineSeconds: 600

经排查对命名空间namespace-a需要设置注解属性为enabled.
查看命令

kubectl get namespace -L istio-injection

查看各个命名空间是否镜像istio-injection注解的设置。

使用一下命令对命名空间属性进行配置

kubectl label namespace namespace-a istio-injection=enabled

RBAC: access denied 问题解决

部分参考 https://cloud.tencent.com/document/product/1261/62949

经过以上修改后,istio pod可以自动创建起来,但是访问报错 RBAC: access denied。
这里要查看授权策略,授权策略用于配置网格、namespace、服务/Workload 范围的访问管理规则。您可以通过 AuthorizationPolicy CRD 配置授权规则。AuthorizationPolicy 主要包含以下部分:

  • selector:指定策略的生效范围。
  • action:指定该策略是 ALLOW 策略还是 DENY 策略。
  • rules:授权规则主体,由from,to,where 3 部分构成。
    • from:指定请求的来源特征。
    • to:指定请求的操作特征。
    • when:指定授权规则的生效条件。

当有 AuthorizationPolicy 的 ALLOW 和 DENY 策略应用于同一范围时,DNEY 策略的优先级高于 ALLOW 策略,生效的规则如下:

  1. 如请求匹配任何一条 DENY 策略,则拒绝该请求的访问。
  2. 如该范围没有任何 ALLOW 策略,则允许该请求的访问。
  3. 如当前该范围存在 ALLOW 策略,且请求匹配到了任何一条 ALLOW 策略,则允许该请求的访问。
  4. 拒绝该请求的访问。
    在这里插入图片描述
    执行命令
    kubectl get AuthorizationPolicy -A
    查看所有的授权策略,发现在istio-system空间下,有一个global-deny-all的策略。使用以下命令删除。
    kubectl delete AuthorizationPolicy -n istio-system global-deny-all

问题解决。

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

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

相关文章

力扣SQL50 大的国家 查询

Problem: 595. 大的国家 Code select name,population,area from World where area > 3000000 or population > 25000000;

Sora引发安全新挑战

文章目录 前言一、如何看待Sora二、Sora加剧“深度伪造”忧虑三、Sora无法区分对错四、滥用导致的安全危机五、Sora面临的安全挑战总结前言 今年2月,美国人工智能巨头企业OpenAI再推行业爆款Sora,将之前ChatGPT以图文为主的生成式内容全面扩大到视频领域,引发了全球热议,这…

【Leetcode每日一题】二分查找 - LCR 173. 点名(难度⭐)(24)

1. 题目解析 Leetcode题目链接:LCR 173. 点名 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 核心在于找到题目所给的连续数组中缺失的数字即可。 2.算法原理 在这个升序的数组中,我们发现: …

LeetCode # 1207. 独一无二的出现次数

1207. 独一无二的出现次数 题目 给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。 如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。 示例 1: 输入:arr [1,2,2,1,1,3] 输出&#xff1…

Java中Jenkins的应用简介

目录 Java中Jenkins的应用什么是Jenkins?Jenkins在Java开发中的应用示例代码和解决方案 Java中Jenkins的应用 Jenkins是一个流行的开源自动化服务器,可用于持续集成和持续交付。在Java开发中,Jenkins扮演着重要的角色,可以帮助团…

Fastadmin下拉选择菜单

下拉菜单效果图如下所示 对应的表字段为 cid int(11) unsigned NOT NULL DEFAULT ‘1’ COMMENT ‘分类ID 1 新手 2VIP 3基金产品’ 步骤如下: 一、lang/zh-cn 中找到对应的文件,添加 配置 二、Model 中添加方法 三、控制器中添加 四、add.html中 …

机器学习高手之路:发现TensorFlow学习网站的无限可能!

介绍:TensorFlow是一个由Google团队开发的端到端开源机器学习平台,专为数值计算和机器学习而设计。以下是对TensorFlow的详细介绍: 开发背景与历史:TensorFlow起源于谷歌的神经网络算法库DistBelief。它被设计成一个灵活的深度学习…

代码随想录Day20 | Leetcode77 组合

题目 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按 任何顺序 返回答案。示例 1: 输入:n 4, k 2 输出: [[2,4],[3,4],[2,3],[1,2],[1,3],[1,4], ]示例 2: 输入:n 1, k 1 …

go并发模式之----工作池/协程池模式

常见模式之四:工作池/协程池模式 定义 顾名思义,就是有固定数量的工人(协程),去执行批量的任务 使用场景 适用于需要限制并发执行任务数量的情况 创建一个固定大小的 goroutine 池,将任务分发给池中的 g…

顺序表基础

⽬录 1. 课前准备 2. 顺序表概念及结构 3. 顺序表分类 4. 实现动态顺序表 正⽂开始 课前预备 1. 课程⽬标 C语⾔语法基础到数据结构与算法,前⾯已经掌握并具备了扎实的C语⾔基础,为什么要学习数据结构 课程?⸺通讯录项⽬ 2. 需要…

小程序分账方案:实现商户分账的简便与灵活

随着移动支付的普及和小程序的快速发展,越来越多的商家选择在微信小程序上开展业务。然而,对于一些有多个分账方的商户而言,如何实现快速、准确和灵活的资金分账成为了一个挑战。本文将介绍一种高效的小程序分账方案,帮助商户轻松…

C++ STL 优先队列(priority_queue)

1.优先队列是一种极其特殊的队列,他与标准的队列使用线性结构进行计算不同,优先队列的底层是以散列的状态(非线性)表现的,他与标准的队列有如下的区别,标准的队列遵从严格的先进先出,优先队列并…

负载均衡Ribbon和LoadBalancer

Ribbon和LoadBalancer都是用于实现负载均衡的工具,但它们在应用场景和实现方式上有所不同。 Ribbon 是一个客户端负载均衡器,它是一个Java库,可以在客户端应用程序中使用。通过在客户端应用程序中维护服务实例列表,并使用负载均衡…

修改docker默认存储位置【高版本的docker】

一、修改docker默认存储位置 1、停服务 systemctl stop docker 2、修改/etc/docker/daemon.json添加新的dcoker路径 如"data-root": "/mnt/hdd1/docker" 3、保存后重启服务:systemctl restart docker 二、其他服务的命令 systemctl disab…

AcWing 787. 归并排序 解题思路及代码

先贴个题目&#xff1a; 以及原题链接&#xff1a;787. 归并排序 - AcWing题库https://www.acwing.com/problem/content/789/纯板子题&#xff0c;先贴代码吧&#xff0c;根据代码讲思路&#xff1a; #include <iostream> using namespace std;const int N 1e5 10; in…

【Maven】Maven 基础教程(三):build、profile

《Maven 基础教程》系列&#xff0c;包含以下 3 篇文章&#xff1a; Maven 基础教程&#xff08;一&#xff09;&#xff1a;基础介绍、开发环境配置Maven 基础教程&#xff08;二&#xff09;&#xff1a;Maven 的使用Maven 基础教程&#xff08;三&#xff09;&#xff1a;b…

修饰符【C#】

分为四部分&#xff1a;属性修饰符&#xff0c;存取修饰符&#xff0c;类修饰符和成员修饰符。 属性修饰符&#xff1a; [Serializable]&#xff1a;按值将对象封送到远程服务器。在按值封送对象时&#xff0c;就会创建一个该对象的副本&#xff0c;并将其序列化传送到服务器…

TCP/UDP,HTTP、HTTPS存在什么风险会影响到网络安全吗

近年来&#xff0c;随着网络技术的飞速发展&#xff0c;互联网影响人们的方方面面&#xff0c;我们平时也接触到许多以前从未听过的东西&#xff0c;今天德迅云安全就来分享下一些互联网安全知识&#xff0c;讲解一些关于常看到的关于IP, TCP/UDP&#xff0c;HTTP、HTTPS这些名…

QT之液晶电子时钟

根据qt的<QLDNumber>做了一个qt液晶电子时钟. 结果 实时显示当前时间,左键可以拖动时钟在屏幕的位置,右键点击关闭显示. 实现过程 新建一个class文件,让这个文件的父类是QLCDNumber 相关功能变量定义和函数实现 .c文件代码 这里需要注意的一点是event->button是获取的…

SpringMVC自定义视图解析器

/** * 使用View接口完成请求转发|重定向 * 解释: * SpringMVC的官方&#xff0c;提供了一个叫做View的接口&#xff0c;告诉开发人员 * DispatcherServlet底层会调用View接口的实例化对象中的逻辑方法 * 来完成对应的请求转发和重定向。 * 使用: * 1. 单元方法的返回值为View接…