我在Jenkins的Kubernetes部署一直失败

vq8itlhq  于 2023-03-17  发布在  Jenkins
关注(0)|答案(1)|浏览(296)

我正在尝试在我的AWS EKS群集中部署流行的袜子店应用程序。我已经成功创建了这个群集,但是每当我尝试部署到这个群集中时,我总是得到这个错误。

Error from server (Forbidden): <html><head><meta http-equiv='refresh' content='1;url=/login?from=%2Fswagger-2.0.0.pb-v1%3Ftimeout%3D32s'/><script>window.location.replace('/login?from=%2Fswagger-2.0.0.pb-v1%3Ftimeout%3D32s');</script></head><body style='background-color:white; color:white;'>

Authentication required
<!--
-->

</body></html>

我已经将jenkins用户添加到我的sudo组中,但仍然收到相同的错误。此外,我还尝试直接在ec2示例上运行此命令

kubectl create -f complete-demo.yaml

它部署了。我得到了什么错误,不断给出这个错误。
这是我的Jenkins内容

#!/usr/bin/env groovy
pipeline {
    agent any
    environment {
        AWS_ACCESS_KEY_ID = credentials('AWS_ACCESS_KEY_ID')
        AWS_SECRET_ACCESS_KEY = credentials('AWS_SECRET_ACCESS_KEY')
        AWS_DEFAULT_REGION = "us-east-1"
    }
    stages {
        stage("Deploy to EKS") {
            steps {
                script {
                    dir('deploy/kubernetes') {
                        sh "kubectl create -f complete-demo.yaml"

                    }
                }
            }
        }
    }
}

这是我正在部署的github配置文件。
https://github.com/Okeybukks/Altschool-Final-Cloud-Project

5f0d552i

5f0d552i1#

由于您正在使用EC2示例和一些AWS凭据,请确保与这些凭据连接的用户列在kube-system命名空间中的aws-auth配置Map中。
如果是,那么您可能应该在应用manifest之前运行EKS登录命令,以便能够生成正确的config文件,该文件不在Jenkins工作区中。

#!/usr/bin/env groovy
pipeline {
    agent any
    environment {
        AWS_ACCESS_KEY_ID = credentials('AWS_ACCESS_KEY_ID')
        AWS_SECRET_ACCESS_KEY = credentials('AWS_SECRET_ACCESS_KEY')
        AWS_DEFAULT_REGION = "us-east-1"
    }
    stages {
        stage("Deploy to EKS") {
            steps {
                script {
                    dir('deploy/kubernetes') {
                        sh """
                           aws eks update-kubeconfig --name my_cluster_name
                           kubectl create -f complete-demo.yaml
                        """
                    }
                }
            }
        }
    }
}

有关登录EKS的信息,请参阅this文档。

相关问题