评论

收藏

[Linux] Oceanbase试用版部署安装(Linux 平台上部署)

服务系统 服务系统 发布于:2021-07-10 13:11 | 阅读数:305 | 评论:0

  一、部署概述  1.官方建议使用CentOS 6 或 CentOS 7,部署脚本只在这两个发行版上试验过。
  2.资源要求
  资源
  描述
  内存要求
  至少为 OBServer 配置 8G 内存。
  磁盘要求
  需要为 OBServer 准备一个工作目录,这个目录所在的磁盘至少要有 20G 的剩余空间,并且磁盘使用率要低于 80%。
  3.软件要求
  软件
  版本
  Python
  Python 2.7 及以上
二、部署前准备  部署一台8G内存,50G磁盘空间,单网卡(hostonly模式)的centos7的服务器。
  1.前期配置
--查看内核
[root@octa ~]# uname -a
Linux octa 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@octa ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 
--查看内存
[root@octa ~]# free -m
        total    used    free    shared  buff/cache   available
Mem:       7886     134    7643       8     109    7556
Swap:      5119       0    5119
--设置主机名
hostnamectl set-hostname obca
--关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
--关闭selinux
vi /etc/selinux/config
disabled
--配置网络
nmcli con mod ens0p3 ipv4.address 192.168.56.100/24 ipv4.method manual autoconnect yes
--新建目录
mkdir /soft
mkdir /ob
  2.下载试用版oceanbase安装包

  •   在 OceanBase 官网顶部导航栏,选择 资源 > 下载, 进入资源下载页面。
  •   单击 安装包下载,系统会跳转到OceanBase 社区登录页面
  •   输入您的用户名和密码,进行登录。
      如果您还未注册 OceanBase 社区账号,请按照提示完成注册,并登录。
  •   在弹出的对话框中,勾选 我已阅读并遵守《OceanBase 软件试用许可协议》,然后单击 下载安装包
      OceanBase 试用版的安装介质开始下载,下载的安装介质中包含部署脚本(ob-deploy.tar)。
三、安装部署  1.解压安装包
[root@octa soft]# cd /soft/
[root@octa soft]# tar -xvf ob-deploy.tar 
[root@octa soft]# ls
ob-deploy  ob-deploy.tar
  2.修改默认配置
[root@octa soft]# cd ob-deploy
[root@octa ob-deploy]# ls
admin  config.py      features.md  init.sql        install   mysql       plugin_dir  tools
b    deploy.dockerfile  h      init_user_oracle.sql  lib     mysql_example   README.md
bin  etc        hap.py     init_user.sql     Makefile  oracle_example  sysbench
--配置observer启动目录home = '/ob'
[root@octa ob-deploy]# vi config.py 
[root@octa ob-deploy]# cat config.py 
load('obi,obt-patch,mini-mode,sample-db,sysbench')
if not indocker():
  home = '/ob'
obs_cfg.update(mini_mode_cfg)
obs_cfg.update(system_memory='5G', memory_limit='8G', datafile_size='10G')
# 定义一个单server的ob集群,mysql端口号2881,rpc端口号2882
ob1 = OBI('127.0.0.1:2882:2881')
# 定义另一个单server的ob集群,mysql端口号/rpc端口号由uid hash生成
ob2 = OBI('127.0.0.1')
# 单个机器上起3个observer
ob3 = OBI('127.0.0.1@[z1,z2,z3]', dev='lo', is_local=True)
  3.初始化 OceanBase 实例(整个初始化过程大概需要一分钟时间)
