标签 Linux 下的文章

 为存储配置多路径,各位工程师都不陌生。在Linux下配置multipath,更不在话下,mpathconf --enable 一条命令走天下,更是老手的惯例,因为mpatha、mpathb、mpathc、这种名称也不会影响使用。但是,给存储卷定义别名就显得不那么粗狂,使用厂商推荐的多路径参数,更显得专业,现在配置多路径的自动化交互式脚本横空出世,极大的方便了各位工程师。

Linux下配置网卡聚合交互式自动配置脚本

之前写了手动配置多路径的文档Linux操作系统配置多路径通用教程
[scode type="red"]仅适用于初次配置![/scode] 

脚本功能:

1.多路径辅助配置脚本适用于FC-SAN和IP-SAN
2.支持联想 DM、DE系列、DS系列、Storwize V系列
3.支持NetApp FAS、E系列,IBM Storwize V系列、FS系列
4.支持华为OceanStor系列,浪潮G2系列
5.支持戴尔 MD系列、SC系列,宏杉MS系列
6.支持惠普 3PAR系列、MSA 1040、1050、2040、2050系列
7.其他品牌和型号,使用操作系统生成的默认多路径参数
8.支持CentOS 6.x/7.x/8.x RedHat 6.x/7.x
9.支持中英选择

5月14日更新:

修复Lenovo DE系列存储新版本微码下20m管理分区的识别
优化判断逻辑

4月16日更新:

1,新增支持CentOS 8.x/RedHat 8.x
2,优化多个判断逻辑
备注:因为存储厂商目前并未适配8系列系统,我多次测试使用7系列的官方参数,会有问题。
所以会默认使用8系列系统生成的多路径参数,不加入任何官方参数。

[scode type="blue"]已付费用户,联系我获取最新版本,或者有其他需求,如增加功能,或者修改直接联系我即可[/scode]

linux 8系列下部分截图

39882-38g6si1hxuf.png

00426-7ajrlw1qvlc.png

[scode type="blue"]上述列出的品牌及型号,会使用厂商推荐的最佳多路径参数,没有列出的品牌和型号,则使用操作系统生成的默认多路径参数,如你使用的存储不被支持,则会有相应的提示![/scode]

在使用的过程中如果遇到什么问题,或有什么建议或者需要增加品牌或者型号的参数,加我微信交流,微信二维码在文章底部。

部分截图:

72245-ulijo5dydc.png

69257-s6gehd62tcb.png

04657-pysozkg51r.png

41654-hwm6xkglsiu.png

59342-oz6m3r7btq.png

38546-7k1sjoa1ugj.png

屏蔽20M管理分区截图:

02765-zez5w5pyw3.png

惠普3PAR存储 选择主机定义截图:

04779-ijslxwx30qp.png

[scode type="blue"]创作脚本不易,打赏后获取脚本下载链接!获取后加我微信,后续更新版本,会通过微信传递[/scode]

  linux配置网卡聚合,之前写过一篇文章,但是需要手动配置,Redhat和Centos操作系统双网卡绑定,现在我花时间写了一个脚本,内置各种逻辑判断,大家在使用过程中遇到问题,或者有什么建议请加我微信(微信二维码在文章页面底部),互相交流学习!

Linux下交互式多路径自动化配置脚本发布

备注:如果你下载了之前的脚本,请删除,下载最新的!

脚本功能:

    1,支持中英文选择
    2,支持CentOS 6.x/7.x/8.x RedHat 6.x/7.x/8.x
    3,支持bond和team两种绑定模式
    4,更多支持,等你发现!

3月14日更新:

1,增加网卡选择逻辑,如果选择不存在的网卡,则给出提示,并退出!
2,美化部分界面及提示!

判断逻辑很多,我只提供了部分截图:

初始配置bond聚合时:

78221-rk4dg6n5o1.png

13684-m28j7w8zwwl.png

62751-b8tl4j1qtzo.png

系统已有聚合时:

16725-k4f6bn5fj9g.png

存在bond聚合时配置team聚合

62022-zke999lbzgl.png

54918-lh4hjc2u4o.png

[scode type="blue"]创作脚本不易,打赏后获取脚本下载链接!获取后加我微信,后续更新版本,会通过微信传递[/scode]

一个VDI项目中,客户要求使用Linux系统。Windows的桌面,一路点鼠标下一步,没有什么难度,而Linux,搜遍全网,没有一篇正经文档,当然与我搜索的姿势也有关,参考VMware官方文档,如同嚼蜡。做完Linux桌面,其实发现并没有想象中的那么复杂,只不过步骤繁多,需要耐心。

如果需要做Ubuntu的桌面,参考这里 Horizon系列之安装配置Ubuntu18虚拟桌面

配置linux桌面,最重要的则是加域,horzion支持以下几种方式

