dedecms 做门户网站深圳做网站的公司有哪些
dedecms 做门户网站,深圳做网站的公司有哪些,温州网站建设有限公司,网站建设工作室拍照#expect脚本在自动化部署中的具体应用 expect脚本是一个非常好的交互式应用脚本#xff0c;在自动化部署中#xff0c;可以使用这个脚本来实现全自动的自动化部署。下面是一些具体的应用案例。
场景一#xff1a;自动安装mysql
可以使用expect脚本来实现mysql自动安装在自动化部署中可以使用这个脚本来实现全自动的自动化部署。下面是一些具体的应用案例。
场景一自动安装mysql
可以使用expect脚本来实现mysql自动安装提取初始化密码并使用初始化密码登录系统然后修改密码再执行数据库初始化操作。
send unzip mysql.zip\n
expect #
send rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm\n
sleep 10
expect ]#
send rpm -ivh numactl-2.0.7-8.el6.x86_64.rpm\n
sleep 10
expect ]#
send tar -zxvf mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz -C /usr/local\n
sleep 60
expect ]#
send mv /usr/local/mysql-5.7.42-linux-glibc2.12-x86_64 /usr/local/mysql\n
sleep 3
expect #
send groupadd mysql\n
expect #
send useradd -g mysql -s /bin/false mysql\n
expect #
send mkdir -p /data/mysql\n
expect #
send chown -fR mysql:mysql /data/mysql\n
expect #
send cd /usr/local/mysql/bin/\n
expect #
send ./mysqld --defaults-file/etc/my.cnf --initialize --usermysql --basedir/usr/local/mysql --datadir/data/mysql\n
expect #
send ln -s /usr/local/mysql/bin/mysql /usr/sbin/mysql\n
expect #
send /bin/cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql\n
expect #
send chmod x /etc/init.d/mysql\n
expect #
send cd /etc/rc.d/init.d\n
expect #
send chkconfig --add mysql\n
expect #
send chkconfig mysql on\n
expect #
send /etc/init.d/mysql start\n
expect #
send cd /data/mysql\n
expect #
send cat error.log | grep password| awk \{ print \\\$NF}\\n
expect {-re {password is generated for rootlocalhost: (.)} {set myPassword \$expect_out(1,string)}timeout {puts 未找到匹配的密码字符串}
}
expect #
puts MySQL初始密码为\$myPassword
send mysql -uroot -p\n
expect password:
send \$myPassword\n
expect mysql
send set password password(wahaham#T98kjhss);\n
expect mysql
send grant all privileges on *.* to root% identified by wahaham#T98kjhss;\n
expect mysql
send flush privileges;\n
expect mysql
send create database wahaha;\n
expect mysql
send use wahaha;\n
expect mysql
send set names utf8;\n
expect mysql
send source /opt/mysql/wahaha_mysql.sql;\n
expect mysql
send exit\n
expect # 场景2 安装JDK
解压安装JDK并将JAVA_HOME相关变量写入/etc/profile中。
send cd /usr/java; tar -zxvf jdk1.8.0_191.tar.gz\n
expect #
send echo JAVA_HOME\/usr\/java\/jdk1.8.0_191 /etc/profile\n
expect #
send echo JRE_HOME\\\${JAVA_HOME}\/jre /etc/profile\n
expect #
send echo CLASSPATH.:\\\${JAVA_HOME}\/lib:\\\${JRE_HOME}\/lib /etc/profile\n
expect #
send echo PATH\\\${JAVA_HOME}\/bin:\\\$PATH /etc/profile\n
expect #
send echo export JAVA_HOME JRE_HOME CLASSPATH PATH /etc/profile\n
expect #
send source /etc/profile\n
expect #
send java -version\n
expect # 结论
使用同样的方法我们可以实现任意安装过程包括tomcat、rediskafaka 甚至Kubernetes。通过expect脚本一切命令化皆可自动化。expect与jenkins结合我们可以实现绝大部分系统的自动化安装部署这将给系统运维带来极大的便利。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/87763.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!