码迷,mamicode.com
首页 > 其他好文 > 详细

OpenShift 集群搭建指南

时间:2017-07-28 19:25:28      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:目录   file   include   其他   详细介绍   and   enter   size   sysconfig   

OpenShift 集群搭建指南

v1.0

  1. 搭建Hyper-v虚拟机或物理机

  2. 配置物理机静态IP,启用Hyper-v服务。
  3. 规划服务器节点

节点

说明

主机名

IP

Master

主控制节点

openshiftmaster.dynastech.com

192.168.30.95

Etcd

协调服务节点

openshiftetcd.dynastech.com

192.168.30.96

Node1

计算节点1

openshiftnode1.dynsatech.com

192.168.30.102

Node2

计算节点2

openshiftnode2.dynastech.com

192.168.30.98

Node3

计算节点3

openshiftnode3.dynastech.com

192.168.30.110

?

  1. 新建虚拟机master节点1个
  2. 新建Etcd节点1或3个(奇数个),负责分布式协调
  3. 新建Node节点若干,这里示例为3台技术分享
  4. 为每台虚拟机配置 旧版网络适配器

技术分享

  1. 启动各个虚拟机安装Centos7系统

技术分享

校验并安装centos linux 7系统

技术分享

等待校验完成

技术分享

  1. 选择安装语言

技术分享

  1. 选择安装功能
    1. 软件选择

      技术分享

      (这里可以选择桌面版,如下图,服务器建议最小安装)

      技术分享

    2. 安装位置

      技术分享

  2. 配置网络和主机名

    技术分享

    技术分享

  3. 下一步,开始安装
  4. 配置root密码

    技术分享

    技术分享

    技术分享

  5. 启动其他节点执行同样的安装,配置不同的主机名和网络地址。
  6. 安装完毕

    技术分享

  7. 配置虚拟机基础环境

  8. 我本机是windows安装Xshell5.
  9. 配置域名解析
    1. 修改DNS服务器指向 或者b
    2. 修改节点本地/etc/hosts文件

      这里我为了测试方便,直接修改各个节点hosts文件

      用xshell5连接各个节点

      进入编辑vi /etc/hosts

      开始编辑按insert

      编辑完成esc,

      保存并退出:wq

      强制退出不保存!q

      技术分享

  10. 配置OpenShift 环境依赖软件

  11. 所有节点执行:

[root@所有节点 ~]# yum install -y lrzsz git wget net-tools bind-utils iptables-services bridge-utils bash-completion

[root@所有节点 ~]# yum install -y docker

  1. 检查安装情况
    1. iptables网络

      [root@openshiftectd ~]# systemctl start iptables

      [root@openshiftectd ~]# systemctl enable iptables

      技术分享

    2. docker 安装情况

      技术分享

  2. 软件安装完毕后,关闭虚拟机,为每个节点增加一块硬盘作为docker数据存储位置

    技术分享

    技术分享

    技术分享

    技术分享

  3. 增加硬盘完毕,重新启动所有节点,配置docker存储位置
    1. 查看硬盘信息

      命令: fdisk -l

      如图所示,添加的数据盘挂载在/dev/sdb目录下

    技术分享

    1. docker配置
      1. 编辑docker存储配置位置

      [root@所有节点 ~]# vi /etc/sysconfig/docker-storage-setup

    技术分享

    [root@所有节点 ~]# docker-storage-setup

    技术分享

    1. 每个节点修改docker镜像站点

    vi /etc/sysconfig/docker

    追加参数:

    --registry-mirror=https://docker.mirrors.ustc.edu.cn

    技术分享

    1. 增加docker开机启动服务

      systemctl enable docker

    2. 启动docker

      systemctl start docker

    3. 查看docker服务情况

      systemctl status docker

技术分享

  1. 配置OpenShift Etcd节点

[root@openshiftectd ~]# yum install -y etcd

[root@openshiftectd ~]# systemctl enable etcd

