小编Bap*_*ias的帖子

我可以 ssh 正常,但 ansible 说“没有到主机的路由”

我编写了一个脚本来使用 vagrant 运行多个虚拟机,然后我必须使用 ansible 对其进行配置。不幸的是,我的主机是一台 Windows 机器,所以我认为我可以通过将所有虚拟机放入一个 VPN 中,然后从同一 VPN 中的另一台机器配置它们来解决问题。

理论上,它是有效的...我可以毫无问题地 ssh 进入其他机器。但是当我运行我的 ansible 剧本时,ansible 失败了。

起初,我ssh: connect to host 10.1.2.100 [10.1.2.100] port 22: No route to host在运行 ansible 时收到消息“”-vvvv

这是在晚上,我很累,第二天早上这个错误就没有再出现。不确定这是否与我正在进行部署的虚拟机同时重新启动有关,或者接收计算机从那时起被完全销毁和更新有关。无论如何,问题并没有消失。

重新创建两个虚拟机后,现在的结果是:

# ansible-playbook -i vms -k -u vagrant vms.yml -vvvv

result:

<10.1.2.100> ESTABLISH SSH CONNECTION FOR USER: vagrant <10.1.2.100>
SSH: EXEC sshpass -d14 ssh -C -vvv -o ServerAliveInterval=50 -o
User=vagrant -o ConnectTimeout=10 -tt 10.1.2.100 '( umask 22 && mkdir
-p "$( echo $HOME/.ansible/tmp/ansible-tmp-1455781388.36-25193904947084 )" && …
Run Code Online (Sandbox Code Playgroud)

ssh ansible

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

kafka 0.8与kafka 0.10的差异

任何人都可以列出Kafka 0.10与kafka 0.8相比的基本差异化特征.

我们正在考虑将我们的kafka-8升级到kafka-10.升级中可能面临哪些挑战?

提前致谢.

apache-kafka kafka-consumer-api kafka-producer-api

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

Ansible galaxy provisionner在Vagrant中没有使用私钥

我有以下vagrantfile

Vagrant.configure(2) do |config|

  config.ssh.insert_key = true
  config.vm.define "dev" do |app|
    app.vm.provider "docker" do |d|
      d.image = "allansimon/allan-docker-dev-python"
      d.has_ssh = true
    end

    app.ssh.username = "vagrant"

    app.vm.provision "file", source: "~/.ssh/id_rsa", destination: ".ssh/id_rsa"


    app.vm.provision "permits-root-to-clone", type: "shell" do |s|
      s.inline = "cp /home/vagrant/.ssh/id_rsa /root/.ssh/id_rsa"
    end
    # if i put here a new shell provisionner , to the exact same repo than in my galaxy roles , it works

    app.vm.provision "ansible_local" do |ansible|
      ansible.galaxy_role_file = "build_scripts/ansible/requirements.yml"
      ansible.playbook = "build_scripts/ansible/bootstrap.yml"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

该 …

git ssh-keys vagrant ansible ansible-galaxy

5
推荐指数
0
解决办法
603
查看次数

如何在ansible.cfg文件中添加多个库路径

我已经使用 pip 安装了 napalm-ansible,现在尝试将 napalm-ansible 库路径添加到我的 ansible.cfg 文件中。

root@usvr-1804:/home/labadmin# napalm-ansible
To ensure Ansible can use the NAPALM modules you will have
to add the following configurtion to your Ansible configuration
file (ansible.cfg):

[defaults]
library = /usr/local/lib/python2.7/dist-packages/napalm_ansible/modules
action_plugins = /usr/local/lib/python2.7/dist 
packages/napalm_ansible/plugins/action
Run Code Online (Sandbox Code Playgroud)

但我的 ansible.cfg 文件已经有一个库路径。

root@usvr-1804:/home/labadmin# cat ansible.cfg

[defaults]
inventory = ./hosts
library = /etc/ansible/roles/PaloAltoNetworks.paloaltonetworks
host_key_checking = false
timeout = 5
log_path = /var/log/ansible.log
roles_path = /etc/ansible/roles
Run Code Online (Sandbox Code Playgroud)

如何将第二个库路径添加到我的 ansible.cfg 文件中。谢谢

python library-path ansible

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

如何在 Kubernetes Secrets 中生成随机字符串/密码

现在,我使用静态文件部署我的应用程序 pod,其中之一是app-secrets.yaml部署应用程序的所有秘密

---
apiVersion: v1
kind: Secret
metadata:
  name: app-secrets
type: Opaque
data:
  root: xxxxxx
  user1: xxxxxx
  user2: xxxxxx
Run Code Online (Sandbox Code Playgroud)

但这既不安全也不方便(如果我需要另一个应用程序实例,我必须使用人工生成的密码创建另一个文件)。

我希望在创建应用程序时生成随机密码,但我不知道是否可行。我已经看过主题秘密,特别是secretGenerator但这并不是我所理解的直接想要的,因为它不会创建随机字符串而是随机秘密名称,例如secret/app-secrets-ssdsdfmfh4k但我仍然必须提供密码。

kubernetes kubernetes-secrets

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

字典的平方值

