mirror of
				https://github.com/xcat2/confluent.git
				synced 2025-10-31 03:12:31 +00:00 
			
		
		
		
	Incorporate block device into retry loop
Have block devices checked for identity information in a loop with network source search. Block devices may be delayed for various reasons. The previous method could be bypassed by fast block device cutting off slow device enumeration. It also incurred a delay for the network install case.
This commit is contained in:
		| @@ -6,77 +6,74 @@ done | ||||
| mkdir -p /custom-installation | ||||
| cp -a /opt/confluent /custom-installation | ||||
| touch /custom-installation/confluent/confluent.info | ||||
| TRIES=5 | ||||
| while [ ! -e /dev/disk/by-label ] && [ $TRIES -gt 0 ]; do | ||||
|     sleep 2 | ||||
|     TRIES=$((TRIES - 1)) | ||||
| done | ||||
| if [ -e /dev/disk/by-label/CNFLNT_IDNT ]; then | ||||
|     tmnt=/tmp/idntmnt | ||||
|     mkdir -p /tmp/identdata/ | ||||
|     mkdir -p $tmnt | ||||
|     tcfg=/tmp/idnttmp | ||||
|     mount /dev/disk/by-label/CNFLNT_IDNT $tmnt | ||||
|     cp -a $tmnt/* /tmp/identdata/ | ||||
|     cd $tmnt | ||||
|     deploysrvs=$(sed -n '/^deploy_servers:/,/^[^-]/p' cnflnt.yml |grep ^-|sed -e 's/^- //'|grep -v :) | ||||
|     sed -n '/^net_cfgs:/,/^[^- ]/{/^[^- ]/!p}' cnflnt.yml |sed -n '/^-/,/^-/{/^-/!p}'| sed -e 's/^[- ]*//'> $tcfg | ||||
|     autoconfigmethod=$(grep ^ipv4_method: $tcfg) | ||||
|     autoconfigmethod=${autoconfigmethod#ipv4_method: } | ||||
|     . /scripts/functions | ||||
|     if [ "$autoconfigmethod" = "static" ]; then | ||||
|         MYIP=$(grep ^ipv4_address: $tcfg | awk '{print $2}'|sed -e s'!/.*!!') | ||||
|         v4addr=$(grep ^ipv4_address: $tcfg|cut -d: -f 2|sed -e 's/ //') | ||||
|         MYGW=$(grep ^ipv4_gateway: $tcfg | awk '{print $2}') | ||||
|         if [ "$MYGW" = "null" ]; then | ||||
|             MYGW="" | ||||
|         fi | ||||
|         MYNM=$(grep ^ipv4_netmask: $tcfg | awk '{print $2}') | ||||
|         NIC="" | ||||
|         while [ -z "$NIC" ]; do | ||||
|             for NICGUESS in $(ip link|grep LOWER_UP|grep -v LOOPBACK|cut -d ' ' -f 2 | sed -e 's/:$//'); do | ||||
|                 ip addr add dev $NICGUESS $v4addr | ||||
|                 if [ ! -z "$MYGW" ]; then | ||||
|                     ip route add default via $MYGW | ||||
|                 fi | ||||
|                 for dsrv in $deploysrvs; do | ||||
|                     if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                         deploysrvs=$dsrv | ||||
|                         NIC=$NICGUESS | ||||
| while ! grep NODENAME /custom-installation/confluent/confluent.info; do | ||||
|     if [ -e /dev/disk/by-label/CNFLNT_IDNT ]; then | ||||
|         tmnt=/tmp/idntmnt | ||||
|         mkdir -p /tmp/identdata/ | ||||
|         mkdir -p $tmnt | ||||
|         tcfg=/tmp/idnttmp | ||||
|         mount /dev/disk/by-label/CNFLNT_IDNT $tmnt | ||||
|         cp -a $tmnt/* /tmp/identdata/ | ||||
|         cd $tmnt | ||||
|         deploysrvs=$(sed -n '/^deploy_servers:/,/^[^-]/p' cnflnt.yml |grep ^-|sed -e 's/^- //'|grep -v :) | ||||
|         sed -n '/^net_cfgs:/,/^[^- ]/{/^[^- ]/!p}' cnflnt.yml |sed -n '/^-/,/^-/{/^-/!p}'| sed -e 's/^[- ]*//'> $tcfg | ||||
|         autoconfigmethod=$(grep ^ipv4_method: $tcfg) | ||||
|         autoconfigmethod=${autoconfigmethod#ipv4_method: } | ||||
|         . /scripts/functions | ||||
|         if [ "$autoconfigmethod" = "static" ]; then | ||||
|             MYIP=$(grep ^ipv4_address: $tcfg | awk '{print $2}'|sed -e s'!/.*!!') | ||||
|             v4addr=$(grep ^ipv4_address: $tcfg|cut -d: -f 2|sed -e 's/ //') | ||||
|             MYGW=$(grep ^ipv4_gateway: $tcfg | awk '{print $2}') | ||||
|             if [ "$MYGW" = "null" ]; then | ||||
|                 MYGW="" | ||||
|             fi | ||||
|             MYNM=$(grep ^ipv4_netmask: $tcfg | awk '{print $2}') | ||||
|             NIC="" | ||||
|             while [ -z "$NIC" ]; do | ||||
|                 for NICGUESS in $(ip link|grep LOWER_UP|grep -v LOOPBACK|cut -d ' ' -f 2 | sed -e 's/:$//'); do | ||||
|                     ip addr add dev $NICGUESS $v4addr | ||||
|                     if [ ! -z "$MYGW" ]; then | ||||
|                         ip route add default via $MYGW | ||||
|                     fi | ||||
|                     for dsrv in $deploysrvs; do | ||||
|                         if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                             deploysrvs=$dsrv | ||||
|                             NIC=$NICGUESS | ||||
|                             break | ||||
|                         fi | ||||
|                     done | ||||
|                     if [ -z "$NIC" ]; then | ||||
|                         ip -4 a flush dev $NICGUESS | ||||
|                     else | ||||
|                         break | ||||
|                     fi | ||||
|                 done | ||||
|                 if [ -z "$NIC" ]; then | ||||
|                     ip -4 a flush dev $NICGUESS | ||||
|                 else | ||||
|             done | ||||
|             ipconfig -d $MYIP::$MYGW:$MYNM::$NIC | ||||
|             echo $NIC > /tmp/autodetectnic | ||||
|         else | ||||
|             configure_networking | ||||
|             for dsrv in $deploysrvs; do | ||||
|                 if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                     deploysrvs=$dsrv | ||||
|                     break | ||||
|                 fi | ||||
|             done | ||||
|         done | ||||
|         ipconfig -d $MYIP::$MYGW:$MYNM::$NIC | ||||
|         echo $NIC > /tmp/autodetectnic | ||||
|         fi | ||||
|         MGR=$deploysrvs | ||||
|         NODENAME=$(grep ^nodename: /tmp/idntmnt/cnflnt.yml | awk '{print $2}') | ||||
|         echo "NODENAME: $NODENAME" >> /custom-installation/confluent/confluent.info | ||||
|         echo "MANAGER: $MGR" >> /custom-installation/confluent/confluent.info | ||||
|         echo "EXTMGRINFO: $MGR||1" >> /custom-installation/confluent/confluent.info | ||||
|         hmackeyfile=/tmp/cnflnthmackeytmp | ||||
|         echo -n $(grep ^apitoken: cnflnt.yml|awk '{print $2}') > $hmackeyfile | ||||
|         cd - | ||||
|         umount $tmnt | ||||
|     else | ||||
|         configure_networking | ||||
|         for dsrv in $deploysrvs; do | ||||
|             if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                 deploysrvs=$dsrv | ||||
|                 break | ||||
|             fi | ||||
|         done | ||||
|     fi | ||||
|     MGR=$deploysrvs | ||||
|     NODENAME=$(grep ^nodename: /tmp/idntmnt/cnflnt.yml | awk '{print $2}') | ||||
|     echo "NODENAME: $NODENAME" >> /custom-installation/confluent/confluent.info | ||||
|     echo "MANAGER: $MGR" >> /custom-installation/confluent/confluent.info | ||||
|     echo "EXTMGRINFO: $MGR||1" >> /custom-installation/confluent/confluent.info | ||||
|     hmackeyfile=/tmp/cnflnthmackeytmp | ||||
|     echo -n $(grep ^apitoken: cnflnt.yml|awk '{print $2}') > $hmackeyfile | ||||
|     cd - | ||||
|     umount $tmnt | ||||
| else | ||||
|     while ! grep NODENAME /custom-installation/confluent/confluent.info; do | ||||
|         /opt/confluent/bin/copernicus -t > /custom-installation/confluent/confluent.info | ||||
|     done | ||||
|     fi | ||||
| done | ||||
| if [ -z "$MGR" ]; then | ||||
|     MGR="[$(grep MANAGER: /custom-installation/confluent/confluent.info | head -n 1 | awk '{print $2}')]" | ||||
| fi | ||||
| osprofile=$(sed -e 's/.*osprofile=//' -e 's/ .*//' /proc/cmdline) | ||||
|   | ||||
| @@ -6,77 +6,75 @@ done | ||||
| mkdir -p /custom-installation | ||||
| cp -a /opt/confluent /custom-installation | ||||
| touch /custom-installation/confluent/confluent.info | ||||
| TRIES=5 | ||||
| while [ ! -e /dev/disk/by-label ] && [ $TRIES -gt 0 ]; do | ||||
|     sleep 2 | ||||
|     TRIES=$((TRIES - 1)) | ||||
| done | ||||
| if [ -e /dev/disk/by-label/CNFLNT_IDNT ]; then | ||||
|     tmnt=/tmp/idntmnt | ||||
|     mkdir -p /tmp/identdata/ | ||||
|     mkdir -p $tmnt | ||||
|     tcfg=/tmp/idnttmp | ||||
|     mount /dev/disk/by-label/CNFLNT_IDNT $tmnt | ||||
|     cp -a $tmnt/* /tmp/identdata/ | ||||
|     cd $tmnt | ||||
|     deploysrvs=$(sed -n '/^deploy_servers:/,/^[^-]/p' cnflnt.yml |grep ^-|sed -e 's/^- //'|grep -v :) | ||||
|     sed -n '/^net_cfgs:/,/^[^- ]/{/^[^- ]/!p}' cnflnt.yml |sed -n '/^-/,/^-/{/^-/!p}'| sed -e 's/^[- ]*//'> $tcfg | ||||
|     autoconfigmethod=$(grep ^ipv4_method: $tcfg) | ||||
|     autoconfigmethod=${autoconfigmethod#ipv4_method: } | ||||
|     . /scripts/functions | ||||
|     if [ "$autoconfigmethod" = "static" ]; then | ||||
|         MYIP=$(grep ^ipv4_address: $tcfg | awk '{print $2}'|sed -e s'!/.*!!') | ||||
|         v4addr=$(grep ^ipv4_address: $tcfg|cut -d: -f 2|sed -e 's/ //') | ||||
|         MYGW=$(grep ^ipv4_gateway: $tcfg | awk '{print $2}') | ||||
|         if [ "$MYGW" = "null" ]; then | ||||
|             MYGW="" | ||||
|         fi | ||||
|         MYNM=$(grep ^ipv4_netmask: $tcfg | awk '{print $2}') | ||||
|         NIC="" | ||||
|         while [ -z "$NIC" ]; do | ||||
|             for NICGUESS in $(ip link|grep LOWER_UP|grep -v LOOPBACK|cut -d ' ' -f 2 | sed -e 's/:$//'); do | ||||
|                 ip addr add dev $NICGUESS $v4addr | ||||
|                 if [ ! -z "$MYGW" ]; then | ||||
|                     ip route add default via $MYGW | ||||
|                 fi | ||||
|                 for dsrv in $deploysrvs; do | ||||
|                     if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                         deploysrvs=$dsrv | ||||
|                         NIC=$NICGUESS | ||||
| MGR="" | ||||
| while ! grep NODENAME /custom-installation/confluent/confluent.info; do | ||||
|     if [ -e /dev/disk/by-label/CNFLNT_IDNT ]; then | ||||
|         tmnt=/tmp/idntmnt | ||||
|         mkdir -p /tmp/identdata/ | ||||
|         mkdir -p $tmnt | ||||
|         tcfg=/tmp/idnttmp | ||||
|         mount /dev/disk/by-label/CNFLNT_IDNT $tmnt | ||||
|         cp -a $tmnt/* /tmp/identdata/ | ||||
|         cd $tmnt | ||||
|         deploysrvs=$(sed -n '/^deploy_servers:/,/^[^-]/p' cnflnt.yml |grep ^-|sed -e 's/^- //'|grep -v :) | ||||
|         sed -n '/^net_cfgs:/,/^[^- ]/{/^[^- ]/!p}' cnflnt.yml |sed -n '/^-/,/^-/{/^-/!p}'| sed -e 's/^[- ]*//'> $tcfg | ||||
|         autoconfigmethod=$(grep ^ipv4_method: $tcfg) | ||||
|         autoconfigmethod=${autoconfigmethod#ipv4_method: } | ||||
|         . /scripts/functions | ||||
|         if [ "$autoconfigmethod" = "static" ]; then | ||||
|             MYIP=$(grep ^ipv4_address: $tcfg | awk '{print $2}'|sed -e s'!/.*!!') | ||||
|             v4addr=$(grep ^ipv4_address: $tcfg|cut -d: -f 2|sed -e 's/ //') | ||||
|             MYGW=$(grep ^ipv4_gateway: $tcfg | awk '{print $2}') | ||||
|             if [ "$MYGW" = "null" ]; then | ||||
|                 MYGW="" | ||||
|             fi | ||||
|             MYNM=$(grep ^ipv4_netmask: $tcfg | awk '{print $2}') | ||||
|             NIC="" | ||||
|             while [ -z "$NIC" ]; do | ||||
|                 for NICGUESS in $(ip link|grep LOWER_UP|grep -v LOOPBACK|cut -d ' ' -f 2 | sed -e 's/:$//'); do | ||||
|                     ip addr add dev $NICGUESS $v4addr | ||||
|                     if [ ! -z "$MYGW" ]; then | ||||
|                         ip route add default via $MYGW | ||||
|                     fi | ||||
|                     for dsrv in $deploysrvs; do | ||||
|                         if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                             deploysrvs=$dsrv | ||||
|                             NIC=$NICGUESS | ||||
|                             break | ||||
|                         fi | ||||
|                     done | ||||
|                     if [ -z "$NIC" ]; then | ||||
|                         ip -4 a flush dev $NICGUESS | ||||
|                     else | ||||
|                         break | ||||
|                     fi | ||||
|                 done | ||||
|                 if [ -z "$NIC" ]; then | ||||
|                     ip -4 a flush dev $NICGUESS | ||||
|                 else | ||||
|             done | ||||
|             ipconfig -d $MYIP::$MYGW:$MYNM::$NIC | ||||
|             echo $NIC > /tmp/autodetectnic | ||||
|         else | ||||
|             configure_networking | ||||
|             for dsrv in $deploysrvs; do | ||||
|                 if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                     deploysrvs=$dsrv | ||||
|                     break | ||||
|                 fi | ||||
|             done | ||||
|         done | ||||
|         ipconfig -d $MYIP::$MYGW:$MYNM::$NIC | ||||
|         echo $NIC > /tmp/autodetectnic | ||||
|         fi | ||||
|         MGR=$deploysrvs | ||||
|         NODENAME=$(grep ^nodename: /tmp/idntmnt/cnflnt.yml | awk '{print $2}') | ||||
|         echo "NODENAME: $NODENAME" >> /custom-installation/confluent/confluent.info | ||||
|         echo "MANAGER: $MGR" >> /custom-installation/confluent/confluent.info | ||||
|         echo "EXTMGRINFO: $MGR||1" >> /custom-installation/confluent/confluent.info | ||||
|         hmackeyfile=/tmp/cnflnthmackeytmp | ||||
|         echo -n $(grep ^apitoken: cnflnt.yml|awk '{print $2}') > $hmackeyfile | ||||
|         cd - | ||||
|         umount $tmnt | ||||
|     else | ||||
|         configure_networking | ||||
|         for dsrv in $deploysrvs; do | ||||
|             if openssl s_client -connect $dsrv:443 > /dev/null 2>&1; then | ||||
|                 deploysrvs=$dsrv | ||||
|                 break | ||||
|             fi | ||||
|         done | ||||
|     fi | ||||
|     MGR=$deploysrvs | ||||
|     NODENAME=$(grep ^nodename: /tmp/idntmnt/cnflnt.yml | awk '{print $2}') | ||||
|     echo "NODENAME: $NODENAME" >> /custom-installation/confluent/confluent.info | ||||
|     echo "MANAGER: $MGR" >> /custom-installation/confluent/confluent.info | ||||
|     echo "EXTMGRINFO: $MGR||1" >> /custom-installation/confluent/confluent.info | ||||
|     hmackeyfile=/tmp/cnflnthmackeytmp | ||||
|     echo -n $(grep ^apitoken: cnflnt.yml|awk '{print $2}') > $hmackeyfile | ||||
|     cd - | ||||
|     umount $tmnt | ||||
| else | ||||
|     while ! grep NODENAME /custom-installation/confluent/confluent.info; do | ||||
|         /opt/confluent/bin/copernicus -t > /custom-installation/confluent/confluent.info | ||||
|     done | ||||
|     fi | ||||
| done | ||||
| if [ -z "$MGR" ]; then | ||||
|     MGR="[$(grep MANAGER: /custom-installation/confluent/confluent.info | head -n 1 | awk '{print $2}')]" | ||||
| fi | ||||
| osprofile=$(sed -e 's/.*osprofile=//' -e 's/ .*//' /proc/cmdline) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user