部署-离线安装包制作方法

离线安装包制作与安装

配置固定IP

# 配置固定IP地址
echo "reset ip --------------------------------------------"
cat << EOF | tee /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#BOOTPROTO=dhcp
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
#UUID=ddbb18f9-992c-4883-b298-0b37c40db4d7
DEVICE=ens33
ONBOOT=yes

GATEWAY=192.168.146.2
IPADDR=192.168.146.130
NETMASK=255.255.255.0
DNS1=192.168.146.2
DNS2=1.2.4.8
EOF
echo "reset ip --------------------------------------------"

修改主机名

# 设置主机名
hostnamectl set-hostname ct130

离线安装Postgres

  • 在线配置yum缓存
# 参考 https://codeantenna.com/a/BUZPGTrCvY
# 修改本地yum配置文件
mkdir -p /root/postgres
sed -i '/^keepcache=0/ckeepcache=1' /etc/yum.conf
sed -i '/^cachedir=/ccachedir=/root/postgres' /etc/yum.conf
# 还原本地配置文件
sed -i '/^keepcache=1/ckeepcache=0' /etc/yum.conf
sed -i '/^cachedir=/ccachedir=/var/cache/yum/$basearch/$releasever' /etc/yum.conf
# 创建本地仓库
cd postgres
createrepo .
  • 在线安装Postgres
sudo yum install -y vim tree
sudo yum install -y gcc make subversion gcc-c++ sqlite-devel libxml2 libxml2-devel python-devel numpy swig expat-devel libcurl-devel
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql14-server
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14
sudo yum install -y wget net-tools epel-release
sudo yum install -y postgis32_14.x86_64
  • 在线配置Postgres
# 配置1
echo "listen_addresses = '*'" >> /var/lib/pgsql/14/data/postgresql.conf
# 关闭
sed -i "/^listen_addresses = '*'$/c#listen_addresses = '*'" /var/lib/pgsql/14/data/postgresql.conf
# 开启
sed -i "/^#listen_addresses = '*'$/clisten_addresses = '*'" /var/lib/pgsql/14/data/postgresql.conf

# 配置2
安装
echo "host    all             all             all                     md5" >> /var/lib/pgsql/14/data/pg_hba.conf
开启
sed -i '/#host    all             all             all                     md5/chost    all             all             all                     md5' /var/lib/pgsql/14/data/pg_hba.conf
关闭
sed -i '/host    all             all             all                     md5/c#host    all             all             all                     md5' /var/lib/pgsql/14/data/pg_hba.conf

在线安装脚本

cat << EOF | tee /root/init.sh
sudo systemctl stop firewalld
mkdir -p /root/postgres
sed -i '/^keepcache=0/ckeepcache=1' /etc/yum.conf
sed -i '/^cachedir=/ccachedir=/root/postgres' /etc/yum.conf
sudo yum install -y vim tree
sudo yum install -y gcc make subversion gcc-c++ sqlite-devel libxml2 libxml2-devel python-devel numpy swig expat-devel libcurl-devel
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql14-server
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14
sudo yum install -y wget net-tools epel-release
sudo yum install -y postgis32_14.x86_64
# 开启访问权限
echo "listen_addresses = '*'" >> /var/lib/pgsql/14/data/postgresql.conf
sed -i '/local   all             all                                     peer/clocal   all             all                                     trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    all             all             127.0.0.1\/32            scram-sha-256/chost    all             all             127.0.0.1/32            trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    all             all             ::1\/128                 scram-sha-256/chost    all             all             ::1/128                 trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/local   replication     all                                     peer/clocal   replication     all                                     trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    replication     all             127.0.0.1\/32            scram-sha-256/chost    replication     all             127.0.0.1/32            trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    replication     all             ::1\/128                 scram-sha-256/chost    replication     all             ::1/128                 trust' /var/lib/pgsql/14/data/pg_hba.conf
echo "host    all             all             all                     md5" >> /var/lib/pgsql/14/data/pg_hba.conf
# 重启
sudo systemctl restart postgresql-14
sudo /usr/pgsql-14/bin/psql -U postgres -c "ALTER USER postgres WITH PASSWORD '@123++';"
sudo /usr/pgsql-14/bin/psql -U postgres -c 'CREATE EXTENSION postgis;'
sudo /usr/pgsql-14/bin/psql -U postgres -c 'CREATE EXTENSION postgis_topology;'
sudo /usr/pgsql-14/bin/psql -U postgres -c "CREATE EXTENSION \"uuid-ossp\";"
sudo systemctl restart postgresql-14
EOF
chmod +x /root/init.sh

