标签: rancher

Rancher与其他容器编排之间的区别

我在牧场官方网页上看过

Rancher是一个开源软件平台,使组织能够在生产中运行容器.使用Rancher,组织不再需要使用一组独特的开源技术从头开始构建容器服务平台.Rancher提供管理生产中容器所需的整个软件堆栈.

基于此描述,我认为Rancher是一个像容器编排docker-compose.但正如我在同一页上读到的那样:

许多用户选择使用容器编排和调度框架来运行容器化应用程序.Rancher包括今天所有流行的容器编排和调度框架的分发,包括Docker Swarm,Kubernetes和Mesos.

这一段让我觉得Rancher不是一个容器编排,而是控制那些东西的东西.请告诉我Rancher和其他容器编排有什么区别.

orchestration docker docker-compose docker-swarm rancher

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

docker-compose 与 rancher-compose

我现在正在构建包含所有容器化服务的服务器,为此我正在使用 rancher 平台。在这里我有一个选择:更喜欢使用 docker-compose.yml 或 rancher-compose.yml 来部署包含所有服务的服务器。那么这些文件之间有什么区别呢?(很高兴看到列出的每一项的优点和缺点)

docker-compose rancher

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

卷“ mongo”的MountVolume.SetUp失败:hostPath类型检查失败:/ mongo / data不是目录

我正在尝试配置hostPath以启动Mongodb pod。

我只安装了一个rancher最新稳定版本的kubernetes v1.8.5的一个节点。

我有创建文件夹,/mongo/data并允许所有用户使用所有权限。 在此处输入图片说明

我可以在没有sudo的情况下与docker完美运行docker镜像:

docker run --name some-mongo -v /mongo/data:/data/db mongo:3.2.1

但是当我启动kubernetes时:

sudo kubectl create -f mongodb.yml

我懂了 MountVolume.SetUp failed for volume "mongo" : hostPath type check failed: /mongo/data is not a directory

这是mongodb.yml:

apiVersion: v1
kind: Pod
metadata:
  name: test-pd
spec:
  containers:
  - image: mongo:3.2.1
    name: test-container
    volumeMounts:
    - mountPath: /data/db
      name: mongo
  volumes:
  - name: mongo
    hostPath:
      # directory location on host
      path: /mongo/data
      # this field is optional
      type: Directory
Run Code Online (Sandbox Code Playgroud)

知道我应该在哪里寻找吗?

docker kubernetes rancher

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

Mongorestore 似乎内存不足并杀死了 mongo 进程

在当前设置中,有两个 Mongo Docker 容器,在主机 A 和 B 上运行,Mongo 版本为 3.4,并在副本集中运行。我想将它们升级到 3.6 并增加一个成员,以便容器可以在主机 A、B 和 C 上运行。容器有 8GB 内存限制并且没有分配交换(当前),并且在Rancher 中进行管理。所以我的计划是启动三个新容器,为它们初始化一个副本集,从 3.4 容器中进行转储,然后将其恢复为新的副本集 master。

转储很顺利,它的大小约为 16GB。当我尝试将其恢复到新的 3.6 master 时,恢复开始正常,但是在恢复了大约 5GB 的数据后,mongo 进程似乎被 OS/Rancher 杀死,而容器本身没有重新启动,MongoDB 进程只是崩溃并重新加载自己。如果我再次运行 mongorestore 到同一个数据库,它会说所有已经插入的条目的唯一键错误,然后从它停止的地方继续,只在 5GB 左右后再次执行相同的操作。所以看起来 mongorestore 将它恢复的所有条目加载到内存中。

所以我必须为此找到一些解决方案,并且:

  1. 每次崩溃时,只需运行 mongorestore 命令,以便它从停止的地方继续。它可能应该有效,但我觉得这样做有点不安。
  2. 一次恢复数据库一个集合,但最大的集合大于5GB,因此它也无法正常工作。
  3. 将交换或物理内存(临时)添加到容器中,以便在进程用完物理内存后该进程不会被终止。
  4. 别的东西,希望有更好的解决方案?

