首页 > 其他分享 > 使用原子主机、Ansible 和 Cockpit 部署容器

使用原子主机、Ansible 和 Cockpit 部署容器

时间:2023-01-12 22:31:47浏览次数:40  
标签:容器 主机 ansible 原子 Cockpit Ansible

来自原子项目的原子主机是一个轻量级容器操作系统,可以以 Docker 格式运行 ​Linux 容器。它专门为提高效率而定制,使其成为用于云环境的 Docker 运行时系统的理想选择。

我们幸运的发现一个很好的方式来管理在主机上运行的容器: Cockpit。 它是一个具有漂亮的 Web 界面的 GNU/Linux 服务器远程管理工具。它可以管理在主机上运行的服务器和容器。不过,我也希望在主机上可以自动运行容器,这时我们可以使用Ansible 来完成这个工作。

需要注意的是,我们不能在原子主机上使用 dnf 命令。原子主机并没有设计为通用操作系统,而是更适合容器和其他用途。但在原子主机上设置应用程序和服务仍然非常容易。这篇文章向您展示了如何自动化和简化这个过程。

设置组件

安装 Ansible

开始之前,请确保你的系统上安装了 Ansible。

sudo dnf -y install ansible

下载 cockpit 源代码

我们需要在原子主机上运行 cockpit 容器。在你的机器上从 https://github.com/trishnaguha/fedora-cloud-ansible 下载它的源代码。

$ git clone https://github.com/trishnaguha/fedora-cloud-ansible.git

编辑配置文件

1. 现在切换到 cockpit 的目录,并如下编辑 inventory 文件:

$ cd fedora-cloud-ansible
$ cd cockpit
$ vim inventory

完成如下修改:
1). 使用你的原子主机的 IP 替换掉 IP_ADDRESS_OF_HOST
2). 用您的 SSH 私钥文件的路径替换 ansible_ssh_private_key_file ='PRIVATE_KEY_FILE' 行中的 PRIVATE_KEY_FILE
然后保存并退出 inventory文件编辑。

2. 编辑 ansible 配置文件:

$ vim ansible.cfg

替换 remote_user=User 中 User 为你的原子主机上的远程用户名。然后保存并退出文件编辑。

结合起来

现在运行 Ansible 的 PlayBook。此命令开始运行原子主机上的 Cockpit 容器:

$ ansible-playbook cockpit.yml

Cockpit 现在运行在原子主机上了。使用浏览器去访问你的实例的公网 IP 的 9090 端口——这是 Cockpit 的默认端口。举个例子,如果该实例的 IP 地址是 192.168.1.4,就去访问 192.168.1.4:9090,你将会看到如下的 Web 界面:

 使用原子主机、Ansible 和 Cockpit 部署容器_Docker

管理你的容器

使用原子主机的登录信息或以 root 用户身份登录。然后访问 Cockpit 管理器上的 Containers 部分来查看原子主机上运行的容器。在下面的示例中,您会看到我还设置了其他容器,如 httpd 和 redis:

 使用原子主机、Ansible 和 Cockpit 部署容器_Ansible_02


注意,该界面允许您直接在 Cockpit 管理器中使用 Run 和 Stop 按钮启动和停止容器。您还可以使用 Cockpit 管理器管理您的原子主机。转到 Tools -> Terminals,在这里里你可以使用原子主机的终端:

 使用原子主机、Ansible 和 Cockpit 部署容器_IP_03

如果您打算在原子主机上部署容器化的应用程序,则可以简单地为其编写一个 PlayBook。然后,您可以使用 ansible-playbook 命令进行部署,并使用 Cockpit 来管理容器。

 使用原子主机、Ansible 和 Cockpit 部署容器_IP_04


标签:容器,主机,ansible,原子,Cockpit,Ansible
From: https://blog.51cto.com/u_12148962/6004770

相关文章

  • VirtualBox7.0 设置共享文件夹,实现win10宿主机与win7虚拟机文件双向拷贝
    解决步骤:1、从官网下载新版VirtualBox,并安装参考地址:VirtualBox软件下载安装及Linux环境安装部署图文教程详解_VirtualBox_脚本之家(jb51.net)2、新建虚拟机:注意:设置网......
  • 云主机ssh输入密码不正确
    现象:通过vnc输入密码正确,进入系统;通过ssh输入密码提示错误  方法一:排查是否被暴力破解,导致关闭sshd远程连接:cat/var/log/secure|grep"Failedpassword"|wc-......
  • ansible举一反三来编排部署其它应用
    ansible是非常强大的配置自动化工具,主要的特点是部署快捷简单,客户端只需要打开ssh服务即可。它可以使用YAML格式来编写PALYBOOK实现编排部署,并且可以使用roles来实现类......
  • 虚拟机与宿主机之间实现复制粘贴
    在操作虚拟机的过程中,常常需要在虚拟机与宿主机之间进行复制粘贴,但是虚拟机软件(VirtulBox)自带的终端界面比较难用,查了很多资料也解决不了问题。其实可以使用远程连接工具......
  • Ansible 实记
    自动化运维工具Ansibleansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:(1)、连接插件co......
  • ansible 安装 ntp
    ----name:synctimehosts:lichuangather_facts:falsetasks:-name:SELINUX=disabledselinux:state=disabled-name:iptablesstop......
  • ansible 安装 zabbix agent
    ----name:installzabbix-agentconfhosts:lichuanvars:zabbix_server_ip:10.3.229.14zabbix_agent_ip:"{{ansible_em1.ipv4.address}}"gath......
  • 虚拟机使用ESXi主机物理硬盘的办法
    虚拟机使用ESXi主机物理硬盘的办法weixin_33928137于2018-06-1915:22:06发布868收藏1文章标签:运维版权VMwareWorkstation的虚拟机可以使用主机物理硬盘、主机上......
  • 如何避免VMware平台ESXi主机CPU使用率的“坑”?
    https://mp.weixin.qq.com/s?__biz=MjM5NTk0MTM1Mw==&mid=2650636818&idx=1&sn=c43f3a3146092ffc7c63535aceeb1cd6&chksm=bef9fc94898e75822a891c8b66f83b3b46d6c53fdba77a......
  • Ansible介绍以及基于角色搭建LNMP和zabbix
    1ansible常用指令总结,并附有相关示例。/usr/bin/ansible主程序,临时命令执行工具/usr/bin/ansible-doc查看配置文档,模块功能查看工具,相当于man/usr/bin/ansible-pl......