离线安装软件

  • 离线机器
#/var/lib/pgsql
current_path=$(cd $(dirname $0);pwd)
# 解压
tar -zxvf postgres.tar.gz
# 初始化repo
cat << EOF | tee /etc/yum.repos.d/local-postgres.repo
[Postgres]
name=Postgres
baseurl=file://${current_path}/postgres/
enabled=1
gpgcheck=0
priority=1
EOF
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
# 安装
sudo yum install -y vim tree wget net-tools
sudo yum install -y gcc make subversion gcc-c++ sqlite-devel libxml2 libxml2-devel python-devel numpy swig expat-devel libcurl-devel
sudo yum install -y epel-release
sudo yum install -y postgresql14-server
sudo yum install -y postgis32_14.x86_64
# 新建数据目录
mkdir -p /var/lib/pgsql/14/data
chown -R postgres:postgres /var/lib/pgsql
# 初始化数据库
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
# 启动
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14
# 开启访问权限
echo "listen_addresses = '*'" >> /var/lib/pgsql/14/data/postgresql.conf
sed -i '/local   all             all                                     peer/clocal   all             all                                     trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    all             all             127.0.0.1\/32            scram-sha-256/chost    all             all             127.0.0.1/32            trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    all             all             ::1\/128                 scram-sha-256/chost    all             all             ::1/128                 trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/local   replication     all                                     peer/clocal   replication     all                                     trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    replication     all             127.0.0.1\/32            scram-sha-256/chost    replication     all             127.0.0.1/32            trust' /var/lib/pgsql/14/data/pg_hba.conf
sed -i '/host    replication     all             ::1\/128                 scram-sha-256/chost    replication     all             ::1/128                 trust' /var/lib/pgsql/14/data/pg_hba.conf
echo "host    all             all             all                     md5" >> /var/lib/pgsql/14/data/pg_hba.conf
# 重启
sudo systemctl restart postgresql-14
# 设置密码
sudo /usr/pgsql-14/bin/psql -U postgres -c "ALTER USER postgres WITH PASSWORD '123++';"
sudo /usr/pgsql-14/bin/psql -U postgres -c 'CREATE EXTENSION postgis;'
sudo /usr/pgsql-14/bin/psql -U postgres -c 'CREATE EXTENSION postgis_topology;'
sudo /usr/pgsql-14/bin/psql -U postgres -c "CREATE EXTENSION \"uuid-ossp\";"
# 重启
sudo systemctl restart postgresql-14
# 恢复repo
mv /etc/yum.repos.d/CentOS-Base.repo.bak /etc/yum.repos.d/CentOS-Base.repo

加密

tar -czf - postgres | openssl des3 -salt -k postgres -out postgres.des3
openssl des3 -d -k postgres -salt -in postgres.des3 | tar xzf -
  • 离线卸载
rm -rf /var/lib/pgsql/14

离线安装Miniconda

cat << EOF | tee /root/install-python.sh
if [ -L /usr/local/bin/python3* ];then
  rm -rf /usr/local/bin/python3*
fi
if [ -d "/usr/local/miniconda" ]; then
  rm -rf /usr/local/miniconda
fi
if [ -d "/usr/local/python3.10" ]; then
  rm -rf /usr/local/python3.10
fi
bash Miniconda3-latest-Linux-x86_64.sh -b -p /usr/local/miniconda

