#centos7 创建内网yum源
#centos7 自动化安装 本地 内网 web源创建、更新 createrepo http OpenStack源部署

Elven原创 http://www.cnblogs.com/elvi/p/7657770.html

# Mady by Elven

##########################################
#环境准备

#自动化安装centos7
#下载系统镜像
#http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso
#使用ISO镜像 + ks文件自动化安装
#安装界面选择"Install CentOS7" 按TAB键进入编辑,添加自动化安装脚本 ks=http://elven.vip/ks/c7cd.ks
#按Enter开始自动化安装 #更改grub启动项,更改等待时间,更改字符界面
[ `uname -r` = *el6* ] && { Grubcfg=/boot/grub/grub.cfg; } || { Grubcfg=/boot/grub2/grub.cfg; }
echo "修改 $Grubcfg"
cp $Grubcfg{,.bak}
sed -i 's#timeout=5#timeout=2#g' $Grubcfg
sed -i 's#rhgb##g' $Grubcfg #关闭selinux、防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
sed -i '/^SELINUX=.*/c SELINUX=disabled' /etc/selinux/config
sed -i 's/^SELINUXTYPE=.*/SELINUXTYPE=disabled/g' /etc/selinux/config
grep --color=auto '^SELINUX' /etc/selinux/config
setenforce #设置hostname
hostnamectl set-hostname yum

#设置固定IP
#ifconfig #查看网卡名
NetName=ens37 #网需要设置的网卡
rm -f /etc/sysconfig/network-scripts/ifcfg-$NetName
nmcli con add con-name $NetName ifname $NetName autoconnect yes type ethernet \
     ip4 172.16.11.25/24 ipv4.dns "172.16.11.14 119.29.29.29" ipv4.gateway "172.16.11.1"
nmcli connection reload #重新加载网络

#时间同步
/usr/sbin/ntpdate ntp6.aliyun.com
echo "*/3 * * * * /usr/sbin/ntpdate ntp6.aliyun.com &> /dev/null" > /tmp/crontab
crontab /tmp/crontab #更换阿里源
mv /etc/yum.repos.d/CentOS-Base.repo{,.bak}
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo #可选
yum clean all && yum makecache #生成缓存 #--------
#我这里单独使用一个数据盘(可选)
#fdisk快速分区,新建40G
echo -e 'n\np\n1\n\n+40G\nw' | fdisk /dev/sdb
mkfs.ext4 /dev/sdb1
e2label /dev/sdb1 /www
mkdir /www
mount -t ext4 /dev/sdb1 /www
df -h|grep /dev/sdb1
#开机挂载磁盘
echo "mount -t ext4 /dev/sdb1 /www" >>/etc/rc.d/rc.local
tail - /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
#--------

#########################
#yum安装配置

#设置yum下载目录
mkdir -p /www/share/yum
cp /etc/yum.conf{,.bak}
sed -i 's#^keepcache=0#keepcache=1#' /etc/yum.conf
sed -i 's/^cachedir/#cachedir/' /etc/yum.conf
sed -ir '3 icachedir=/www/share/yum/$basearch/$releasever \n' /etc/yum.conf
head /etc/yum.conf

#升级,重启
yum update -y && reboot


##########################################

#安装createrepo,http服务
yum install createrepo httpd -y #配置http目录共享
echo '#http share
Alias /share /www/share
<Directory "/www/share">
Options Indexes FollowSymLinks
IndexOptions NameWidth=* DescriptionWidth=* FoldersFirst
IndexOptions SuppressIcon HTMLTable Charset=UTF- SuppressHTMLPreamble
Order allow,deny
Allow from all
Require all granted
</Directory>
'>/etc/httpd/conf.d/share.conf
cp /etc/httpd/conf/httpd.conf{,.bak}
echo "
ServerName localhost
#关闭版本号显示
ServerSignature Off
ServerTokens Prod
">>/etc/httpd/conf/httpd.conf
systemctl enable httpd.service
systemctl restart httpd.service
netstat -antp|grep 'httpd'
#浏览器访问 172.16.11.25/share ,能访问即正常 #创建YUM仓库
mkdir -p /www/share/centos7_rpm
createrepo -p /www/share/centos7_rpm/ #创建源文件
echo "
[My_share]
name=My_Souce
baseurl=http://172.16.11.25/share/centos7_rpm/
gpgcheck=
enabled=
cost=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
">/www/share/Lan7.repo ## RPM更新
# yum缓存的rpm包拷贝到/www/share/centos7_rpm/
find /www/share/yum -name *.rpm |sed -r 's#.*#mv & /www/share/centos7_rpm/\n#'|bash
# #下载没有安装过的包
# yum install --downloadonly --downloaddir=/www/share/centos7_rpm/ -y 包名称
# #下载已经安装过的包
# yum reinstall --downloadonly --downloaddir=/www/share/centos7_rpm/ -y 包名称 #更新源
createrepo --update -p /www/share/centos7_rpm/ ##########################################
#rpm下载、yum更新 shell
echo '#!/bin/sh
[ $# = ] && {
echo "更新源"
/usr/bin/createrepo --update -p /www/share/centos7_rpm/
} || {
echo "yum下载"
yum install --downloadonly --downloaddir=/www/share/centos7_rpm/ -y $*
echo "更新源"
/usr/bin/createrepo --update -p /www/share/centos7_rpm/
}
'>yumd.sh
ln -s $(pwd)/yumd.sh /usr/bin/yumd
chmod +x yumd.sh # 执行 yumd 更新源
# 执行 yumd 软件1 软件2 ,就会下载相关软件并更新源 ########################################## #客户端使用源
wget -O /etc/yum.repos.d/Lan7.repo http://172.16.11.25/share/Lan7.repo #客户端测试,查看源名称
yum install httpd

