社区版OCP4.0.0和OBserver4.0.0的安装问题总结

最近几天安装部署了社区版的observer集群和ocp4.0.0,感觉某些参数会影响ocp和observer的安装与纳管
我总结了下个人的安装部署过程出现的问题,具体如下:
(1)安装环境
机器环境:
1、observer集群:使用三台4核16G内存50G存储的服务器。
2、ocp:采用单机安装,服务器配置为8核32G内存。
(2)、安装过程的问题
我个人是先安装的observer集群+单节点obproxy,然后再安装了一个ocp纳管这个observer集群。在调测过程中,主要发现几个问题:
1、observer部署的过程中主要出现了如下几个问题:

  • 内存参数配置,我测试机的内存为4核和16G内存,第一次部署使用了默认的memory_limit和system_memory,导致部署过程中出现内存不足的问题,后参考社区信息调整了memory_limit和system_memory内存参数,内存不足的问题就解决了。

  • 存储不足的问题,安装过程中采用了默认的datafile_size和log_disk_size,导致安装出现磁盘空间不足问题,又重新设置了以上两个参数,分别为20G,但还是提示磁盘空间不足,最后设置为18G和15G才没有报错。感觉是安装过程中还需要冗余10G左右的空间才能确保磁盘空间足够。

  • observer ping lo环回接口问题:部署过程中,没有设置devname,导致出现在lo端口ping observer失败。这问题在ocp的过程中也出现了,需要通过配置参数devname来解决。

  • 生产环境下observer集群需要16G以上内存安装问题,这个需要配置production_mode参数,才能解决。

  • 用户问题:安装过程中,我开始使用了oceanbase用户来部署observer,虽然部署成功,但是OCP接管observer集群的时候,提示没有正确使用admin用户安装observer集群,无法纳管。

  • 配置obproxy_sys_password导致出现“OBProxy proxyro 用户密码与 OCP 设置不相同.”,无法被OCP托管问题。

  • 在observer服务器的/tmp缓存文件夹保存有以前的ocp_agent 安装包,导致无法正常安装ocp_agent

经过几次尝试,最后通过以下配置参数正常部署observer集群,并被ocp正常纳管:

user:
  username: admin
  password: xxxxxx
oceanbase-ce:
  servers:
    - name: server1
      ip: 100.98.1.xxx
    - name: server2
      ip: 100.98.1.xxx
    - name: server3
      ip: 100.98.1.xxx
  global:
    production_mode: false
    devname: ens192
    cluster_id: 100
    memory_limit: 8G
    system_memory: 2G
    datafile_size: 18G
    log_disk_size: 15G
    cpu_count: 4
    syslog_level: INFO 
    enable_syslog_wf: false 
    enable_syslog_recycle: true
    max_syslog_file_count: 4
    appname: obcluster
observer_sys_password, can be empty
  server1:
    mysql_port: 2881
    rpc_port: 2882 
    home_path: /data01/oceanbase/observer
    data_dir: /oceanbase/data
    redo_dir: /oceanbase/redo
    zone: zone1
  server2:
    mysql_port: 2881
    rpc_port: 2882 
    home_path: /home/admin/observer
    data_dir: /oceanbase/data
    redo_dir: /oceanbase/redo
    zone: zone2
  server3:
    mysql_port: 2881
    rpc_port: 2882 
    home_path: /home/admin/observer
    data_dir: /oceanbase/data
    redo_dir: /oceanbase/redo
    zone: zone3
obproxy-ce:
  depends:
    - oceanbase-ce
  servers:
    - 100.98.1.xxx
  global:
    listen_port: 2883 
    prometheus_listen_port: 2884 
    home_path: /home/admin/obproxy
    enable_cluster_checkout: false
    skip_proxy_sys_private_check: true
    enable_strict_kernel_release: false

2、ocp部署的过程中主要出现了如下几个问题:

  • 安装方法问题:我当时从官网上离线下载了ocp包,认为执行ocp安装与部署ocp应用的服务器应该是在同一台机器上的操作,验证测试后发现ocp安装的机器需要与ocp应用机器分离才能远程ssh部署,否则本机容器到本机基本都是失败的。

  • 部署OCP应用的服务器需要提前安装好docker,并且docker可执行文件需要放置在/user/bin目录下,否则ocp部署的时候会提示无法找到docker的命令(我个人采用的是binary方式安装docker到指定目录,并且配置环境变量)。

  • OCP的内存参数调整:我这里主要列举几个参数,以上几个内存参数刚好适配32G内存的服务器,如果monitor配置了4核8G会提示内存不足问题。

  meta:
    tenant: meta_tenant
    user: meta_user
    password: xxx
    database: meta_database
    cpu: 2
    memory: 4

  monitor:
    tenant: monitor_tenant
    user: monitor_user
    password: xxx
    database: monitor_database
    cpu: 2
    memory: 4

ocp:
  name: 'ocp'
  process:
    port: 8080
    log_dir: /tmp/ocp/log
  servers:
    - 100.98.1.xxx
  resource:
    cpu: 4 
    memory: 8

3、ocp纳管observer的问题:

  • 除了如1点所述的几个问题外,就是第一次没有正常纳管observer,会导致无法删除未完成接管的集群。

  • 配置observer_sys_password和obproxy_sys_password导致出现“OBProxy proxyro 用户密码与 OCP 设置不相同.”,即使我使用正确的密码,observer也无法被OCP托管问题。最后我删除了observer,重新创建observer后,observer_sys_password和obproxy_sys_password均不设置,再通过命令重置root密码后:ALTER USER root@’%’ IDENTIFIED BY ‘xxxx’; 得以成功纳管observer集群

  • 纳管observer的集群过程,install ocp agent过程中,出现1台机正常安装,另外2台不正常,但是ocp agent在observer集群上已正常启动了。最后通过设置为成功,通过了ocp的纳管。

OCP纳管observer后,功能是比较强大的,有点像阿里云上的RDS数据库监控,为运维人员提供了比较好的监控管理界面。但是ocp的部署比较占用资源,有点点资源浪费啊。

1 个赞

具体问题我们整理一下看如何解决易用性问题