echo "-------------------------------------------------------"
# 增加
echo '#CONDA_START' >> /etc/profile
echo 'export CONDA_HOME=/usr/local/miniconda' >> /etc/profile 
echo 'export PATH=\${PATH}:\${CONDA_HOME}/bin' >> /etc/profile
echo '#CONDA_END' >> /etc/profile
# 生效
source /etc/profile
# 常见虚拟环境
conda create -y --prefix=/usr/local/python3.10 python=3.10
# 环境变量
ln -s /usr/local/python3.10/bin/python3.10 /usr/local/bin/python3
ln -s /usr/local/python3.10/bin/pip /usr/local/bin/pip3                                                                                          
EOF

chmod +x /root/install-python.sh

# 删除开头和结果的内容
sed -i '/#CONDA_START/,/#CONDA_END/d' /etc/profile

pip3 install ezdxf centerline django pandas scipy
pip3 freeze > requirements.txt
sed -i /^certifi/d requirements.txt
pip3 download -d ~/whls -r requirements.txt
pip3 install --no-index --find-links=whls ezdxf centerline django pandas scipy

tar -czf - python | openssl des3 -salt -k python -out python.des3
openssl des3 -d -k python -salt -in python.des3 | tar xzf -
mkdir -p ~/.pip
~/.pip/pip.conf
cat << EOF | tee ~/.pip/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
trusted-host=pypi.tuna.tsinghua.edu.cn
EOF
cat << EOF | tee install-python.sh
if [ -d "python" ]; then
  rm -rf python
fi
openssl des3 -d -k python -salt -in python.des3 | tar xzf -
if [ -d "/usr/local/miniconda" ]; then
  rm -rf /usr/local/miniconda
fi
if [ -d "/usr/local/python3.10" ]; then
  rm -rf /usr/local/python3.10
fi
bash python/Miniconda3-latest-Linux-x86_64.sh -b -p /usr/local/miniconda
# 增加
echo '#CONDA_START' >> /etc/profile
echo 'export CONDA_HOME=/usr/local/miniconda' >> /etc/profile 
echo 'export PATH=\${PATH}:\${CONDA_HOME}/bin' >> /etc/profile
echo '#CONDA_END' >> /etc/profile
# 生效
source /etc/profile
# 常见虚拟环境
conda create -y --prefix=/usr/local/python3.10 python=3.10
# 环境变量
if [ ! -L /usr/local/bin/python3 ]; then
  ln -s /usr/local/python3.10/bin/python3.10 /usr/local/bin/python3
fi
if [ ! -L /usr/local/bin/pip3 ]; then
  ln -s /usr/local/python3.10/bin/pip /usr/local/bin/pip3
fi
source /etc/profile
# pip3 download -d ./python/whls -r ./python/requirements.txt
pip3 install --no-index --find-links=python/whls ezdxf centerline django pandas scipy
EOF
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
KubeSphere离线安装是一种将所有必需的安装文件打为一个单独的文件,以方便在没有互联网连接的环境下进行安装和部署的工具。离线安装可以含KubeSphere的所有组件,括Kubernetes、Helm和KubeSphere自身的应用程序。 使用离线安装可以避免在每个节点上分别下载依赖文件和组件,从而节省时间和流量成本。通常,离线安装可以通过从互联网连接的设备上下载,然后传输到没有互联网连接的服务器上进行安装。将离线安装部署到目标服务器时,可以通过指定地址或文件路径来引导安装器执行相应的操作。 在使用离线安装进行KubeSphere安装时,需要确保目标服务器满足硬件和系统要求,并进行必要的配置,例如关闭防火墙、安装依赖软件等。然后,根据离线安装的指引和手册,执行安装命令和相关配置,以完成KubeSphere的安装和部署离线安装的好处是可以在没有互联网连接的情况下快速、灵活地部署KubeSphere,适用于企业内部网络环境或没有稳定互联网连接的场景。同时,离线安装也提供了版本控制的能力,可以确保所有节点安装的组件版本一致,避免兼容性问题。 最后,需要注意的是,离线安装可能会较大,因此在下载和传输过程中需要考虑网络和存储的限制,并确保连接的稳定性,以避免安装过程中的中断和错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值