mongodb mongorestore docker rancher mongodb-3.6

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

如何在 Rancher 中启用挂载传播 - Kubernetes 功能门?

如何在 Rancher 2.0 中为我的集群启用功能门?我需要启用--feature-gates MountPropagation=true. 这将使我能够使用 StorageOS、CephFS 等存储解决方案

这里有两个用例:

  1. 如果 Rancher 已经设置并正在运行?
  2. 如果我从头开始设置集群?

kubernetes rancher rke

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

TLS握手在负载平衡系统中如何工作?

我们正在使用rancher docker编排工具:它正在使用HAProxy启用负载平衡。我想知道如果建立与服务的新HTTPS连接,如何处理hanshake。

是在客户端与负载均衡器(牧场主/ HAProxy)之间完成握手,还是负载均衡器仅将HTTPS请求转发到后端服务?

ssl load-balancing haproxy rancher

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

Rancher - 如何公开我的服务?

我有一个正在运行的 Rancher 设置,如下所示:

  • 主机(运行牧场主/牧场主容器)在公共 IP 上;
  • 无法从 Internet 访问的专用网络 (10.1.1.0/24) 中的节点。

我的目标是使用 Rancher Load Balancing 或任何类似的东西来为 Web 应用程序提供服务。为此,我执行了以下步骤:

  • 在将端口 80/tcp 映射为名为“web-app”的 NodePort(侦听端口是随机的)的 3 个 pod 上使用“rancher/hello-world”映像部署工作负载;
  • 在相同的命名空间中添加名为“hello”的 Ingress,选择“自动生成.xip.io主机名”并将路由“/”添加到端口 80 上的“web-app”。

这适用于本地网络,因为我得到了一个像http://hello.gabriel-milan.10.1.1.14.xip.io/这样的地址,它将解析为 10.1.1.14,这是本地的。

我想为我的一个公共 IP 公开此服务。我怎样才能做到这一点?

load-balancing kubernetes rancher kubernetes-ingress rke

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

Rancher helm 图表,找不到秘密 bootstrap-secret

所以我尝试在我的 K3S 集群上部署 rancher。
我使用文档和 helm 安装了它:Rancher 文档 当我使用负载均衡器进行访问时。我找不到插入设置的秘密。

他们描述了以下获取令牌的命令:

kubectl get secret --namespace cattle-system bootstrap-secret -o go-template='{{.data.bootstrapPassword|base64decode}}{{ "\n" }}'
Run Code Online (Sandbox Code Playgroud)

当我运行这个时,我收到以下错误

Error from server (NotFound): secrets "bootstrap-secret" not found
Run Code Online (Sandbox Code Playgroud)

而且我在命名空间牛系统中找不到引导程序秘密。
那么有人可以帮我看看我需要去哪里吗?

rancher kubectl kubernetes-helm k3s helm3

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

使用Rancher OS运行docker-compose

我正在尝试与aws rancher os。我想使用相同的rancher OS创建并运行docker-compose文件。当我尝试使用Docker-compose up命令时,出现错误``无法识别的docker-compose。

请任何人帮我

amazon-web-services docker-compose rancher

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

缺少容器属性

我正在 ECS 集群中使用支持 RancherOS ECS 的 AMI v1.0.4 运行 EC2 实例。

实例加入集群,但 ECS 任务无法启动,因为容器实例缺少任务所需的属性。

无法启动的 ECS 任务具有 IAM 角色并需要com.amazonaws.ecs.capability.task-iam-role属性。检查容器实例具有哪些属性后(使用 cli aws ecs describe-container-instances),可以看到缺少这个必需的属性。

当我从任务中删除 IAM 角色时,它开始正常。

当我使用 Amazon ECS 优化的 AMI 运行实例时,一切正常。

我遵循官方 RancherOS ECS 指南,包括验证 ECS 容器实例 IAM 角色,但没有成功。

amazon-ec2 amazon-web-services amazon-ecs rancher

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