[root@octa ob-deploy]# ./hap.py ob1.reboot
2021-02-26 22:19:26.454790 call.py:3 CALL: top make_local_etc_dir
2021-02-26 22:19:26.468489 call.py:3 CALL: top ob1.reboot
2021-02-26 22:19:26.471535 call.py:3 CALL: top.ob1 local_reboot
2021-02-26 22:19:26.475062 call.py:3 CALL: top.ob1 force_stop
2021-02-26 22:19:26.478799 call.py:3 CALL: top.ob1 stop
2021-02-26 22:19:26.482765 call.py:3 CALL: top.ob1 all_server
2021-02-26 22:19:26.489389 call.py:3 CALL: top.ob1.obs0 stop
2021-02-26 22:19:26.498137 magic_ctrl.py:3 retry_loop: retryloop: timeout=10 interval = 0.1
2021-02-26 22:19:26.507174 magic_ctrl.py:6 retry_loop: #### tryloop try_stop ####
2021-02-26 22:19:26.514685 call.py:3 CALL: top.ob1.obs0 try_stop
2021-02-26 22:19:26.551222 magic_ctrl.py:9 retry_loop: #### tryloop success ####
2021-02-26 22:19:26.561633 call.py:3 CALL: top.ob1 sleep
2021-02-26 22:19:26.581256 misc-deps.py:34 sleep: sleep 3
2021-02-26 22:19:29.591045 call.py:3 CALL: top.ob1 cleanup
2021-02-26 22:19:29.595084 call.py:3 CALL: top.ob1 all_server
2021-02-26 22:19:29.599943 call.py:3 CALL: top.ob1.obs0 rmdir
2021-02-26 22:19:29.613990 call.py:3 CALL: top.ob1 mk_local_dir
2021-02-26 22:19:29.621781 call.py:3 CALL: top.ob1 mkdir
2021-02-26 22:19:29.626262 call.py:3 CALL: top.ob1 all_server
2021-02-26 22:19:29.631620 call.py:3 CALL: top.ob1.obs0 mkdir
2021-02-26 22:19:29.671123 call.py:3 CALL: top.ob1 local_sync
2021-02-26 22:19:29.676008 call.py:3 CALL: top.ob1 all_server
2021-02-26 22:19:29.681570 call.py:3 CALL: top.ob1.obs0 local_sync
2021-02-26 22:19:30.411532 call.py:3 CALL: top.ob1 prepare_proxy_cfg
2021-02-26 22:19:30.414379 call.py:3 CALL: top.ob1 start_servers
2021-02-26 22:19:30.419056 call.py:3 CALL: top.ob1 all_observer
2021-02-26 22:19:30.424605 call.py:3 CALL: top.ob1.obs0 start
/ob/ob1.obs0/bin/observer -P 2882 -p 2881 -z test -n ob1.root -c 1 -d /ob/ob1.obs0/store -l INFO -i lo -r 127.0.0.1:2882:2881 -o memory_limit=8G,cache_wash_threshold=1G,row_purge_thread_count=1,net_thread_count=1,enable_syslog_recycle=True,enable_merge_by_turn=FALSE,cpu_count=16,location_refresh_thread_count=2,max_syslog_file_count=3,major_freeze_duty_time=Disable,__easy_memory_limit=1G,schema_history_expire_time=1d,merge_thread_count=1,writing_throttling_trigger_percentage=70,_max_trx_size=2M,workers_per_cpu_quota=2,enable_separate_sys_clog=0,datafile_disk_percentage=50,__min_full_resource_pool_memory=536870912,system_memory=5G,memory_chunk_cache_size=128M,trace_log_slow_query_watermark=10s,writing_throttling_maximum_duration=1m,switchover_process_thread_count=1,datafile_size=10G,minor_freeze_times=500,stack_size=1536K,disk_io_thread_coun=1
rpc port: 2882
mysql port: 2881
zone: test
appname: ob1.root
cluster id: 1
data_dir: /ob/ob1.obs0/store
log level: INFO
devname: lo
rs list: 127.0.0.1:2882:2881
optstr: memory_limit=8G,cache_wash_threshold=1G,row_purge_thread_count=1,net_thread_count=1,enable_syslog_recycle=True,enable_merge_by_turn=FALSE,cpu_count=16,location_refresh_thread_count=2,max_syslog_file_count=3,major_freeze_duty_time=Disable,__easy_memory_limit=1G,schema_history_expire_time=1d,merge_thread_count=1,writing_throttling_trigger_percentage=70,_max_trx_size=2M,workers_per_cpu_quota=2,enable_separate_sys_clog=0,datafile_disk_percentage=50,__min_full_resource_pool_memory=536870912,system_memory=5G,memory_chunk_cache_size=128M,trace_log_slow_query_watermark=10s,writing_throttling_maximum_duration=1m,switchover_process_thread_count=1,datafile_size=10G,minor_freeze_times=500,stack_size=1536K,disk_io_thread_coun=1
2021-02-26 22:19:30.518636 call.py:3 CALL: top.ob1 bootstrap
2021-02-26 22:19:30.524717 magic_ctrl.py:3 retry_loop: retryloop: timeout=864000 interval = 1
2021-02-26 22:19:30.528981 magic_ctrl.py:6 retry_loop: #### tryloop obs0.bootstrap ####
2021-02-26 22:19:30.533487 call.py:3 CALL: top.ob1 obs0.bootstrap
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
2021-02-26 22:19:30.624556 magic_ctrl.py:12 retry_loop: tryloop fail: Fail: shell fail: ./mysql --prompt "OceanBase(\u@\d)>" -h 127.0.0.1 -P 2881 -uroot  input="alter system bootstrap  REGION 'sys_region' ZONE 'test' SERVER '127.0.0.1:2882'; # ExceptionOnFail DiscardXOutput" ret=1 
2021-02-26 22:19:31.633175 magic_ctrl.py:6 retry_loop: #### tryloop obs0.bootstrap ####
2021-02-26 22:19:31.637507 call.py:3 CALL: top.ob1 obs0.bootstrap
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
2021-02-26 22:19:31.694000 magic_ctrl.py:12 retry_loop: tryloop fail: Fail: shell fail: ./mysql --prompt "OceanBase(\u@\d)>" -h 127.0.0.1 -P 2881 -uroot  input="alter system bootstrap  REGION 'sys_region' ZONE 'test' SERVER '127.0.0.1:2882'; # ExceptionOnFail DiscardXOutput" ret=1 
2021-02-26 22:19:32.700971 magic_ctrl.py:6 retry_loop: #### tryloop obs0.bootstrap ####
2021-02-26 22:19:32.705280 call.py:3 CALL: top.ob1 obs0.bootstrap
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
2021-02-26 22:19:32.807480 magic_ctrl.py:12 retry_loop: tryloop fail: Fail: shell fail: ./mysql --prompt "OceanBase(\u@\d)>" -h 127.0.0.1 -P 2881 -uroot  input="alter system bootstrap  REGION 'sys_region' ZONE 'test' SERVER '127.0.0.1:2882'; # ExceptionOnFail DiscardXOutput" ret=1 
2021-02-26 22:19:33.812714 magic_ctrl.py:6 retry_loop: #### tryloop obs0.bootstrap ####
2021-02-26 22:19:33.817042 call.py:3 CALL: top.ob1 obs0.bootstrap
2021-02-26 22:20:45.174806 magic_ctrl.py:9 retry_loop: #### tryloop success ####
2021-02-26 22:20:45.179920 call.py:3 CALL: top.ob1 post_bootstrap
2021-02-26 22:20:45.184520 call.py:3 CALL: top.ob1 wait_service
2021-02-26 22:20:45.199348 magic_ctrl.py:3 retry_loop: retryloop: timeout=864000 interval = 1
2021-02-26 22:20:45.203777 magic_ctrl.py:6 retry_loop: #### tryloop obs0.wait_service ####
2021-02-26 22:20:45.362713 call.py:3 CALL: top.ob1 obs0.wait_service
2021-02-26 22:20:45.613934 magic_ctrl.py:9 retry_loop: #### tryloop success ####
2021-02-26 22:20:45.618807 call.py:3 CALL: top.ob1 exec_init_sql
2021-02-26 22:20:45.622290 call.py:3 CALL: top.ob1 obs0.sql
2021-02-26 22:21:05.838187 call.py:3 CALL: top.ob1 add_server
2021-02-26 22:21:05.842090 call.py:3 CALL: top.ob1 all_obs
2021-02-26 22:21:05.847035 call.py:3 CALL: top.ob1 exec_init_user_sql1
2021-02-26 22:21:05.941993 call.py:3 CALL: top.ob1 exec_init_user_sql2
2021-02-26 22:21:05.945515 call.py:3 CALL: top.ob1 obs0.mysql
2021-02-26 22:21:06.904660 call.py:3 CALL: top.ob1 start_proxy
2021-02-26 22:21:06.909666 call.py:3 CALL: top.ob1 all_proxy
2021-02-26 22:21:06.914466 call.py:3 CALL: top.ob1 check_bootstrap
2021-02-26 22:21:06.943952 call.py:3 CALL: top.ob1 obs0.check_bootstrap
[('force_stop', [('obs0.stop', 'succ')]),
 ('sleep', None),
 ('cleanup', [('obs0.rmdir', 0)]),
 ('mk_local_dir', 0),
 ('mkdir', [('obs0.mkdir', 0)]),
 ('local_sync', [('obs0.local_sync', 0)]),
 ('prepare_proxy_cfg', 'skip'),
 ('start_servers', [('obs0.start', 0)]),
 ('bootstrap', 'succ'),
 ('post_bootstrap', None),
 ('wait_service', 'succ'),
 ('exec_init_sql', 0),
 ('add_server', []),
 ('exec_init_user_sql1', 'skip'),
 ('exec_init_user_sql2', 0),
 ('start_proxy', []),
 ('check_bootstrap', 0)]
