NIS : Configure Secondary Server2021/03/11 |
Configure NIS Secondary Server to continue NIS service if NIS Primary Server would be down.
This example is based on the environment like follows. +----------------------+ | +----------------------+ | [ NIS Primary ] |10.0.0.30 | 10.0.0.31| [ NIS Secondary ] | | dlp.srv.world +----------+----------+ yp01.srv.world | | | | | | +----------------------+ | +----------------------+ +----------------------+ | | [ NIS Client ] |10.0.0.51 | | node01.srv.world +----------+ | | +----------------------+ |
[1] | |
[2] | Install Ypserv and Configure NIS Secondary Server Host. |
[root@yp01 ~]#
dnf -y install ypserv rpcbind
[root@yp01 ~]#
vi /var/yp/securenets # create new # specify range of network you allow to access NIS clients 255.0.0.0 127.0.0.0 255.255.255.0 10.0.0.0
[root@yp01 ~]#
systemctl enable --now rpcbind ypserv ypxfrd yppasswdd nis-domainname
# synchronize databases with NIS primary server [root@yp01 ~]# /usr/lib64/yp/ypinit -s dlp.srv.world We will need a few minutes to copy the data from dlp.srv.world. Transferring group.bygid... Trying ypxfrd ... success ... ... At this point, make sure that /etc/passwd and /etc/group have been edited so that when the NIS is activated, the data bases you have just created will be used, instead of the /etc ASCII files. |
[3] | If SELinux is enabled on NIS Secondary Host, change boolean settings. |
[root@yp01 ~]# setsebool -P nis_enabled on [root@yp01 ~]# setsebool -P domain_can_mmap_files on
|
[4] | If Firewalld is running on NIS Secondary Host, it needs to allow NIS services or ports. Some services listen different ports when they restart, so fix ports for them and allow by Firewalld. |
[root@yp01 ~]#
vi /etc/sysconfig/network # add to the end YPSERV_ARGS="-p 944" YPXFRD_ARGS="-p 945"
[root@yp01 ~]#
vi /etc/sysconfig/yppasswdd # add like follows YPPASSWDD_ARGS= "--port 950"
[root@yp01 ~]#
[root@yp01 ~]# systemctl restart rpcbind ypserv ypxfrd yppasswdd
firewall-cmd --add-service=rpc-bind --permanent [root@yp01 ~]# firewall-cmd --add-port={944-951/tcp,944-951/udp} --permanent [root@yp01 ~]# firewall-cmd --reload |
[5] |
NIS Primary Host is also required to be a NIS client.
Configure NIS Primary Host as a NIS Client, refer to here. |
[6] | Configure on NIS Primary Host for new NIS Secondary Host. |
[root@dlp ~]#
vi /var/yp/Makefile # line 23: change NOPUSH= false
# update NIS databases [root@dlp ~]# /usr/lib64/yp/ypinit -m At this point, we have to construct a list of the hosts which will run NIS servers. dlp.srv.world is in the list of NIS server hosts. Please continue to add the names for the other hosts, one per line. When you are done with the list, type a <control D>. next host to add: dlp.srv.world next host to add: yp01.srv.world # specify NIS Secondary next host to add: # Ctrl + D key The current list of NIS servers looks like this: dlp.srv.world yp01.srv.world Is this correct? [y/n: y] y We need a few minutes to build the databases... Building /var/yp/srv.world/ypservers... Running /var/yp/Makefile... gmake[1]: Entering directory '/var/yp/srv.world' Updating passwd.byname... Updating passwd.byuid... Updating group.byname... Updating group.bygid... Updating hosts.byname... Updating hosts.byaddr... Updating rpc.byname... Updating rpc.bynumber... Updating services.byname... Updating services.byservicename... Updating netid.byname... Updating protocols.bynumber... Updating protocols.byname... Updating mail.aliases... gmake[1]: Leaving directory '/var/yp/srv.world' dlp.srv.world has been set up as a NIS master server. Now you can run ypinit -s dlp.srv.world on all slave server. |
[7] | Configure NIS Client to bind NIS Secondary Server, too. That's OK, NIS services will be continue by NIS Secondary Server even if NIS Primary Server would be down. |
[root@node01 ~]#
vi /etc/yp.conf # add NIS Secondary Host to the end # [domain (NIS domain) server (NIS server)] domain srv.world server dlp.srv.world
domain srv.world server yp01.srv.world
systemctl restart ypbind |
Sponsored Link |