问题描述
我正在尝试使用使用kubernetes client library的C#辅助服务在AKS集群上执行一些操作。目前,我的服务正在集群中的单个Pod上运行。当我尝试执行CreateSecret
操作时,出现 403异常。
我尝试获取一个承载令牌,并用它来设置KubeConfig的AccessToken,但这也不起作用。
我想知道是否可以通过我的Pod访问kubeconfig(我想它只能在主节点上使用吗?)还是可以指向其他配置位置?
解决方法
我建议使用服务帐户,而不要使用<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="TestSuite" >
<test name="testGuru" thread-count="4" parallel="methods">
<classes>
<class name="selerixautomation.SecondNGTest">
</class>
</classes>
</test>
</suite>
,因为您正在集群中将应用程序作为pod运行。
kubeconfg
以上代码将在部署pod的名称空间中使用var config = KubernetesClientConfiguration.InClusterConfig()
服务帐户。您将收到一个default
错误,并解决了需要定义RBAC来向服务帐户提供授权的问题。以下是Forbidden
和Role
,假设您使用RoleBinding
命名空间来部署Pod。
default