小编Jac*_*cob的帖子

使用Jenkins部署Helm图表时出现“服务器找不到请求的资源(获取窗格)”错误

我正在尝试为示例Kubernetes集群部署部署我的Kubernetes Helm图表。我创建了一个示例Helm图表,并添加了Docker映像参考,并使用terminal命令部署了Helm图表helm install <my-chartname>。而且微服务可以成功访问而没有任何问题。

之后,我创建了一个Jenkins管道作业,并仅添加了一个包含部署步骤的阶段。我按照以下方式添加

pipeline 
{
    agent any
    stages 
        {
            stage ('helmchartinstall')
                {
                    steps
                    {
                        sh 'helm install spacestudychart'
                    }
                }
        }       
}
Run Code Online (Sandbox Code Playgroud)

我收到如下错误,

[Pipeline] { (helmchartinstall)
[Pipeline] sh
+ helm install spacestudychart
Error: the server could not find the requested resource (get pods)
Run Code Online (Sandbox Code Playgroud)

当我通过终端运行时,相同的命令正在工作。

更新资料

要将分er升级到最新版本,请helm init --upgrade在终端上运行命令。但是错误仍然存​​在。

“ helm version”的输出如下所示,

Client: &version.Version{SemVer:"v2.14.0", GitCommit:"05811b84a3f93603dd6c2fcfe57944dfa7ab7fd0", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.0", GitCommit:"05811b84a3f93603dd6c2fcfe57944dfa7ab7fd0", GitTreeState:"clean"}
Run Code Online (Sandbox Code Playgroud)

“ kubectl版本--short”的输出如下所示,

Client Version: v1.14.1
Server Version: v1.13.5
Run Code Online (Sandbox Code Playgroud)

当我运行命令“ kubectl --v = 5 get pods; …

jenkins kubernetes

6
推荐指数
1
解决办法
3246
查看次数

自由式作业与管道作业中的Jenkins管道脚本添加

目前,我正在尝试为我的微服务部署构建CI / CD管道。我创建了声明性管道脚本,包括在不同阶段进行存储库提取,构建,测试,Kubernetes部署等。而且我正在尝试触发提交后脚本,该脚本需要为每次对存储库的提交启动Jenkins作业。

当我尝试创建Jenkins职位时,我选择了New-> Free Style选项。但是没有可以添加管道脚本的区域。

当我选择New-> Pipeline时,我有空间添加管道脚本。但是我无法选择源代码管理来添加我的存储库检出链接和所有其他内容。

当我观察到时,我只看到自由样式的源代码管理选项。但是它没有添加我的管道脚本的区域。

在这里,我需要添加声明性管道脚本,还需要引用SVN源代码管理。而且我将脚本存储在Jenkins本身中。我没有使用Jenkinsfile(从SCM选项中轮询)。我该如何添加詹金斯的工作?我需要添加自由样式或管道吗?

svn jenkins jenkins-pipeline

6
推荐指数
1
解决办法
141
查看次数

尤里卡客户端在尤里卡服务器 UI 中以名称“未知”运行

我创建了一个 Eureka 服务器 Spring Boot 应用程序。它已正确加载。之后我试图创建一个尤里卡客户端。但它没有在尤里卡服务器 UI 中列出。我正在添加我的客户端应用程序详细信息。

我的主控制器类文件如下,

@SpringBootApplication
@EnableDiscoveryClient
public class ZEurekaClientServiceApplication {

public static void main(String[] args) {
    SpringApplication.run(ZEurekaClientServiceApplication.class, args);
}
}
Run Code Online (Sandbox Code Playgroud)

我的 pom.xml 包含 ,

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
Run Code Online (Sandbox Code Playgroud)

我的 application.properties 文件包含,

eureka.client.serviceUrl.defaultZone=http://localhost:8071/eureka
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
Run Code Online (Sandbox Code Playgroud)

当 It 客户端运行时,尤里卡服务器 UI 不显示它的名称。仅将 UNKNOWN 显示为应用程序。我在下面添加它的屏幕截图。在此处输入图片说明

我需要在尤里卡服务器 UI 中显示应用程序名称而不是“UNKNOWN”吗?是否有任何额外的设置来添加应用程序名称?

spring-boot netflix-eureka

4
推荐指数
1
解决办法
3652
查看次数

使用部署 YAML 文件从 Helm Chart 访问的 Dockerhub 注册表映像

我正在尝试使用 Jenkins、Kubernetes 和 Kubernetes Helm 为我的微服务实现 CI/CD 管道。在这里,我使用 Helm chart 打包 YAML 文件并部署到 Kubernetes 集群中。我现在正在学习 Helm chart 的实现和部署。学习的时候,在部署YAML文件中找到了镜像名称定义。

我有两个问题:

  1. 如果我们只定义镜像名称,那么它会自动从Docker Hub中拉取吗?或者我们是否需要在部署图表 YAML 文件中额外定义任何内容以进行拉取?
  2. Helm Tiller 如何与 Docker Hub 注册表通信?

kubernetes kubernetes-helm

4
推荐指数
1
解决办法
2103
查看次数

使用`helm init`初始化分er时找不到命令错误

我正在尝试使用带有Kubernetes Helm图表的Kubernetes集群来定义Kubernetes服务和部署。我使用以下命令在一台计算机上安装了Helm客户端,

sudo snap install helm --classic
Run Code Online (Sandbox Code Playgroud)

我访问了Kubernetes集群主节点并尝试运行helm init命令。但是当我跑步时我得到了错误,

helm: command not found
Run Code Online (Sandbox Code Playgroud)

当我检查Kubernetes集群安装时,kubectl命令正在正确运行。

对于“找不到命令”,我该如何解决Kubernetes Helm Tiller初始化问题?

kubernetes kubernetes-helm

4
推荐指数
1
解决办法
1082
查看次数

Docker守护程序未在Docker工具箱中运行

我使用war文件创建了一个示例微服务应用程序。之后,我安装了Docker工具箱。然后,我创建了示例Dockerfile,并尝试使用Docker工具箱快速入门终端构建映像。

我将目录更改为项目根目录,并运行以下命令:

docker build -t "dockerDemo" .
Run Code Online (Sandbox Code Playgroud)

并出现诸如Docker守护程序之类的错误未运行。

我还运行以下命令:

docker run hello-world
docker-machine ls
Run Code Online (Sandbox Code Playgroud)

我正在关注结果屏幕。

在此处输入图片说明

我现在刚开始使用容器和Docker概念。我该如何解决?

docker docker-toolbox

3
推荐指数
1
解决办法
5438
查看次数

使用Kubernetes kubeadm和minikube在VM中创建节点

我正在尝试使用同一台机器创建具有不同数量节点的Kubernetes集群。在这里,我想创建单独的VM,并需要在这些VM中创建节点。我目前正在探索针对这些任务的kubeadm和minikube。

在探索时,我有以下困惑:

  1. 我需要创建4个节点,每个节点都需要在不同的VM中创建。我可以使用kubeadm满足这些要求吗?
  2. 还发现Minikube用于创建单节点结构,也可以用于创建VM。kubeadm和minikube有什么区别?
  3. 如果我想在不同的VM中创建节点,那么在安装Kubernetes集群主服务器时应该使用哪个工具?
  4. 如果我使用的是VM,那么我可以在Ubuntu 16.04中直接安装VMware工作站/ virtualbox吗?
  5. 在AWS EC2中,他们已经将Ubuntu作为虚拟机。那么可以在ubuntu上安装VMware工作站吗?由于它是另一个VM上的VM。

kubernetes

3
推荐指数
1
解决办法
1665
查看次数

从远程机器上部署的 kubernetes 仪表板服务访问本地笔记本电脑时无法访问站点问题

当我尝试从本地笔记本电脑访问 Kubernetes 仪表板服务时,收到无法访问站点的消息。

程序如下:

我按照以下链接中的文档进行操作,

https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/

我在我的本地机器上创建了一个带有一个主节点和一个工作节点的集群。每台机器都是ubuntu 16.04。我安装了 kubectl 并从我的控制虚拟机访问这个集群,我在那里运行 Jenkins for ci/cd 管道。从这个控制虚拟机中,我按照文档中的说明绑定了集群角色并部署了 Kubernetes 仪表板。

我运行以下命令,通过使用 kuectl 命令(在集群外)从我的控制虚拟机部署默认仪表板服务:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml
Run Code Online (Sandbox Code Playgroud)

dashboard-adminuser.yaml使用以下内容创建了角色绑定 yaml ,

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kubernetes-dashboard
Run Code Online (Sandbox Code Playgroud)

并使用以下命令创建了它:

 kubectl apply -f dashboard-adminuser.yaml
Run Code Online (Sandbox Code Playgroud)

使用以下命令访问令牌:

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
Run Code Online (Sandbox Code Playgroud)

并运行以下命令来提供仪表板服务:

kubectl proxy
Run Code Online (Sandbox Code Playgroud)

当我运行显示“在 127.0.0.1:8001 上开始服务”的命令时。

我尝试通过将以下 …

dashboard kubernetes

3
推荐指数
1
解决办法
620
查看次数

Spring Cloud Project中的Docker容器化

我正在尝试使用弹簧和弹簧靴创建弹簧云微服务.我开发了一个Spring云Eureka服务器作为一个独立的弹簧启动项目.并为Zuul服务器创建了用于网关代理和路由的Spring启动项目.

  • 现在我有3个春季启动项目,如上所述.在这里,我将docker容器带入我的项目.所以我通过使用Fabric工具探索了基于pom.xml的容器化.
  • 那么当我部署我的微服务时,需要通过容器化来部署所有项目吗?那么云平台是否将所有微服务都分解为单独的容器?
  • 通过在单独的容器中部署我的所有微服务,云中是否存在任何问题,因为它们可以相互通信/呼叫?

任何人都可以帮助我澄清我对容器化和云部署我的Spring云微服务的困惑吗?

docker

2
推荐指数
1
解决办法
88
查看次数

在Helm chart / templates文件夹内部署多个Kubernetes服务

我正在使用Kubernetes舵图进行Kubernetes服务部署。我现在有不同的服务,称为x1,x2到x10。所以现在我在模板文件夹中创建了x1.yaml。并运行“ helm install ./mychart”。现在,我正在Kubernetes集群中进行部署。

我是否可以在模板文件夹中为我的所有Kubernetes服务添加.yaml文件(从x2.yaml到x10.yaml),并且可以使用1个图表将它们全部部署在一起?

我没有正确理解用于Kubernetes资源部署的Helm图表的层次结构。

kubernetes kubernetes-helm

1
推荐指数
1
解决办法
183
查看次数