##########################################

#下载OpenStack安装包(仅作为参考,根据需求添加其它组件)
yum install centos-release-openstack-pike -y #安装OpenStack官方源
yum install --downloadonly --downloaddir=/www/share/centos7_rpm/ -y \
python-openstackclient openstack-selinux python-openstackclient python2-PyMySQL \
openstack-utils \
mariadb mariadb-server mariadb-galera-server python2-PyMySQL \
erlang socat rabbitmq-server \
openstack-keystone httpd mod_wsgi memcached python-memcached \
apr apr-util \
openstack-glance python-glance \
openstack-nova-api openstack-nova-conductor \
openstack-nova-console openstack-nova-novncproxy \
openstack-nova-scheduler openstack-nova-placement-api \
openstack-nova-compute python-openstackclient openstack-selinux \
openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge python-neutronclient ebtables ipset \
openstack-neutron-linuxbridge ebtables ipset \
openstack-dashboard \
openstack-cinder targetcli python-keystone lvm2 \
corosync pacemaker pcs fence-agents resource-agents \

openstack-neutron-linuxbridge

#更新源
createrepo --update -p /www/share/centos7_rpm/

##########################################


#Elven原创 http://www.cnblogs.com/elvi/p/7657770.html

#centos7 创建内网yum源 OpenStack源部署的更多相关文章

  1. 搭建内网Yum源

    搭建内网yum源 阅读(2,238) 一:因内网服务器 众多,当统一安装一些比较大的rpm的时候全部从外网下载就比较慢,而且还占用了一定的出口流量,因此在内网部署了一台yum服务器,将阿里云的epel ...

  2. 【转】内网yum源搭建

    我们内网yum要玩的话,先加hosts,然后找运维要CentOS_base.repo这个文件,然后yum clean all   && yum makecache ========== ...

  3. 公司内网yum源

    新增yum源配置文件 vi /etc/yum.repos.d/szyum.repo 内容如下: #[redhat6.3] [base] name=redhat63 baseurl=http://10. ...

  4. 利用nginx 来实现内网yum源(反向代理)

    简介 在项目部署时,尤其是在政府企业,对于外网简直是奢望,但是对于运维来说,没有外网的话只能自建yum源.我今天来说的是一种简单的自建yum源方法,前提是必须有一台内外网都有的机器,我们一般称为前置机 ...

  5. RadHat搭建内网YUM源server

    前言:随着内网linuxserver越来越多,在每台server上安装软件.都要先把安装盘上传上去.在配置本地yum服务,即麻烦又费时.能够在内网的一台linuxserver上安装yum服务,然后其它 ...

  6. linux 配置内网yum源

    一.yum服务器端配置1.安装FTP软件#yum install vsftpd #service vsftpd start#chkconfig --add vsftpd#chkconfig vsftp ...

  7. Centos7.2内网环境安装MySQL5.7.24

    1.配置本地yum源 内网环境,首先需要配置本地yum源,以解决MySQL的依赖安装,具体参考该文:点击打开 2.查看服务器环境 uname -a 3.去官网下载MySQL安装包 MySQL官网网址: ...

  8. 搭建基于HTTP协议内网yum仓库

    目录 1. 前言 2. 把rpm包下载到本地 3. 配置nginx对外提供服务 4. 配置本地repo文件 5. 生成repodata信息 6. 检查及使用 7. 对管理机器上的仓库进行更新 参考资料 ...

  9. windows(Linux)创建”内网穿透“工具(通过自定义域名访问部署于内网的 web 服务,可以用于调试微信支付,支付宝支付,微信公众号等开发项目)

    此方法需要自有服务器和域名,如果没有这些的开发者, 可以参考钉钉提供的内网穿透方式:https://www.cnblogs.com/pxblog/p/13862376.html 一.准备工作 1.域名 ...

随机推荐

  1. call()与apply() 改变this指向

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px Consolas; color: #a5b2b9 } span.Apple-tab-span ...

  2. 面试中常用排序算法实现(Java)

    当我们进行数据处理的时候,往往需要对数据进行查找操作,一个有序的数据集往往能够在高效的查找算法下快速得到结果.所以排序的效率就会显的十分重要,本篇我们将着重的介绍几个常见的排序算法,涉及如下内容: 排 ...

  3. python 使用小结

    使用Python 已经一段时间了 ,现将python 中可能用到的技巧和一些知识点分享如下. 1.lambda使用. Lambda函数,是一个匿名函数,创建语法: lambda parameters: ...

  4. 使用angular4和asp.net core 2 web api做个练习项目(二), 这部分都是angular

    上一篇: http://www.cnblogs.com/cgzl/p/7755801.html 完成client.service.ts: import { Injectable } from '@an ...

  5. ngRoute路径出现#!#解决方案

    在做一个开源项目的时候,使用了"angular-route": "^1.6.4",发现设置了<a>标签的href后,点击后路径出现的不是#/,而是# ...

  6. pyinstaller生成exe文件失败

    我的python是3.6,目前pyinstaller并不支持,有网友建议在Github上下载源码,用pyinstaller_develop文件夹替换pyinstaller安装位置下同名文件夹.这样做之 ...

  7. zookeeper启动异常

    zookeeper启动报异常 java.io.EOFException  at java.io.DataInputStream.readInt(DataInputStream.java:392) 遇到 ...

  8. TinyXML2的使用

    -----------------------------------------------------------------2015年7月21日16:37:53----------------- ...

  9. [Bayesian] “我是bayesian我怕谁”系列 - Markov and Hidden Markov Models

    循序渐进的学习步骤是: Markov Chain --> Hidden Markov Chain --> Kalman Filter --> Particle Filter Mark ...

  10. Mayor's posters

    Mayor's posters Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Sub ...