[root@openshiftectd ~]# systemctl start etcd

  1. 配置OpenShift Master节点

  2. 安装EPEL仓库

    下载安装包

    http://mirrors.neusoft.edu.cn/epel/7/x86_64/e/

    技术分享

    上传到master

    技术分享

    [root@openshiftmaster ~]# yum install -y epel-release-7-10.noarch.rpm

  3. 安装ansible pyOpenSSL

    [root@openshiftmaster ~]# yum install -y --enablerepo=epel ansible pyOpenSSL

    技术分享

    ?

  4. 配置各个节点和master节点的互信
    1. 生成密钥

      [root@openshiftmaster ~]# ssh-keygen -f /root/.ssh/id_rsa -N ‘‘

    技术分享

    1. 配置ssh验证

    [root@openshiftmaster ~]# vi /etc/ssh/ssh_config

    StrictHostKeyChecking no

    UserKnownHostsFile /dev/null

    技术分享

    [root@openshiftmaster ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub openshiftmaster.dynastech.com

    [root@openshiftmaster ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub openshiftetcd.dynastech.com

    [root@openshiftmaster ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub openshiftnode1.dynastech.com

    [root@openshiftmaster ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub openshiftnode2.dynastech.com

    [root@openshiftmaster ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub openshiftnode3.dynastech.com

    技术分享

  5. 下载openshift-ansible源码

    [root@openshiftmaster ~]# git clone https://github.com/openshift/openshift-ansible

    技术分享

  6. 配置ansible
    1. 备份hosts

    技术分享

    1. 编辑hosts

    参考:https://docs.openshift.org/latest/install_config/install/advanced_install.html

    [root@openshiftmaster ~]# vi /etc/ansible/hosts

    添加如下内容

    # Create an OSEv3 group that contains the masters and nodes groups

    [OSEv3:children]

    masters

    nodes

    etcd

    ?

    # Set variables common for all OSEv3 hosts

    [OSEv3:vars]

    # SSH user, this user should allow ssh based auth without requiring a password

    ansible_ssh_user=root

    ?

    # If ansible_ssh_user is not root, ansible_become must be set to true

    #ansible_become=true

    ?

    openshift_deployment_type=origin

    ?

    # uncomment the following to enable htpasswd authentication; defaults to DenyAllPasswordIdentityProvider

    ?

    openshift_master_identity_providers=[{‘name‘: ‘htpasswd_auth‘, ‘login‘: ‘true‘, ‘challenge‘: ‘true‘, ‘kind‘: ‘HTPasswdPasswordIdentityProvider‘, ‘filename‘: ‘/etc/origin/master/htpasswd‘}]

    ?

    # host group for masters

    [masters]

    openshiftmaster.dynastech.com

    ?

    # host group for etcd

    [etcd]

    openshiftetcd.dynastech.com

    ?

    # host group for nodes, includes region info

    [nodes]

    openshiftmaster.dynastech.com

    openshiftnode1.dynastech.com

    openshiftnode2.dynastech.com

    openshiftnode3.dynsatech.com

    ?

  7. 开始安装集群

  8. 运行openshift-ansible

[root@openshiftmaster ~]# ansible-playbook openshift-ansible/playbooks/byo/config.yml

?

等待运行完成,正常情况已经配置完成。

?

硬件配置太低会有如下错误:

技术分享

技术分享

?

解决此错误的方法是编辑/etc/ansible/hosts

加入如下配置,跳过检查项

技术分享

?

由于是运行在pc机上的,硬件配置不够,我在这里同时将etcd合并到了master节点(即将ectd安装到master节点并启动),在配置hosts时,将etcd指向master节点,停用了node3,配置变成如下图所示

技术分享

(如果参考者的运行环境,硬件配置可以,这里不必要删减节点)

再次运行

[root@openshiftmaster ~]# ansible-playbook openshift-ansible/playbooks/byo/config.yml

即成功通过安装。

安装成功的汇总信息如下图

技术分享

  1. 检查运行情况

    [root@openshiftmaster ~]# oc get nodes

    技术分享

  2. 集群账户管理

    [root@openshiftmaster ~]# htpasswd -b /etc/origin/master/htpasswd admin admin

  3. 登录web站点

    配置本机hosts文件,将master节点ip指向其主机名

    用admin登录web站点

    技术分享

    技术分享

    至此OpenShift集群搭建完毕!开始探索吧………

    ?

    后记:

    此文档不详尽处:

    1. docker在linux中的配置
    2. 没有详细介绍多样化集群部署,想知道更多参考官方文档

      https://docs.openshift.org/latest/install_config/install/advanced_install.html

OpenShift 集群搭建指南

标签:目录   file   include   其他   详细介绍   and   enter   size   sysconfig   

原文地址:http://www.cnblogs.com/zhangning/p/7251810.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!