我们谈论生活,讨论技术,借由文字,抵达心灵。
文件管理file 管理文件和目录的属性(权限、所有者、存在性)copy 将文件从控制节点复制到目标主机template 使用 Jinja2 模块引擎渲染文件并复制到目标主机lineinfile 确保文件中的特定行存在或修改blockinfile 在文件中插入、更新或删除文本块fetch 从远程主机获取文件到控制节点synchronize 使用 rsync 同步文件目录系统管理service 管理系统服务systemd 专门管理 systemd 服务user 管理用户账户group 管理用户组cron 管理计划任务mouont 管理挂载点hostname 管理系统主机名reboot 重启主机包管理package 通用包管理器(自动选择适合的包管理器)apt Debian / Ubuntu 系统的包管理yum RedHat / CentOS 系统的包管理dnf 较新的 RedHat / Fedora 系统的包管理pip Python 包管理gem Ruby 包管理命令执行command 执行命令,不通过 shellshell 通过 shell 执行命令,支持管道、重定向等script 将本
- hosts: webservers tasks: - name: say hello command: touch "hello world" chdir=/opt目标主机定义- hosts: webservers指定这个 playbook 将在 webservers 组的所有主机上执行webservers 组应该在 inventory 文件中定义任务列表tasks: 定义了要在目标主机上执行的操作序列具体任务 - name: say hello command: touch "hello world" chdir=/optname 任务的描述性名称,用于执行时的输出显示command 使用的模块名称touch "hello world" chdir=/opt 传递给模块的参数执行操作这个 playbook 将执行一个简单的操作:在所有 webservers 组的主机上在 /opt目录下创建一个名为 hello world 的空文件(包含空格的文件名)其中,command: touch "
同一个 Pod 中的多个容器能够共享 Pod 级别的存储卷 Volume。Volume 可以被定义为各种类型,多个容器各自进行挂载操作,将一个 Volume 挂载为容器内部需要的目录多容器协作实践解析Pod 内包含两个容器:tomcat 和 busybox,在 Pod 级别设置 Volume"apps-logs",用于 tomcat 向其中写日志文件,busybox 读日志文件apiVersion: v1 kind: Pod metadata: name: volume-pod spec: containers: - name: tomcat # 第一个容器(主容器)tomcat image: tomcat # 使用 tomcat 镜像 ports: - containerPort: 8080 # 容器内部端口 volumeMounts: - name: app-logs
vim 编辑器卡住新开一个标签页,再次进入 vim 编辑器,按 R 进入覆盖(Recover)后,进入编辑,完成编辑后 :wq 保存。vim 进程冲突如果编辑器没有卡住,但是提示冲突时,可以选择根据需要,按提示选择需要进行的操作:[O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort:继续编辑配置文件,完成编辑后 :wq 保存。删除 swp 文件虽然已经完成了文件编辑并保存,但是在出现冲突时,就已经产生了一个 .swp 的隐藏文件,需要找到他并删除。查看隐藏文件:ls -la会看到与 vim 编辑器卡住 / 进程冲突的同名的 .swp 文件。再执行删除命令:sudo rm .pod-volume-applogs.yaml.swp成功删除后,就可以再次用 vim 打开并编辑文件了。如果还提示有 .swp 文件,可以先确认 vim 进程是否还在运行ps aux | grep vim如果发现有运行的 vim 进程,可以强制结束:killall vim # 或者 pkill vim然后再删除 swp 文件重试。附录:查找 swp
静态 Pod 由 kubelet 管理的仅存在于特定 Node 上的 Pod。他们不能通过 API Server 进行管理,无法与 RC、Deployment 或者 DaemonSet 进行关联,并且 kubelet 无法对他们进行健康检查。静态 Pod 是 由 kubectl 创建,并总在 kubelet 所在的 Node 上运行。创建静态 Pod - 配置文件方式设置 kubelet 的启动参数 --config,指定 kubelet 需要监控的配置文件所在的目录,kubelet 会定期扫描该目录,并根据该目录下的 .yaml 或 .json 文件进行创建操作。假设配置目录为 /etc/kubelet.d,配置启动参数为 --config=/etc/kubelet.d/ ,然后重启 kubelet 服务。--config=/etc/kubelet.d/ 适用于指定 kubelet 配置文件的参数,不是静态 Pod 的配置文件内容。kubelet 会从该目录中读取配置文件来启动和管理 Pod,这个参数通常用于配置 kubelet 的行为,而不是直接管理静态 Pod静态 Pod 实践检
糖呀糖 xyz