rh358001Linux网络与systemd设置

博客 分享
0 144
张三
张三 2022-08-28 03:03:43
悬赏:0 积分 收藏

rh358 001 Linux网络与systemd设置

358 rhel7 ce
ansible 部署服务
dhcp nginx vanish haproxy 打印机服务

服务管理自动化

systemd与systemctl

systemctl 来管理systemd的对象(unit单元)
systemctl 显示服务单元
大致有以下几类

slice   (资源片段,与调优有关)target   (紧急模式之类,文本模式multi-user.target)service  (与服务有关)socket   (进程通信)

systemctl 通过单元配置文件来管理

[root@localhost ~]# systemctl status sshd● sshd.service - OpenSSH server daemonLoaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset>Active: active (running) since Sat 2022-08-27 13:07:05 CST; 1min 18s ago[root@localhost ~]# cat /usr/lib/systemd/system/sshd.service [Unit]Description=OpenSSH server daemonDocumentation=man:sshd(8) man:sshd_config(5)After=network.target sshd-keygen.target          after和before启动顺序Wants=sshd-keygen.target               依赖关系[Service]Type=notifyEnvironmentFile=-/etc/crypto-policies/back-ends/opensshserver.config       环境变量所在的文件EnvironmentFile=-/etc/sysconfig/sshd                          ExecStart=/usr/sbin/sshd -D $OPTIONS $CRYPTO_POLICY        调用进程      ($OPTIONS $CRYPTO_POLICY 调用环境变量)ExecReload=/bin/kill -HUP $MAINPID     (systemctl   reload    sshd   =  /bin/kill -HUP $MAINPID[sshd pid])  KillMode=processRestart=on-failureRestartSec=42s[Install]WantedBy=multi-user.target[root@localhost ~]# [root@localhost ~]# killall -lHUP INT QUIT ILL TRAP ABRT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLTCHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH POLL PWR SYS[root@localhost ~]# HUP信号量   让进程重新读取配置文件/bin/kill -HUP $MAINPID     restart 会使mainpid发生变化reload不会

systemctl 要控制单元,必须依赖于单元配置文件
改了单元配置文件需要 systemctl daemon-reload

1.自定义了单元配置文件:mysql你用二进制安装
2.调优的时候,需要改动这些文件
3.修改某些服务的启动方式的参数。docker服务

systemctl enable [service]
enable时会创建链接文件

[root@localhost ~]# systemctl enable sshdCreated symlink /etc/systemd/system/multi-user.target.wants/sshd.service → /usr/lib/systemd/system/sshd.service.

disable则删除了

服务日志的查看

日志信息
1.服务本身自己的日志输出 服务自定的定义
2.systemd-journal 保存在内存中
systemctl status systemd-journald

查看journald

[root@localhost ~]# journalctl -p err-- Logs begin at Sat 2022-08-27 13:07:00 CST, end at Sat 2022-08-27 13:37:29 CS>Aug 27 13:07:04 localhost.localdomain kernel: piix4_smbus 0000:00:07.3: SMBus H>Aug 27 13:07:04 localhost.localdomain smartd[1047]: DEVICESCAN failed: glob(3) >Aug 27 13:07:04 localhost.localdomain smartd[1047]: In the system's table of de>Aug 27 13:07:06 localhost.localdomain systemd[1]: Failed to start Crash recover>Aug 27 13:17:03 localhost.localdomain systemd[1]: Failed to start dnf makecache.lines 1-6/6 (END)查看日志级别[root@localhost ~]# journalctl -p err -u httpd-- Logs begin at Sat 2022-08-27 13:07:00 CST, end at Sat 2022-08-27 13:37:29 CS>-- No entries --lines 1-2/2 (END)-f会实时监控[root@localhost ~]# journalctl --sinc "13:00:00" --unit "13:03:00"systemctl status   sshd  -l

服务启动依赖项

[root@localhost ~]# systemctl list-dependencies graphical.target graphical.target● ├─accounts-daemon.service● ├─gdm.service● ├─rtkit-daemon.service● ├─systemd-update-utmp-runlevel.service● ├─udisks2.service● └─multi-user.target●   ├─atd.service●   ├─auditd.service●   ├─avahi-daemon.service●   ├─crond.service●   ├─cups.path●   ├─dbus.service●   ├─dnf-makecache.timer●   ├─firewalld.service●   ├─irqbalance.service●   ├─kdump.service●   ├─ksm.service●   ├─ksmtuned.service●   ├─libstoragemgmt.service●   ├─libvirtd.service●   ├─mcelog.service●   ├─mdmonitor.servicelines 1-23

