migrating k8s,ELK,mongodb,mysql

This commit is contained in:
z4yx 2020-04-05 21:24:24 +08:00
parent 19fd75324e
commit 55f9d8f519
5 changed files with 24 additions and 168 deletions

36
ELK.sh
View File

@ -4,6 +4,7 @@ set -o pipefail
_here=`dirname $(realpath $0)`
apt_sync="${_here}/apt-sync.py"
yum_sync="${_here}/yum-sync.py"
BASE_PATH="${TUNASYNC_WORKING_DIR}"
BASE_URL=${TUNASYNC_UPSTREAM_URL:-"https://packages.elastic.co"}
@ -17,8 +18,6 @@ declare -A REPO_VERSIONS=(
["kibana"]="4.5 4.6"
)
mkdir -p ${YUM_PATH} ${APT_PATH}
# =================== APT repos ===============================
if [[ ! -z ${DRY_RUN:-} ]]; then
export APT_DRY_RUN=1
@ -37,35 +36,8 @@ done
# ================ YUM/DNF repos ===============================
cache_dir="/tmp/yum-elk-cache/"
cfg="/tmp/yum-elk.conf"
cat <<EOF > ${cfg}
[main]
keepcache=0
EOF
for repo in "${!REPO_VERSIONS[@]}"; do
for version in ${REPO_VERSIONS[$repo]}; do
cat <<EOF >> ${cfg}
[${repo}-${version}]
name=${repo} ${version} packages
baseurl=${BASE_URL}/${repo}/${version}/centos
repo_gpgcheck=0
gpgcheck=0
enabled=1
sslverify=0
EOF
versions=${REPO_VERSIONS[$repo]}
components=${versions// /,}
"$yum_sync" "${BASE_URL}/${repo}/@{comp}/centos/" 7 "$components" x86_64 "${repo}-@{comp}" "$YUM_PATH"
done
done
if [[ -z ${DRY_RUN:-} ]]; then
reposync -c $cfg -d -p ${YUM_PATH} -e ${cache_dir}
for repo in "${!REPO_VERSIONS[@]}"; do
for version in ${REPO_VERSIONS[$repo]}; do
createrepo --update -v -c ${cache_dir} -o ${YUM_PATH}/${repo}-${version}/ ${YUM_PATH}/${repo}-${version}/
done
done
fi
rm $cfg

View File

@ -14,7 +14,7 @@ YUM_PATH="${BASE_PATH}/yum"
UBUNTU_PATH="${BASE_PATH}/ubuntu/"
DEBIAN_PATH="${BASE_PATH}/debian/"
"$yum_sync" "${UPSTREAM}/el/@{os_ver}/x86_64/" 6-8 "gitlab" x86_64 "el@{os_ver}" "$YUM_PATH"
"$yum_sync" "${UPSTREAM}/el/@{os_ver}/@{arch}/" 6-8 "gitlab" x86_64 "el@{os_ver}" "$YUM_PATH"
echo "YUM finished"
"$apt_sync" "${UPSTREAM}/ubuntu" @ubuntu-lts main amd64,i386 "$UBUNTU_PATH"

View File

@ -5,6 +5,7 @@ set -o pipefail
_here=`dirname $(realpath $0)`
apt_sync="${_here}/apt-sync.py"
yum_sync="${_here}/yum-sync.py"
BASE_PATH="${TUNASYNC_WORKING_DIR}"
BASE_URL=${TUNASYNC_UPSTREAM_URL:-"https://packages.cloud.google.com"}
@ -14,38 +15,11 @@ APT_PATH="${BASE_PATH}/apt"
EL_VERSIONS=(kubernetes-el7-aarch64 kubernetes-el7-armhfp kubernetes-el7-x86_64)
mkdir -p ${YUM_PATH} ${APT_PATH}
# =================== APT repos ===============================
"$apt_sync" "${BASE_URL}/apt" "kubernetes-@{debian-current},kubernetes-@{ubuntu-lts}" main amd64,i386,armhf,arm64 "$APT_PATH"
echo "APT finished"
# =================== YUM/DNF repos ==========================
base_url="${BASE_URL}/yum/repos"
cache_dir="/tmp/yum-k8s-cache/"
cfg="/tmp/yum-k8s.conf"
if [[ -z ${DRY_RUN:-} ]]; then
for elver in ${EL_VERSIONS[@]}; do
echo "=== Syncing $elver"
cat << EOF > $cfg
[main]
keepcache=0
[${elver}]
name=${elver}
baseurl=${base_url}/${elver}/
enabled=1
EOF
arch=(${elver//-/ })
arch=${arch[-1]}
reposync -a "$arch" -c "$cfg" -d -p "${YUM_PATH}" -e "$cache_dir"
[[ -d "${YUM_PATH}/${elver}" ]] || mkdir "${YUM_PATH}/${elver}"
createrepo --update -v -c "$cache_dir" -o "${YUM_PATH}/${elver}/" "${YUM_PATH}/${elver}/"
done
fi
"$yum_sync" "${BASE_URL}/yum/repos/@{os_ver}/" 7 kubernetes x86_64,armhfp,aarch64 "@{comp}-el@{os_ver}-@{arch}" "$YUM_PATH"
echo "YUM finished"

View File

@ -3,66 +3,29 @@ set -e
_here=`dirname $(realpath $0)`
apt_sync="${_here}/apt-sync.py"
yum_sync="${_here}/yum-sync.py"
BASE_PATH="${TUNASYNC_WORKING_DIR}"
BASE_URL=${TUNASYNC_UPSTREAM_URL:-"http://repo.mongodb.org"}
YUM_PATH="${BASE_PATH}/yum"
APT_PATH="${BASE_PATH}/apt"
RHEL_VERSIONS=("6" "7" "8")
MONGO_VERSIONS=("4.2" "4.0" "3.6")
STABLE_VERSION="4.2"
YUM_PATH="${BASE_PATH}/yum"
APT_PATH="${BASE_PATH}/apt"
UBUNTU_PATH="${APT_PATH}/ubuntu"
DEBIAN_PATH="${APT_PATH}/debian"
mkdir -p $UBUNTU_PATH $DEBIAN_PATH $YUM_PATH
cache_dir="/tmp/yum-mongodb-cache/"
cfg="/tmp/mongodb-yum.conf"
cat <<EOF > ${cfg}
[main]
keepcache=0
EOF
for mgver in ${MONGO_VERSIONS[@]}; do
for elver in ${RHEL_VERSIONS[@]}; do
# Check if mongo/os version combination exists
wget -q --spider "https://repo.mongodb.org/yum/redhat/$elver/mongodb-org/$mgver/" \
&& cat <<EOF >> ${cfg}
[el$elver-${mgver}]
name=el$elver-${mgver}
baseurl=https://repo.mongodb.org/yum/redhat/$elver/mongodb-org/${mgver}/x86_64/
repo_gpgcheck=0
gpgcheck=0
enabled=1
sslverify=0
EOF
done
components=$(printf ",%s" "${MONGO_VERSIONS[@]}")
components=${components:1}
"$yum_sync" "${BASE_URL}/yum/redhat/@{os_ver}/mongodb-org/@{comp}/@{arch}/" 6-8 "$components" x86_64 "el@{os_ver}-@{comp}" "$YUM_PATH"
pushd "${YUM_PATH}"
for stable in el*-${STABLE_VERSION}; do
# e.g. "el8" -> "el8-4.2"
ln -fsn $stable ${stable%-$STABLE_VERSION}
done
if [[ -z ${DRY_RUN:-} ]]; then
reposync -c $cfg -d -p ${YUM_PATH} -e $cache_dir
for mgver in ${MONGO_VERSIONS[@]}; do
for elver in ${RHEL_VERSIONS[@]}; do
[[ -e "${YUM_PATH}/el$elver-$mgver/" ]] && createrepo --update -v -c $cache_dir -o "${YUM_PATH}/el$elver-$mgver/" "${YUM_PATH}/el$elver-$mgver/"
done
done
fi
for elver in ${RHEL_VERSIONS[@]}; do
[[ -e "${YUM_PATH}/el$elver-${STABLE_VERSION}" ]] && (cd "${YUM_PATH}" && ln -fsn "el$elver-${STABLE_VERSION}" el$elver)
done
rm $cfg
if [[ ! -z ${DRY_RUN:-} ]]; then
export APT_DRY_RUN=1
fi
popd
echo "YUM finished"
base_url="http://repo.mongodb.org"
for mgver in ${MONGO_VERSIONS[@]}; do

View File

@ -5,6 +5,7 @@ set -o pipefail
_here=`dirname $(realpath $0)`
apt_sync="${_here}/apt-sync.py"
yum_sync="${_here}/yum-sync.py"
BASE_PATH="${TUNASYNC_WORKING_DIR}"
BASE_URL="${TUNASYNC_UPSTREAM_URL:-"https://repo.mysql.com"}"
@ -32,63 +33,9 @@ echo "Ubuntu finished"
echo "Debian finished"
# =================== YUM/DNF repos ==========================
cache_dir="/tmp/yum-mysql-cache/"
cfg="/tmp/yum-mysql.conf"
cat <<EOF > ${cfg}
[main]
keepcache=0
EOF
for elver in "6" "7" "8"; do
cat << EOF >> $cfg
[mysql-connectors-community-el${elver}]
name=MySQL Connectors Community
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/$elver/x86_64/
enabled=1
[mysql-tools-community-el${elver}]
name=MySQL Tools Community
baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/$elver/x86_64/
enabled=1
[mysql80-community-el${elver}]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/$elver/x86_64/
enabled=1
EOF
done
for elver in "6" "7"; do
cat << EOF >> $cfg
[mysql56-community-el${elver}]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/$elver/x86_64/
enabled=1
[mysql57-community-el${elver}]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/$elver/x86_64/
enabled=1
EOF
done
if [[ -z ${DRY_RUN:-} ]]; then
reposync -c $cfg -d -p ${YUM_PATH} -e $cache_dir
for repo in "mysql56-community" "mysql57-community"; do
for elver in "6" "7"; do
createrepo --update -v -c $cache_dir -o ${YUM_PATH}/${repo}-el${elver}/ ${YUM_PATH}/${repo}-el${elver}/
done
done
for repo in "mysql-connectors-community" "mysql-tools-community" "mysql80-community"; do
for elver in "6" "7" "8"; do
createrepo --update -v -c $cache_dir -o ${YUM_PATH}/${repo}-el${elver}/ ${YUM_PATH}/${repo}-el${elver}/
done
done
fi
rm $cfg
COMPONENTS="mysql-connectors-community,mysql-tools-community,mysql-8.0-community,mysql-5.6-community,mysql-5.7-community"
"$yum_sync" "${BASE_URL}/yum/@{comp}/el/@{os_ver}/@{arch}/" 6-8 "$COMPONENTS" x86_64 "@{comp}-el@{os_ver}" "$YUM_PATH"
echo "YUM finished"
# --------- dev.mysql.com --------