1,OpenLDAP 服务器直通身份验证
2,针对 Microsoft Active Directory 的系统安全服务守护进程 (System Security Services Daemon, SSSD)LDAP 身份验证
3,加入 Winbind 域
4,PowerBroker Identity Services Open (PBISO) 身份验证

此文基于winbind加域,horizon 7.8,CentOS 7.6。

一,配置虚拟机模板

1,禁用ipv6,编辑文件/etc/sysctl.conf,添加下面的行:

net.ipv6.conf.all.disable_ipv6 =1
net.ipv6.conf.default.disable_ipv6 =1

保存并退出文件。
执行下面的命令来使设置生效。

sysctl -p

82041-ho7l7k4k07.png

2,禁用virbr0,

ifconfig virbr0 down
brctl delbr virbr0
systemctl disable libvirtd

12887-hce6944p2l5.png

3,禁用NMtool

systemctl stop NetworkManager
systemctl disable NetworkManager

54817-9jwos2cnjad.png

4,更改默认搜索域和DNS

在网卡配置文件加入

DNS1=192.168.80.100
DNS2=192.168.80.200
DOMAIN=lzuvdi.com

重启网络服务

28480-0pxxkr62apwb.png

5,配置yum,安装 winbind、samba 和 Kerberos 软件包,并把smb和winbind 加入开机自启

yum install -y samba samba-winbind krb5-workstation samba-winbind-clients authconfig-gtk
systemctl enable smb
systemctl enable winbind

6,图形界面加域,

authconfig-gtk

70178-fwyrgr15798.png

User Account Database:Winbind
Winbind Domain:LZUVDI
Security Model:ads
Winbind ADS Realm:LZUVDI.COM
Winbind Domain Controllers:ad1.lzuvdi.com,ad2.lzuvdi.com
Template Shell:/bin/bash

Advanced Options 勾选Create home directories on the first login

62628-xw2wzu1m6v7.png

Identiity Authentication 中点击 Join Domain

55867-mz0wnatwnpi.png

选择Save,输入域管理员密码加域,然后点击Apply,重启虚拟机系统。

7,查看加域信息

在域控中打开用户管理器,vdi虚拟机已加入域控

61730-sskvkydw0gh.png

虚拟机上查看域信息

net ads info

04329-82cpl6tih0u.png

新建用户

04553-g9ybtflxoxj.png

查找用户

id user01
id user02

08447-wax93hi8bqa.png

两个账号确实存在,虚拟机成功加域,为什么查找不到用户,换个方式

id user01@lzuvdi
id user02@lzuvdi

67439-puv4jukr2p.png

知道为什么吗?

[scode type="blue"]下面关键内容仅对打赏用户开放,之前通过微信打赏的用户,微信联系我获取密码,谢谢![/scode]

Linux下配置网卡聚合交互式自动配置脚本

在我们日常Linux使用中,一般对于生产网都会使用双网卡或多网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可谓好处多多。而一般我们都会使用Linux操作系统下自带的网卡绑定模式。这一点不像Windows2008,操作系统没有网卡绑定功能,需要网卡产商针对windows操作系统定制网卡管理软件来做网卡绑定(windows2012操作系统中加入了网卡绑定功能)。
下面的绑定教程适用于Redhat和Centos 6系列和7系列版本

42676-hdfyjto4teg.png

非LACP绑定模式


此模式不需要在交换机做配置,即配即用
备份要配置的网卡文件,我在这里要配置eno1和eno2,

[root@server ~]# cd /etc/sysconfig/network-scripts/
[root@server network-scripts]# ls
ifcfg-eno1           ifdown       ifdown-routes    ifup-ib      ifup-sit
ifcfg-eno2           ifdown-bnep  ifdown-sit       ifup-ippp    ifup-Team
ifcfg-enp0s20f0u1u6  ifdown-eth   ifdown-Team      ifup-ipv6    ifup-TeamPort
ifcfg-enp175s0f0     ifdown-ib    ifdown-TeamPort  ifup-isdn    ifup-tunnel
ifcfg-enp175s0f1     ifdown-ippp  ifdown-tunnel    ifup-plip    ifup-wireless
ifcfg-enp6s0f0       ifdown-ipv6  ifup             ifup-plusb   init.ipv6-global
ifcfg-enp6s0f1       ifdown-isdn  ifup-aliases     ifup-post    network-functions
ifcfg-enp6s0f1.bak   ifdown-post  ifup-bnep        ifup-ppp     network-functions-ipv6
ifcfg-lo             ifdown-ppp   ifup-eth         ifup-routes
[root@server network-scripts]# cp ifcfg-eno1 ifcfg-eno1.bak
[root@server network-scripts]# cp ifcfg-eno2 ifcfg-eno2.bak
[root@server network-scripts]# 

分别编辑两个网卡的文件
先编辑ifcfg-eno1

[root@server network-scripts]# vi ifcfg-eno1
[root@server network-scripts]# cat ifcfg-eno1
DEVICE=eno1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no

再编辑ifcfg-eno2

