zoukankan      html  css  js  c++  java
  • spring cloud kubernetes之serviceaccount permisson报错

    spring boot项目引用spring-cloud-starter-kubernetes

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-kubernetes</artifactId>
                <version>1.0.0.RELEASE</version>
            </dependency>

    在访问this.discoveryClient.getServices()时,报错:Are you missing serviceaccount permission? 如下图:

    查看报错详细信息:Forbidden! configured service account doesn't have access. Service account may have been revoked pod *** is forbidden: User ""  cannt get pods in the namespace "default"

    意思就是说这个kubernetes 的这个serviceaccount没有权限,怎么给serviceaccount赋权限呢?
    这个叫涉及到了kubernetes这个clusterrolebing了,通过clusterrolebing 把serviceaccount和cluseterRole绑定,clusterRole里面和和具体来定义权限,不过这个工作应该交交运维来做,不属于开发的范围,

    我们只需要在deployment的yaml中指定serviceaccount即可,如没有指定serviceaccount则是default:default,指的是default空间下的default这个serviceaccount. 

    注意serviceaccount与container同级。

    参考:https://stackoverflow.com/questions/47973570/kubernetes-log-user-systemserviceaccountdefaultdefault-cannot-get-services

  • 相关阅读:
    UrlRewriter
    PortalBasic Web 应用开发框架
    首页静态化和定时执行
    细谈在C#中读写Excel系列文章之四
    Ubuntu安装SVN及SvnManager
    Select语句导致瓶颈
    策略模式
    抽象工厂
    递归优化之快速排序
    从安装git开始,一步一步把程序发布到AppHarbor
  • 原文地址:https://www.cnblogs.com/hankuikui/p/10488515.html
Copyright © 2011-2022 走看看