服务屏蔽
systemctl mask httpd
将单元配置文件指向/dev/null

systemctl status/start/stop/restart/reload/disable/enable/mask/unmask/list-dependency/journalctl/单元配置文件

配置网络接口

[root@localhost multi-user.target.wants]# nmcli connection show 'ens160'connection.id:                          ens160connection.uuid:                        25d20a42-f84e-4c51-8df9-bfcefa11b1b0connection.stable-id:                   --connection.type:                        802-3-ethernetconnection.interface-name:              ens160connection.autoconnect:                 noconnection.autoconnect-priority:        0connection.autoconnect-retries:         -1 (default)connection.multi-connect:               0 (default)connection.auth-retries:                -1connection.timestamp:                   1655383585

device指的物理设备
connection连接指的是它所关联的设备的配置集合

配置设备的网络信息,看他是否关联了连接

将网卡的配置永久保存在连接里[root@localhost multi-user.target.wants]# cat /etc/sysconfig/network-scripts/ifcfg-ens160 TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=dhcpDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens160UUID=25d20a42-f84e-4c51-8df9-bfcefa11b1b0DEVICE=ens160ONBOOT=no

启动时加载文件
对于一个设备可以有多套连接,每个连接针对不同的配置。只有一个连接处于active

改网络设备,先确定设备有哪些,和网络设备有关联的连接

[root@localhost multi-user.target.wants]# nmcli device DEVICE      TYPE      STATE         CONNECTION virbr0      bridge    connected     virbr0     ens160      ethernet  disconnected  --         lo          loopback  unmanaged     --         virbr0-nic  tun       unmanaged     --    

没有连接则需要创建连接关联设备

[root@localhost multi-user.target.wants]# nmcli  connection  add  con-name eth1 type ethernet ifname ens160 autoconnect noConnection 'eth1' (930ef42d-0377-48cb-8e16-52ad91ef8857) successfully added.[root@localhost multi-user.target.wants]# ll /etc/sysconfig/network-scripts/ifcfg-eth1 -rw-r--r--. 1 root root 279 Aug 27 14:33 /etc/sysconfig/network-scripts/ifcfg-eth1[root@localhost multi-user.target.wants]# 

持久化保存配置
ifname设备名
con-name连接名

方式一:nmcli
方式二:修改配置文件

注意
nmcli connection modify 之后需要up激活

ipv4.gateway 不要重复设置,两个连接两个不同的gateway,两个不同的设备,重复设置gateway。那么默认路由则会有两条。没有意义

没有环境做这个实验。弱化这一块,提供思路但是我并未实践假设我的ip为10.10.10.22   我已经可也通外网了,我还得需要访问内部网络192.168.10.0添加特定路由ip route  add  192.168.10.0/24  dev eth2添加ipnmcli connection modify  eth2 +ipv4.address  192.168.10.1/24   (这样也会添加路由)配置子接口网络工程师会给你搞定网络的事。这里主要时说,让你不要重复两个网关。

dns可以写多个。但不能写太多
不管几个网卡配了dns
所有dns配置都会写到 /etc/resolv.conf 这个文件内
DNS1
DNS后面必须加数字

网卡不能生效的问题:连接和设备关联不上,配置ip不生效
方式1:通过MAC地址强关联 HWADDR=52:54:00:07:a1:40
方式2:删除连接重新开始建

修改设备名
通过MAC强绑定 修改device
DEVICE=supermaohero
HWADDR=00:0c:29:a9:3d:60

supermao: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500        ether 00:0c:29:a9:3d:60  txqueuelen 1000  (Ethernet)        RX packets 0  bytes 0 (0.0 B)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 0  bytes 0 (0.0 B)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ansible 配置网络

rhel-system-roles 提供一个修改网络的系统 rhel-system-roles.network
对于别人提供的role你要用
你就需要提供合适变量就可以完成工作

下载 rhel-system-roles.network

[root@localhost rhel-system-roles.network]# pwd/usr/share/ansible/roles/rhel-system-roles.network[root@localhost rhel-system-roles.network]# ll README.md -rw-r--r--. 1 root root 34346 Aug 28  2021 README.md[root@localhost rhel-system-roles.network]# 

运行playbook
红帽已经给你把这个角色写好了,只用提供相关变量

posted @ 2022-08-28 01:00 supermao12 阅读(0) 评论(0) 编辑 收藏 举报
回帖
    张三

    张三 (王者 段位)

    821 积分 (2)粉丝 (41)源码

     

    温馨提示

    亦奇源码

    最新会员