我有一个应用,我经常需要添加新域。 现在,每次添加或删除域时,我都需要添加或删除入口。
我想使它自动化。
我有一个ui,其中用户具有已注册域的列表,并且可以将域添加到应用程序。 因此,当用户进行设置时,我想自动更新该入口。
我要解决的方法是通过管理这些入口的服务帐户。 是否有最佳做法,或者已经有api的入口控制器?
答案 0 :(得分:1)
入口控制器无需为此暴露任何API,也不需要这样做。您将需要调用kubernetes REST API来更新入口资源。您可以使用多种语言提供的kubernetes客户端库来通过服务帐户或kubeconfig文件执行此操作。
您将需要使用“角色”和“角色绑定”来定义RBAC,以授权服务帐户或用于调用REST API的用户。
使用PUT或PATCH更改以下API中的主机
/apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses
以这种方式更新入口资源时,将通知更改通知入口控制器,因为入口控制器会监视入口资源中的任何更改。