初始化 OceanBase 实例成功之后,会自动创建两个租户,sys 租户和一个普通的 mysql 租户。
  4.部署后验证
--通过 MySQL 客户端连接 OceanBase 数据库
[root@octa ob-deploy]# ./hap.py ob1.obmysql
2021-02-26 22:22:56.870359 call.py:3 CALL: top make_local_etc_dir
2021-02-26 22:22:56.884471 call.py:3 CALL: top ob1.obmysql
2021-02-26 22:22:56.886940 call.py:3 CALL: top.ob1 sql
2021-02-26 22:22:56.889862 call.py:3 CALL: top.ob1 obs0.sql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 3221488235
Server version: 5.7.25 OceanBase 2.2.50 (r1-1c6441e8fb858c80da395f934f67ed305425864e) (Built Mar  6 2020 18:41:01)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
OceanBase(root@oceanbase)>show databases;
+--------------------+
| Database       |
+--------------------+
| oceanbase      |
| information_schema |
| mysql        |
| SYS        |
| LBACSYS      |
| ORAAUDITOR     |
| test         |
+--------------------+
7 rows in set (0.00 sec)
OceanBase(root@oceanbase)>use oceanbase;
Database changed
OceanBase(root@oceanbase)>show tables;
+-----------------------------------------+
| Tables_in_oceanbase           |
+-----------------------------------------+
| __all_acquired_snapshot         |
| __all_backup_clean_info_history     |
| __all_backup_log_archive_status_history |
| __all_backup_task_clean_history     |
| __all_backup_task_history         |
| __all_build_index_param         |
| __all_charset               |
| __all_clog_history_info         |
| __all_clog_history_info_v2        |
| __all_cluster               |
| __all_coll_type             |
| __all_coll_type_history         |
| __all_collation             |
| __all_column              |
| __all_column_history          |
| __all_column_stat             |
| __all_column_statistic          |
| __all_constraint            |
| __all_constraint_history        |
| __all_core_table            |
| __all_database              |
| __all_database_history          |
| __all_database_privilege        |
| __all_database_privilege_history    |
| __all_dblink              |
| __all_dblink_history          |
| __all_ddl_helper            |
| __all_ddl_id              |
| __all_ddl_operation           |
| __all_def_sub_part            |
| __all_def_sub_part_history        |
| __all_dummy               |
| __all_election_event_history      |
| __all_failover_info           |
| __all_failover_scn            |
| __all_foreign_key             |
| __all_foreign_key_column        |
| __all_foreign_key_column_history    |
| __all_foreign_key_history         |
| __all_freeze_schema_version       |
| __all_frozen_map            |
| __all_func                |
| __all_func_history            |
| __all_global_index_data_src       |
| __all_gts                 |
| __all_histogram_stat          |
| __all_immediate_effect_index_sstable  |
| __all_index_build_stat          |
| __all_index_checksum          |
| __all_index_schedule_task         |
| __all_index_wait_transaction_status   |
| __all_local_index_status        |
| __all_meta_table            |
| __all_ori_schema_version        |
| __all_outline               |
| __all_outline_history           |
| __all_package               |
| __all_package_history           |
| __all_part                |
| __all_part_history            |
| __all_part_info             |
| __all_part_info_history         |
| __all_partition_member_list       |
| __all_plan_baseline           |
| __all_plan_baseline_history       |
| __all_privilege             |
| __all_recyclebin            |
| __all_resource_pool           |
| __all_restore_info            |
| __all_restore_job             |
| __all_restore_job_history         |
| __all_restore_task            |
| __all_root_table            |
| __all_rootservice_event_history     |
| __all_rootservice_job           |
| __all_routine               |
| __all_routine_history           |
| __all_routine_param           |
| __all_routine_param_history       |
| __all_seed_parameter          |
| __all_sequence              |
| __all_sequence_object           |
| __all_sequence_object_history       |
| __all_sequence_v2             |
| __all_sequence_value          |
| __all_server              |
| __all_server_event_history        |
| __all_sql_execute_task          |
| __all_sstable_checksum          |
| __all_sstable_column_checksum       |
| __all_sub_part              |
| __all_sub_part_history          |
| __all_synonym               |
| __all_synonym_history           |
| __all_sys_parameter           |
| __all_sys_stat              |
| __all_sys_variable            |
| __all_sys_variable_history        |
| __all_table               |
| __all_table_history           |
| __all_table_privilege           |
| __all_table_privilege_history       |
| __all_table_stat            |
| __all_tablegroup            |
| __all_tablegroup_history        |
| __all_temp_table            |
| __all_tenant              |
| __all_tenant_backup_clean_info      |
| __all_tenant_backup_info        |
| __all_tenant_backup_log_archive_status  |
| __all_tenant_backup_task        |
| __all_tenant_gc_partition_info      |
| __all_tenant_gts            |
| __all_tenant_history          |
| __all_tenant_keystore           |
| __all_tenant_keystore_history       |
| __all_tenant_meta_table         |
| __all_tenant_ols_component        |
| __all_tenant_ols_component_history    |
| __all_tenant_ols_label          |
| __all_tenant_ols_label_history      |
| __all_tenant_ols_policy         |
| __all_tenant_ols_policy_history     |
| __all_tenant_ols_user_level       |
| __all_tenant_ols_user_level_history   |
| __all_tenant_partition_meta_table     |
| __all_tenant_pg_backup_task       |
| __all_tenant_plan_baseline        |
| __all_tenant_plan_baseline_history    |
| __all_tenant_profile          |
| __all_tenant_profile_history      |
| __all_tenant_resource_usage       |
| __all_tenant_role_grantee_map       |
| __all_tenant_role_grantee_map_history   |
| __all_tenant_security_audit       |
| __all_tenant_security_audit_history   |
| __all_tenant_security_audit_record    |
| __all_tenant_sstable_column_checksum  |
| __all_tenant_tablespace         |
| __all_tenant_tablespace_history     |
| __all_tenant_trigger          |
| __all_tenant_trigger_history      |
| __all_tenant_user_failed_login_stat   |
| __all_time_zone             |
| __all_time_zone_name          |
| __all_time_zone_transition        |
| __all_time_zone_transition_type     |
| __all_type                |
| __all_type_attr             |
| __all_type_attr_history         |
| __all_type_history            |
| __all_unit                |
| __all_unit_config             |
| __all_unit_load_history         |
| __all_user                |
| __all_user_history            |
| __all_weak_read_service         |
| __all_zone                |
| __tenant_parameter            |
| gv$concurrent_limit_sql         |
| gv$database               |
| gv$latch                |
| gv$lock_wait_stat             |
| gv$memory                 |
| gv$memstore               |
| gv$memstore_info            |
| gv$minor_merge_info           |
| gv$ob_sql_workarea_memory_info      |
| gv$obrpc_incoming             |
| gv$obrpc_outgoing             |
| gv$outline                |
| gv$partition              |
| gv$partition_audit            |
| gv$plan_cache_plan_explain        |
| gv$plan_cache_plan_stat         |
| gv$plan_cache_reference_info      |
| gv$plan_cache_stat            |
| gv$ps_item_info             |
| gv$ps_stat                |
| gv$server_memstore            |
| gv$session_event            |
| gv$session_longops            |
| gv$session_wait             |
| gv$session_wait_history         |
| gv$sesstat                |
| gv$sql                  |
| gv$sql_audit              |
| gv$sql_monitor              |
| gv$sql_plan_monitor           |
| gv$sql_plan_statistics          |
| gv$sql_workarea             |
| gv$sql_workarea_active          |
| gv$sql_workarea_histogram         |
| gv$sysstat                |
| gv$system_event             |
| gv$table                |
| gv$tenant                 |
| gv$tenant_memstore_allocator_info     |
| gv$tenant_px_worker_stat        |
| gv$tenant_sequence_object         |
| gv$unit                 |
| gv$unit_load_balance_event_history    |
| v$event_name              |
| v$latch                 |
| v$lock_wait_stat            |
| v$memory                |
| v$memstore                |
| v$memstore_info             |
| v$minor_merge_info            |
| v$ob_backup_archivelog_process      |
| v$ob_backup_archivelog_summary      |
| v$ob_backup_job_details         |
| v$ob_backup_process           |
| v$ob_backup_set_details         |
| v$ob_backup_set_expired         |
| v$ob_cluster              |
| v$ob_cluster_event_history        |
| v$ob_cluster_stats            |
| v$ob_sql_workarea_memory_info       |
| v$ob_standby_status           |
| v$ob_timestamp_service          |
| v$obrpc_incoming            |
| v$obrpc_outgoing            |
| v$partition               |
| v$partition_audit             |
| v$plan_cache_plan_explain         |
| v$plan_cache_plan_stat          |
| v$plan_cache_reference_info       |
| v$plan_cache_stat             |
| v$ps_item_info              |
| v$ps_stat                 |
| v$session_event             |
| v$session_longops             |
| v$session_wait              |
| v$session_wait_history          |
| v$sesstat                 |
| v$sql                   |
| v$sql_audit               |
| v$sql_monitor               |
| v$sql_plan_monitor            |
| v$sql_plan_statistics           |
| v$sql_workarea              |
| v$sql_workarea_active           |
| v$sql_workarea_histogram        |
| v$statname                |
| v$sysstat                 |
| v$system_event              |
| v$tenant_memstore_allocator_info    |
| v$tenant_px_worker_stat         |
| v$unit                  |
+-----------------------------------------+
250 rows in set (0.00 sec)

  
关注下面的标签,发现更多相似文章