0%

Ansible 学习文档

Ansible自动化运维学习。大部分操作及示例基于RHEL8实现。

文档未进行过任何校对和查错,目前仅用于个人学习使用。文档中可能会包含错误,请您雅正,谢谢。

最近一次的更新日期:2020年6月27日

本次更新内容:继续完成《Ansible 常用模块》 ⭕️

近期持续更新Ansible常用模块。

文档列表

更新日志

2020年6月27日

  • 继续完成《Ansible 常用模块》 ⭕️

2020年6月22日

  • 完成《Ansible 技巧之场》✅

2020年6月18日

  • 修复《Ansible 任务控制》中部分Markdown解析错误

2020年6月16日

  • Ansible角色 ✅
  • 添加部分刚刚没有同步到文档中的内容
  • 添加软件包管理模块使用

Splunk 数据搜索和报表

Splunk 是?

Splunk是机器数据分析平台,他可以收集并处理所有有机器产生的日志数据,在Splunk中可以做到”any data from any source”。我们作为管理员可以使用Splunk生成这些数据的报表、仪表盘等,赋予这冰冷枯燥日志数据的新生。

搜索是Splunk核心功能之一,基本上近乎所有的功能都是由搜索展开的。充分挖掘这些数据并从中获得有价值的信息,这让我想起在泥沙中淘金的感觉。从基本的报表和仪表,再到数据模型和功能完备的Splunk应用程序,这些都是由Splunk搜索在后台提供着支撑。

Splunk使用自己的搜索语言(SPL)。SPL有很多搜索指令,其中大部分包含有多种函数,参数和字句。

阅读全文 »

42Team Flask框架

前排提示

《42Team-Flask框架》系列教程仅限大连东软信息学院网络中心所属的42Team社团内部使用,该系列文档属于内部资料,仅用于所有42Team社团成员学习使用。

最近一次的更新日期:2020年4月24日

本次更新内容:请求与响应

阅读全文 »

How to install RHEL8(Centos) on Dell R710/R610 server

When I install RHEL8.x I cound’t discover my RAID Controller’s devices on Install Storage set-up optional.When I try to google find the resolutions I know a large number of storage controller device’s drivers has been removed from RHEL8,which means the Dell R710/R610 installed H700 RAID controller card won’t be supported RHEL 8.X natively.

Nevertheless you can still install RHEL8 on these machines with use of driver update disk(DUD).

Setup DUD

Using this link below ,you are specifically looking for the megaraid_sas drivers.

dmesg | grep raid
[ 3.702959] megaraid_sas: loading out-of-tree module taints kernel.
[ 3.703082] megaraid_sas: module verification failed: signature and/or required key missing - tainting kernel
[ 3.705684] megaraid_sas 0000:03:00.0: FW now in Ready state
[ 3.705687] megaraid_sas 0000:03:00.0: 63 bit DMA mask and 32 bit consistent mask
[ 3.705915] megaraid_sas 0000:03:00.0: firmware supports msix : (0)
[ 3.705918] megaraid_sas 0000:03:00.0: current msix/online cpus : (1/16)
[ 3.705919] megaraid_sas 0000:03:00.0: RDPQ mode : (disabled)
[ 3.750024] megaraid_sas 0000:03:00.0: controller type : MR(512MB)
[ 3.750027] megaraid_sas 0000:03:00.0: Online Controller Reset(OCR) : Enabled
[ 3.750029] megaraid_sas 0000:03:00.0: Secure JBOD support : No
[ 3.750030] megaraid_sas 0000:03:00.0: NVMe passthru support : No
[ 3.750032] megaraid_sas 0000:03:00.0: FW provided TM TaskAbort/Reset timeout : 0 secs/0 secs
[ 3.750036] megaraid_sas 0000:03:00.0: megasas_init_mfi: fw_support_ieee=67108864
[ 3.750069] megaraid_sas 0000:03:00.0: INIT adapter done
[ 3.750071] megaraid_sas 0000:03:00.0: Jbod map is not supported megasas_setup_jbod_map 5389
[ 3.795034] megaraid_sas 0000:03:00.0: pci id : (0x1000)/(0x0079)/(0x1028)/(0x1f17)
[ 3.795039] megaraid_sas 0000:03:00.0: unevenspan support : no
[ 3.795041] megaraid_sas 0000:03:00.0: firmware crash dump : no
[ 3.795042] megaraid_sas 0000:03:00.0: jbod sync map : no

If you specific DUD drivers that you need for RHEL8 is below address to download.

https://elrepo.org/linux/dud/el8/x86_64/dd-megaraid_sas-07.707.51.00-1.el8_1.elrepo.iso

When you downloaded the DUD ISO driver.Using the dd to burn it in another USB or DVD media devices.

dd if=dd-megaraid_sas-07.707.51.00-1.el8_1.elrepo.iso of=/dev/sdc

Installation System

The install process is as follows:

  • Download RHEL8.x media file and burn to usb or dev devices media.
  • Download DUD drivers in iso format and burn to usb drive.
  • Boot with both RHEL8 and DUD mounted before booting Install RHEL.
  • Installer should detect the DUD iso and install the proper drivers.

During booting RHEL8 Installer and When you see a countdown on the screen.At this time interrupt the installer with the TAB key and append the following to your boot options last.