我正在使用Python 2.7,仍在学习字典.我专注于为字典执行数值计算,需要一些帮助.

我有一本字典,我想对其中的值进行平方:

 dict1 = {'dog': {'shepherd': 5,'collie': 15,'poodle': 3,'terrier': 20},
'cat': {'siamese': 3,'persian': 2,'dsh': 16,'dls': 16},
'bird': {'budgie': 20,'finch': 35,'cockatoo': 1,'parrot': 2}
Run Code Online (Sandbox Code Playgroud)

我想要:

 dict1 = {'dog': {'shepherd': 25,'collie': 225,'poodle': 9,'terrier': 400},
'cat': {'siamese': 9,'persian': 4,'dsh': 256,'dls': 256},
'bird': {'budgie': 400,'finch': 1225,'cockatoo': 1,'parrot': 4}
Run Code Online (Sandbox Code Playgroud)

我试过了:

 dict1_squared = dict**2.

 dict1_squared = pow(dict,2.)

 dict1_squared = {key: pow(value,2.) for key, value in dict1.items()}
Run Code Online (Sandbox Code Playgroud)

我的尝试没有任何成功.

python dictionary

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

Ansible-从Github存储库下载最新版本的二进制文件

使用Ansible,请告知我如何从Github存储库下载最新版本的二进制文件。根据我目前的理解,这些步骤将是:获取最新版本的网址b。下载版本

为一个。我有一些类似的东西没有提供实际的版本(例如v0.11.53):

 - name: get latest Gogs release
  local_action:
    module: uri
    url: https://github.com/gogits/gogs/releases/latest
    method: GET
    follow_redirects: no
    status_code: 301
    register: release_url
Run Code Online (Sandbox Code Playgroud)

对于b。我有下面的工作,但需要不断更新。除了版本,我需要在a中设置一个变量:

- name: download latest
    become: yes
    become-user: "{{gogs_user}}"
    get_url:
     url: https://github.com/gogs/gogs/releases/download/v0.11.53/linux_amd64.tar.gz
    dest: "/home/{{gogs_user}}/linux_amd64.tar.gz"
Run Code Online (Sandbox Code Playgroud)

谢谢!

url automation github download ansible

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

表管理器不会清除 loki 2.4 中的块

我想删除超过 31 天的块数据,所以我做了这样的配置

schema_config:
  configs:
    - from: 2020-10-24
      store: boltdb-shipper
      object_store: filesystem
      schema: v11
      index:
        prefix: index_
        period: 24h

storage_config:
  boltdb_shipper:
    active_index_directory: "/var/lib/loki/boltdb-shipper-active"
    cache_location: "/var/lib/loki/boltdb-shipper-cache"
    cache_ttl: 24h 
    shared_store: filesystem
  filesystem:
    directory: /var/lib/loki/chunks

chunk_store_config:
  max_look_back_period: 0s

table_manager:
  retention_deletes_enabled: true
  retention_period: 31d
Run Code Online (Sandbox Code Playgroud)

但实际上删除从未发生过。

我是否忘记了配置中的某些内容?

洛基版本:2.4.1

purge retention grafana-loki

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

Ansible 邮件模块不适用于 Office 365

我正在尝试从 ansible 发送电子邮件

如果我使用 gmail 尝试它,它可以完美运行,但是如果我尝试使用 Office 365,它就无法正常工作。

下面是我的剧本。

---
  - name: Mail Sendig using Ansible
    hosts: localhost
    tasks:
      - name: Mail sending using Mail Module
        mail:
          host: "smtp.office365.com"
          port: 587
          username: "dcalert@mycompany.com"
          password: "mypasswd"
          to: "Jon Snow <jon.snow@mycompany.com>"
          subject: "Ansible"
          body: "Hello from Ansible"
          secure: starttls
Run Code Online (Sandbox Code Playgroud)

我得到以下错误

ASK [Send email]
*******************************************************************
An exception occurred during task execution. To see the full 
traceback, use -vvv. The error was: SMTPSenderRefused: (501, '5.1.7 
Invalid address', 'root')
fatal: [localhost -> localhost]: FAILED! => …
Run Code Online (Sandbox Code Playgroud)

email smtp ansible

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

包含和标签在ansible中不起作用

我对Ansible-Playbook感到困惑,如果我在main.yml(tasks)中使用include&标签,那将无法正常工作。

命令: ansible-playbook -i digitalocean/inventory.ini ans-graylog.yml --tags "insglog"

PLAY [Setup Graylog] **************************

TASK [Gathering Facts] ************************
ok: [xxx.xxx.xxx.xxx]

PLAY RECAP ************************************
xxx.xxx.xxx.xxx            : ok=1    changed=0    unreachable=0    failed=0
Run Code Online (Sandbox Code Playgroud)

如果删除--tags "inslog",它将成功。所有任务将正常运行。

main.yml (Tasks)

---
- include: gray.yml tags=insglog
- include: fbeat.yml tags=insfbeat
Run Code Online (Sandbox Code Playgroud)

当我--tags="inslog"ansible-playbook命令中使用时,gray.yml未执行。

我已经试过include_taskimportimport_task。但是,我得到了相同的结果。

您能帮我解决这个问题吗?

ansible ansible-2.x

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