CentOS7上安装Openshift 311

Openshift 3.11 安装

本文介绍的是一个All-in-one的环境的安装方法。All-in-one就是openshift所有的角色都安装在同一台机器上。如果你想安装一个真正的生产环境,也建议你先装一个all-in-one的openshift,这可以测试一下整个安装环境有没有问题。多节点的安装跟all-in-one的安装方法差别不大,只不过是把不同角色安装到了不同的节点上。

参考资料

https://docs.okd.io/3.11/welcome/index.html
https://github.com/openshift/openshift-ansible

准备一台虚拟机,具体要求如下

  • 16G内存
  • 2块硬盘,一块40G安装系统,另外一块20G将来用于docker storage

基础软件安装

  • 最小化安装一台CentOS7
  • 用于安装all-in-one openshift的这台机器的host name 是 oc-master-1.fcg.ai
  • 安装如下基础软件:
    yum install -y wget git net-tools bind-utils yum-utils iptables-services bridge-utils bash-completion kexec-tools sos psacct httpd-tools

安装Ansible

ansible是个部署工具,CentOS上集成的是ansible2.4, 部署openshift需要2.6以上,所有我们通过epel源安装个最新版的ansible。
先通过yum安装epel:
yum install epel-release.noarch -y
安装ansible
yum install ansible -y
查看ansible版本
ansible --version
CentOS7上安装Openshift 311_第1张图片

安装openshift311 ansible脚本

安装openshift源yum包
yum install centos-release-openshift-origin311.noarch
更新yum cache
yum makecache
安装所有openshift ansible相关的包
yum install openshift-ansible* -y

准备安装脚本

脚本的示例文件存放在/usr/share/doc/openshift-ansible-docs-3.11.37/docs/example-inventories/
这个目录下有很多example文件,hosts.example是参数比较全的,hosts.localhost 就是安装all-in-one环境的,其它example文件对应不同的openshift部署方案。
我们把hosts.localhost 复制到/etc/ansible/hosts. 之后编辑一下hosts这个文件,加入一下几个参数。在[OSEv3:vars] 下加入:
openshift_master_default_subdomain=test.fcg.ai
openshift_master_identity_providers=[{‘name’: ‘htpasswd_auth’, ‘login’: ‘true’, ‘challenge’: ‘true’, ‘kind’: ‘HTPasswdPasswordIdentityProvider’}]
openshift_master_htpasswd_file=/root/openshift-passwd
openshift_disable_check=disk_availability,memory_availability,docker_image_availability,docker_storage
CentOS7上安装Openshift 311_第2张图片
创建一个openshift用户
htpasswd -cb /root/openshift-passwd admin Andy831

安装配置Docker

安装docker软件
yum install docker
编辑docker配置文件
vim /etc/sysconfig/docker-storage-setup
在配置文件中加入如下内容:
DEVS=/dev/sdb
VG=docker-vg
SETUP_LVM_THIN_POOL=yes
CentOS7上安装Openshift 311_第3张图片
运行下面这条命令生成docker storage
docker-storage-setup
重启docker服务
systemctl restart docker

配置Ansible

  • 在oc-master-1上生成一个ssh key
    ssh-keygen
  • 在oc-master-1上做一个到oc-master-1的无密码登陆
    ssh-copy-id root@oc-master-1

安装Openshift

  • 初始化安装:对当前的环境进行检查,完成安装前的准备
    ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/prerequisites.yml
    CentOS7上安装Openshift 311_第4张图片
  • 把openshift的yum源设置为国内镜像
    sed -i ‘s/mirror.centos.org/mirrors.aliyun.com/g’ /etc/yum.repos.d/CentOS-OpenShift-Origin*
  • 更新一下yum cache
    yum makecache
  • 进行Openshift 部署
    ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/deploy_cluster.yml
    CentOS7上安装Openshift 311_第5张图片
  • 通过web管理界面登陆Openshift
    https://oc-master-1.fcg.ai:8443/
    登陆名: admin
    密码: Andy831

安装失败的可能原因

  • 安装步骤有遗漏,有些命令可能忘记敲了,可以调出命令的history进行检查。
  • 安装步骤是有顺序的,建议按照文档顺序执行。
  • 网络质量不好会造成安装失败,可以在非高峰期多尝试几次。

安装失败如何处理

安装失败后并不用完全重新开始。可以通过执行下面的命令卸载之前的安装,然后再重新进行安装。
ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/adhoc/uninstall.yml

测试环境ALLINONE的安装方法

我们上面介绍的是一个标准的openshift的安装方法,虽然我们安装的是个all-in-one的环境,但安装方法与安装多节点的openshift是相同的。

官方文档还提到了一种专用于测试的all-in-one的openshift的安装方法。这种安装方法相对简单,而且对机器性能要求不高。下面我简单介绍一下这种安装方法。

  1. 从https://github.com/openshift/origin/releases 下载openshift-origin-server的压缩包。

  2. 解压软件包。
    tar -xvf openshift-origin-server-v3.11.0-0cbc58b-linux-64bit.tar

  3. 把解压后的软件包move到 /root/openshift311
    mv openshift-origin-server-v3.11.0-0cbc58b-linux-64bit /root/openshift311

  4. 在/etc/bashrc的最底部加入下面这行。
    export PATH=/root/openshift311:$PATH

  5. Source一下/etc/bashrc让路径变量生效,这样在任何位置都可以运行openshift311下的命令了。
    source /etc/bashrc

  6. 在docker的配置文件中加入下面这一句。(docker安装方法参考本文之前的介绍)
    vim /etc/sysconfig/docker # 在这个文件的最后加入下面这行。
    INSECURE_REGISTRY=’–insecure-registry 172.30.0.0/16’
    systemctl restart docker #重启一下docker服务

  7. 编写一个启动脚本
    vim start.sh
    #!/bin/bash
    oc cluster up --public-hostname=oc-master-1.fcg.ai --base-dir=’/var/lib/origin’
    chmod 755 start.sh

  8. 运行启动脚本
    systemctl stop firewalld #关闭防火墙
    ./start.sh

观看Openshift视频演示,请关注我!

CentOS7上安装Openshift 311_第6张图片

你可能感兴趣的:(CentOS7上安装Openshift 311)