小编tot*_*oto的帖子

从ansible文件结果中提取文件名

我正在尝试使用Ansible find命令的结果,它返回它在特定文件夹上找到的文件列表,问题是,当我迭代结果时,我没有文件名,我只有他们的完整路径(包括名称),是否有一种简单的方法可以使用下面的结果项在第二个命令中提供file_name,如下所示?

- name: get files
  find:
    paths: /home/me
    file_type: "file"
  register: find_result

- name: Execute docker secret create
  shell: docker secret create <file_name> {{ item.path }}
  run_once: true
  with_items: "{{ find_result.files }}"
Run Code Online (Sandbox Code Playgroud)

regex jenkins ansible

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

缩小规模后从 Statefulset 中删除 Kubernetes 持久卷

我将有状态集扩展到 4,当缩小到 1 时,我发现仍然有 4 个持久卷,索引从 0 到 3。

我还看到它们的状态都是Bound 我想这是因为我将它用作有状态集,所以它不会在缩小规模后删除卷。

我尝试手动删除其中之一(索引为 2 的那个),因为我确信它会释放我的卷,所以我使用了:

kubectl delete persistentvolume <volume>
Run Code Online (Sandbox Code Playgroud)

好吧,这没有帮助,它只是让这个卷永远处于终止状态......:/

我现在不知道如何删除这个和所有其他未使用的卷。

这是有状态集 yaml 中的卷配置。

  volumeClaimTemplates:
    - metadata:
        name: data
      spec:
        accessModes: ["ReadWriteOnce"]
        storageClassName: "default"
        resources:
          requests:
            storage: 7Gi
Run Code Online (Sandbox Code Playgroud)

如果我跑

kubectl get pvc --all-namespaces
Run Code Online (Sandbox Code Playgroud)

我明白了

NAMESPACE    NAME                      STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
default      data-0         Bound    pvc-23af1aec-e385-4778-b0b0-56f1d1dfdfee   7Gi        RWO            default        4h5m
default      data-1         Bound    pvc-34625107-1352-4715-b12c-2fc6ff22ed08   7Gi        RWO            default        4h4m
default      data-2         Bound    pvc-15dbdb53-d951-465d-b9c3-ebadfcc3c725   7Gi        RWO            default        4h3m
default      data-3         Bound …
Run Code Online (Sandbox Code Playgroud)

containers kubernetes persistent-volumes persistent-volume-claims

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

在 Kafka-Connect 中自动重新连接失败的任务

我正在使用带有 Kafka-connect 的 mongo-source 插件。我检查了任务状态,它正在运行并监听 mongo 集合。

我手动停止了 mongod 服务并等待了大约 1 分钟,然后我再次启动它。

我检查了源任务,看看是否有任何东西会自行修复,30 分钟后似乎没有任何效果。

只有在重新启动连接器后,它才再次开始工作。

由于 mongo-source 没有设置超时时重试+退避的选项,我搜索了一个适合简单场景的配置:使用 Kafka-connect 配置在 X 时间后重启失败的任务。找不到任何.. :/ 我可以用一个简单的脚本来做到这一点,但是 Kafka-connect 中必须有一些东西来管理失败的任务。甚至在 mongo-source 中……我不希望它在 1 分钟后就失败得这么快……:/

apache-kafka apache-kafka-connect mongodb-kafka-connector

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

winsows 错误“最重要的位..”的 Gremlin 控制台

似乎 Gremlin 控制台不适用于 Windows:我下载了最新的 Gremlin 控制台并运行 bin\gremlin.bat 文件。似乎在连接(如下面的命令)并运行一个简单的远程命令(gV(123).count())后,我收到一个错误:

The most significant bit should be set according to the format
Run Code Online (Sandbox Code Playgroud)

这是我运行的命令:

PS C:\Users\L836423\Downloads\apache-tinkerpop-gremlin-console-3.4.7-bin\apache-tinkerpop-gremlin-console-3.4.7\bin> .\gremlin.bat

         \,,,/
         (o o)
-----oOOo-(3)-oOOo-----
plugin activated: tinkerpop.server
plugin activated: tinkerpop.utilities
plugin activated: tinkerpop.tinkergraph
gremlin> :remote connect tinkerpop.server conf/remote.yaml
log4j:WARN No appenders could be found for logger (com.jcabi.manifests.Manifests).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
==>Configured my_gremlin_dns.com/55.222.88.111:8182
gremlin> :remote console
==>All scripts will now be sent to Gremlin Server - …
Run Code Online (Sandbox Code Playgroud)

gremlin tinkerpop3 gremlin-server

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

使用用户权限挂载 kubernetes 卷

我正在使用 Kubernetes yaml 来挂载卷。我知道我可以使用以下配置将安装文件夹设置为特定组:

  securityContext:
    fsGroup: 999
Run Code Online (Sandbox Code Playgroud)

但我找不到一种方法来设置用户所有权而不仅仅是组。

当我访问容器文件夹以检查所有权时,它是 root。

无论如何要通过 kubernetes Yaml 这样做吗?例如,我期望fsUser: 999,但没有这样的东西。:/

kubernetes persistent-volumes persistent-volume-claims

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