inst.dd=/dev/sdb

On my system, the DUD was /dev/sdb and the RHEL8 install media was /dev/sda.

Soon after you can view the RAID Devices find it out.

Install it usually.

Centos8安装Docker失败的解决方案

在Centos8中,默认安装的的容器管理工具是使用了Podman,Podman的设计理念非常好,整合了pod思想,用户可以直接启动容器而不是像Docker那样通过守护进程启动,这样也会提高安全性。但是现在Podman国内使用的人数并不是很多,还会有一些问题出现。所以在Centos8上先将Podman替换为Docker。在Centos8下安装Docker会有container.io的依赖问题,现在来解决一下。

但是要注意的是,在Centos8中使用Docker启动容器的话,容器内默认的网络是不通的,需要简单的配置。在这一篇文章中Centos8安装Docker后容器内无法访问网络提供了解决办法。

简要概括

思路是卸载podman,安装docker-ce的repo源,解决依赖,安装完成,启动服务就是这样了。

卸载podman

dnf remove -y podman

安装docker-ce官方源

首先我们添加docker-ce官方的源,这样才能用到最新版本的Docker。

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

之后更新一下列表和依赖

dnf update -y

如果在update过程中提示添加GPG密钥,yes通过即可。稍稍等待一会吧。

解决依赖问题

如果安装完官方源后,直接安装docker-cecontainerd.io这个包会出现版本依赖的问题,如下:

[root@DELL ~]dnf install docker-ce docker-ce-cli
Last metadata expiration check: 0:09:11 ago on Sat 21 Mar 2020 04:17:47 PM CST.
Error:
Problem: package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
- cannot install the best candidate for the job
- package containerd.io-1.2.10-3.2.el7.x86_64 is excluded
- package containerd.io-1.2.13-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.3.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.el7.x86_64 is excluded
- package containerd.io-1.2.4-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.5-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.6-3.3.el7.x86_64 is excluded
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

解决方案有两个,要么安装老版本的docker-ce,要么升级container.io。我肯定选择第二个,问题形成的原因也很简单,官方的repo源里面的container.io版本比较老。我们去下载一个符合版本要求的container.io包。

dnf install -y https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

一条毒奶粉(dnf)命令直接安装目前最新的container.io 包。哦对了,该包来源于Docker官方,下载的是x86_64架构的包。如果你是其他平台,请到这儿里自己来选吧。

安装docker-ce

container.io的依赖问题已经解决完了,接下来直接安装就好了!

dnf install -y docker-ce docker-ce-cli

开启服务

systemctl enable --now docker

成功安装后开启docker守护进程,尝试一下启动一个容器。没有问题的话就是安装成功了。但是要注意的是,如果你发现在容器内部无法访问网络,那么你可以尝试一下用firewalld开启你的IP地址转发功能,具体操作和解决方案在这里Centos8安装Docker后容器内无法访问网络


我是一名Linux初学者,如果你与我一样喜欢折腾,喜欢Linux,那么请加入我的电报群https://t.me/yeefire_blog,在这里畅所欲言,共同学习进步。

Centos8安装Docker后容器内无法访问网络

在Centos8中,默认安装的的容器管理工具是使用了Podman,Podman的设计理念非常好,整合了pod思想,用户可以直接启动容器而不是像Docker那样通过守护进程启动,这样也会提高安全性。但是现在Podman国内使用的人数并不是很多,还会有一些问题出现。所以在Centos8上先将Podman替换为Docker。

在安装好Docker后,结果没有网络,经过排查发现是没有开启ip转发。正常情况下,Docker会自动开启地址转发。但是,不知道为什么Docker在Centos8中没有开启iptables的地址转发,需要我们使用firewalld防火墙管理工具来手动开启IP地址转发功能。

阅读全文 »

Docker或Podman容器内无法解析DNS问题多种解决方案

新安装了Centos8使用Podman,但是在容器内怎样都无法解析域名DNS。尝试了网上大多数的解决办法依然无效。在当我一筹莫展之时我想到了奥利给叔告诉过我“遇到什么困难,都不要怕!微笑的面对他”!

最终还是想到了是不是firewalld没有开启IP地址伪装(IP转发)功能。三下五除二赶紧执行firewall-cmd --query-masquerade。果然没有开启,开启后解决问题,瞬间晴朗。

下面是我和网络上其他人对于Docker容器内无法解析DNS地址的问题总结。

阅读全文 »

使用 NetworkManager 来管理树莓派 Ubuntu 系统网络 以及个人的体验优化

由于Raspbian官方网站上目前只提供arm32的系统。手里的这块树莓派4 4G发挥不出来它的最大性能,想想就难受。看到了有Ubuntu Server for Raspberry 3/4 的64位版本就心血来潮准备刷入。

烧录好镜像后,插卡!der~开机。使用默认的用户名和密码:ubuntu顺利进入系统。虽然没有显示器,插上网线!原来的时候在路由器里分配好的静态IP由于Mac地址没变,自然还是那个老IP咯。但是发现没有NetworkManager,感觉不太方便啊!虽然原来的Raspbian也没有,当时想想就算了哈!这回装了新系统,干脆弄的舒服点。

阅读全文 »