[root@server network-scripts]# vi ifcfg-eno2
[root@server network-scripts]# cat ifcfg-eno2
DEVICE=eno2
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no

最后新建bond0文件

[root@server network-scripts]# vi ifcfg-bond0
[root@server network-scripts]# cat ifcfg-bond0 
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
USERCTL=no
NM_CONTROLLED=no
BONDING_OPTS="mode=1 primary=eno1 miimon=100"

配置完成以后

6系列版本执行:service network restart
7系列版本执行:systemctl restart network

LACP绑定模式:

此模式需要在交换机上配置802.3ad 链路聚合,此模式也是真正的负载均衡模式,在分布式和高性能场景使用较多
备份要配置的网卡文件,我在这里要配置eno1和eno2,

[root@server ~]# cd /etc/sysconfig/network-scripts/
[root@server network-scripts]# ls
ifcfg-eno1           ifdown       ifdown-routes    ifup-ib      ifup-sit
ifcfg-eno2           ifdown-bnep  ifdown-sit       ifup-ippp    ifup-Team
ifcfg-enp0s20f0u1u6  ifdown-eth   ifdown-Team      ifup-ipv6    ifup-TeamPort
ifcfg-enp175s0f0     ifdown-ib    ifdown-TeamPort  ifup-isdn    ifup-tunnel
ifcfg-enp175s0f1     ifdown-ippp  ifdown-tunnel    ifup-plip    ifup-wireless
ifcfg-enp6s0f0       ifdown-ipv6  ifup             ifup-plusb   init.ipv6-global
ifcfg-enp6s0f1       ifdown-isdn  ifup-aliases     ifup-post    network-functions
ifcfg-enp6s0f1.bak   ifdown-post  ifup-bnep        ifup-ppp     network-functions-ipv6
ifcfg-lo             ifdown-ppp   ifup-eth         ifup-routes
[root@server network-scripts]# cp ifcfg-eno1 ifcfg-eno1.bak
[root@server network-scripts]# cp ifcfg-eno2 ifcfg-eno2.bak

分别编辑两个网卡的文件
先编辑ifcfg-eno1

[root@server network-scripts]# vi ifcfg-eno1
[root@server network-scripts]# cat ifcfg-eno1
DEVICE=eno1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no

再编辑ifcfg-eno2

[root@server network-scripts]# vi ifcfg-eno2
[root@server network-scripts]# cat ifcfg-eno2
DEVICE=eno2
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no

最后新建bond0文件,ip地址信息根据环境自定义

[root@server network-scripts]# vi ifcfg-bond0
[root@server network-scripts]# cat ifcfg-bond0 
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
USERCTL=no
NM_CONTROLLED=no
BONDING_OPTS="mode=4 miimon=100 xmit_hash_policy=layer2+3"
配置完成以后
6系列版本执行:service network restart
7系列版本执行:systemctl restart network

经常看到很多客户正式的环境还没有禁用CTRL-ALT-DEL重启系统,这个快捷键非常危险,尤其是正式环境,稍不留神按了这3个键,等着吧!
建议大家养成好的习惯,装完系统后把基础配置做好,比如禁用这个重启。

1
CentOS5.x

    vi /etc/inittab

找到下面行并注释掉:

    ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
    改为(或者直接删除):
    #ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

2
CentOS6.x

    /etc/init/control-alt-delete.conf
    找到下面行并注释掉:
    start on control-alt-delete
    改为(或者直接删除):
    start on control-alt-delete

3
CentOS7.x

    rm -r /usr/lib/systemd/system/ctrl-alt-del.target
    init q 

    如果要恢复则执行:ln -s /usr/lib/systemd/system/reboot.target /usr/lib/systemd/system/ctrl-alt-del.target

4
Ubuntu

    vi/etc/init/control-alt-delete.conf

找到下面行并注释掉:

    exec shutdown -r now "Control-Alt-Delete pressed"
    改为:
    #exec shutdown -r now "Control-Alt-Delete pressed"

我们在配置存储的时候,需要刷新磁盘管理才能扫描出硬盘,Windows即点即用,那么Linux下,一般情况必须要重启才可以识别映射的磁盘,如何在不重启的情况下识别硬盘呢

就两条命令:
根据实际环境选择不同命令
1、本地磁盘:

ls /sys/class/scsi_host/

2、iSCSI链接方式:

ls /sys/class/iscsi_host/

3、FC链接方式

ls /sys/class/fc_host/

然后执行下面的命令,hostX的X代表的是执行上面命令之后出现的host后面的数字,不管哪种连接方式,都要在scsi_host下执行

echo "- - -" > /sys/class/scsi_host/hostX/scan

比如执行ls /sys/class/fc_host/ 之后出现host13、host14、host15
那么就分别以host13、host14、host15执行

echo "- - -" > /sys/class/scsi_host/host13/scan
echo "- - -" > /sys/class/scsi_host/host14/scan
echo "- - -" > /sys/class/scsi_host/host15/scan