logo资料库

openstack mitaka 安装手顺.pdf

第1页 / 共103页
第2页 / 共103页
第3页 / 共103页
第4页 / 共103页
第5页 / 共103页
第6页 / 共103页
第7页 / 共103页
第8页 / 共103页
资料共103页,剩余部分请下载后查看
Openstack mitaka 安装手顺 2020 年 3 月 21 日 22:49 目录 前言: ...................................................................... 3 环境说明: .................................................................. 3 1、基础环境准备 ............................................................. 3 1.1、配置 host 文件 ...................................................... 3 1.2、配置本地 yum 源 ..................................................... 3 1.3、安装时间同步服务 ................................................... 4 1.4、安装 openstack 最新的源 ............................................. 5 1.5、部署 mariadb 数据库 ................................................. 5 1.6、为 Telemetry 服务部署 MongoDB ....................................... 6 1.7、部署消息队列 rabbitmq .............................................. 6 1.8、部署 memcached 缓存(为 keystone 服务缓存 tokens) ................... 7 2、认证服务 keystone 部署 ................................................... 7 2.1、安装和配置服务 ..................................................... 7 2.2、创建服务实体和 API 端点 ............................................. 9 2.3、创建域,租户,用户,角色 .......................................... 10 2.4、验证操作: ........................................................ 12 2.5、创建 OpenStack 客户端环境脚本 ..................................... 13 3、镜像服务:控制节点上安装和配置镜像服务 ................................... 14 3.1、创建一个数据库、服务凭证和 API 端点 ................................ 14 3.2、安全并配置组件 .................................................... 16 3.3、启动镜像服务、配置他们随机启动 .................................... 17 3.4、验证操作(在控制节点上执行这些命令) .............................. 17 4、计算服务 ................................................................ 18 4.1、安装并配置控制节点 ................................................ 18 4.2、安装和配置计算节点 ................................................ 21 4.3、验证计算服务操作 .................................................. 23 5、Networking 服务 ......................................................... 24 5.1、安装并配置控制节点 ................................................ 24 5.2、安装和配置计算节点 ................................................ 30 5.3、验证操作 .......................................................... 32 6、Dashboard 安装和配置 .................................................... 33 6.1、安装软件包: ...................................................... 33 6.2、编辑配置文件 ...................................................... 33 6.3、完成安装 .......................................................... 35 6.4、验证 .............................................................. 36 7、块存储服务 .............................................................. 36 7.1、安装并配置控制节点 ................................................ 36 7.2、安装并配置一个存储节点 ............................................ 40 7.3、验证操作 .......................................................... 43 8、文件共享系统服务 ........................................................ 43 8.1、安装并配置控制节点 ................................................ 43 By:冰蓝. wx_fcxyz
8.2、安装并配置一个分享节点 ............................................ 48 8.3、验证操作 .......................................................... 52 9、对象存储服务 ............................................................ 52 9.1、安装并配置控制器节点 .............................................. 52 9.2、安装和配置存储节点 ................................................ 56 9.3、创建,分发并初始化 rings .......................................... 63 9.4、完成安装 .......................................................... 69 10、编排服务 ............................................................... 72 10.1、先决条件 ......................................................... 72 10.2、安全并配置组件 ................................................... 76 11、Telemetry 服务 ......................................................... 78 11.1、安装和配置 ....................................................... 78 11.2、启用镜像服务计量 ................................................. 83 11.3、启用计算服务计量 ................................................. 84 11.4、启用块存储计量 ................................................... 85 11.5、启用对象计量 ..................................................... 86 11.6、警告服务 ......................................................... 87 11.7、验证操作 ......................................................... 91 12、数据库服务 ............................................................. 91 13、启动一个实例 ........................................................... 91 13.1、创建虚拟网络 ..................................................... 91 13.2、生成一个键值对 ................................................... 95 13.3、增加安全组规则 ................................................... 96 13.4、在 provider 网络上创建实例 ........................................ 97 By:冰蓝. wx_fcxyz
前言: 2020 年 3 月,宅在家快两个月了,希望疫情早点结束,早点复工! 本手顺记录了这一个多月来多次部署 openstack mitaka 最终确定的安装步 骤,作为记录存档。 所有步骤参考社区文档: https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/ 环境说明: VM 15 开了两个虚拟机 操作系统:CentOS 7.3 (1611) 控制节点:内存 4G、硬盘 10G 计算节点:内存 2G、硬盘 10G --除控制服务外,其他服务均安装在这个节点 网络规划: VM 给两个节点分配双块网卡: 1、仅主机模式:111.111.111.0/24 --管理网络 2、自定义 VMnet2 模式:222.222.222.0/24 --provider 网络 yum 源地址: http://vault.centos.org/centos/7.3.1611/cloud/x86_64/openstack-mitaka http://vault.centos.org/centos/7.3.1611/extras/x86_64 http://vault.centos.org/centos/7.3.1611/virt/x86_64/kvm-common http://vault.centos.org/centos/7.3.1611/storage/x86_64/ceph-hammer http://vault.centos.org/centos/7.3.1611/os/x86_64/Packages/ 有几个 python 包,是从 https://pkgs.org/ 站点下载。 1、基础环境准备 管理网络:111.111.111.0/24 provider 网络:222.222.222.0/24 配置范围:所有节点 1.1、配置 host 文件 111.111.111.201 controller 111.111.111.202 compute01 1.2、配置本地 yum 源 我已经将安装包都下载到了本地,win10 企业版直接部署 IIS 站点,然后配置 yum 源 By:冰蓝. wx_fcxyz
1.3、安装时间同步服务 安装范围:所有节点 1.3.1、安装 chrony 包 # yum install chrony -y 1.3.2、启动同步服务 # systemctl enable chronyd # systemctl restart chronyd # systemctl status chronyd 1.3.3、防火墙设置 因 NTP 使用 123/UDP 端口协议,所以允许 NTP 服务即可 # firewall-cmd --add-service=ntp --permanent # firewall-cmd --reload 1.3.4、配置 Chrony # vi /etc/chrony.conf server 111.111.111.201 iburst 如上图所示,将默认的 server 全部注释掉,然后添加本机 IP,在其他客户机也是这样配置 为了允许其他节点可以连接到控制节点的 chrony 后台进程,在``/etc/chrony.conf`` 文件添加下 面的键: By:冰蓝. wx_fcxyz
allow 111.111.111.0/24 启动 NTP 服务并将其配置为随系统启动: # systemctl enable chronyd.service # systemctl start chronyd.service 1.4、安装 openstack 最新的源 安装范围:所有节点 yum install centos-release-openstack-mitaka yum install https://rdoproject.org/repos/rdo-release.rpm ---本次操作不能执行这一步,否 则新增的 repo 文件指向的是 T 版本的 openstack yum upgrade (更新源) --本步骤需要先移除预装的 mariadb 的包,否则报错 :yum remove mariadb-libs yum install openstack-selinux(可选则安装这个插件,我直接关闭了 selinux,因为不熟,对后 续不会有影响) 说明:如果使用自定义源,那么上面 centos 和 redhat 的操作可以省略 安装 opentack 必须的插件: yum install python-openstackclient -y 1.5、部署 mariadb 数据库 控制节点: 自带的 mariadb 包,全部移除 # yum remove mariadb* -y yum 源安装方式: yum install mariadb mariadb-server python2-PyMySQL -y 编辑: vi /etc/my.cnf.d/openstack.cnf [mysqld] bind-address = 111.111.111.201 default-storage-engine = innodb innodb_file_per_table max_connections = 4096 collation-server = utf8_general_ci character-set-server = utf8 启服务: # systemctl enable mariadb # systemctl start mariadb # systemctl status mariadb # mysql_secure_installation 先是设置密码,会提示先输入密码 Enter current password for root (enter for none): <–初次运行直接回车 设置密码 : P@ssw0rd Set root password? [Y/n] <– 是否设置 root 用户密码,输入 y 并回车或直接回车 By:冰蓝. wx_fcxyz
New password: <– 设置 root 用户的密码 Re-enter new password: <– 再输入一次你设置的密码 其他配置 Remove anonymous users? [Y/n] <– 是否删除匿名用户,Y,回车 Disallow root login remotely? [Y/n] <–是否禁止 root 远程登录,N,回车, Remove test database and access to it? [Y/n] <– 是否删除 test 数据库,n,回车 Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车 初始化 MariaDB 完成 防火墙开放 3306 端口 # firewall-cmd --permanent --add-port=3306/tcp # firewall-cmd --reload 确认端口开放成功 # firewall-cmd --list-all 1.6、为 Telemetry 服务部署 MongoDB 控制节点: # yum install mongodb-server mongodb -y 编辑:vi /etc/mongod.conf 找到下面两行配置并修改: bind_ip = 111.111.111.201 smallfiles = true 启动服务: # systemctl enable mongod # systemctl start mongod # systemctl status mongod 防火墙开放 27017 端口 # firewall-cmd --permanent --add-port=27017/tcp # firewall-cmd --reload 确认端口开放成功 # firewall-cmd --list-all 1.7、部署消息队列 rabbitmq 控制节点: # yum install rabbitmq-server -y 启动服务: # systemctl enable rabbitmq-server # systemctl start rabbitmq-server # systemctl status rabbitmq-server 新建 rabbitmq 用户密码: # rabbitmqctl add_user openstack P@ssw0rd # rabbitmqctl delete_user guest By:冰蓝. wx_fcxyz
为新建的用户 openstack 设定权限: rabbitmqctl set_permissions openstack ".*" ".*" ".*" 将 openstack 用户添加为管理员 rabbitmqctl set_user_tags openstack administrator 启动管理 WEB rabbitmq-plugins enable rabbitmq_management 防火墙开放 15672 端口 # firewall-cmd --permanent --add-port=15672/tcp # firewall-cmd --reload 确认端口开放成功 # firewall-cmd --list-all 验证方式:http://111.111.111.201:15672/ 用户:openstack 密码:P@ssw0rd 1.8、部署 memcached 缓存(为 keystone 服务缓存 tokens) 控制节点: # yum install memcached python-memcached -y cat /etc/sysconfig/memcached PORT="11211" USER="memcached" MAXCONN="10240" CACHESIZE="64" OPTIONS="-l 127.0.0.1,::1" 防火墙开放 11211 端口 # firewall-cmd --permanent --add-port=11211/tcp # firewall-cmd --reload 确认端口开放成功 # firewall-cmd --list-all 启动服务: # systemctl enable memcached # systemctl start memcached 2、认证服务 keystone 部署 控制节点: 2.1、安装和配置服务 2.1.1、建库建用户 mysql -u root -p CREATE DATABASE keystone; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'P@ssw0rd'; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'P@ssw0rd'; By:冰蓝. wx_fcxyz
2.1.2、安装相关包 yum install openstack-keystone httpd mod_wsgi -y 2.1.3、生成一个随机值在初始的配置中作为管理员的令牌。 [root@controller ~]# openssl rand -hex 10 2b7275cdec59141d9124 2.1.4、编辑 vi /etc/keystone/keystone.conf [DEFAULT] admin_token = 2b7275cdec59141d9124 [database] connection = mysql+pymysql://keystone:P@ssw0rd@controller/keystone [token] provider = fernet 2.1.5、初始化身份认证服务的数据库: su -s /bin/sh -c "keystone-manage db_sync" keystone 2.1.6、初始化 fernet keys keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone 2.1.7、配置 apache 服务 ---这里的名称就是主机名 vi /etc/httpd/conf/httpd.conf ServerName controller vi /etc/httpd/conf.d/wsgi-keystone.conf 新增配置 Listen 5000 Listen 35357 WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP} WSGIProcessGroup keystone-public WSGIScriptAlias / /usr/bin/keystone-wsgi-public WSGIApplicationGroup %{GLOBAL} WSGIPassAuthorization On ErrorLogFormat "%{cu}t %M" ErrorLog /var/log/httpd/keystone-error.log CustomLog /var/log/httpd/keystone-access.log combined Require all granted WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP} WSGIProcessGroup keystone-admin WSGIScriptAlias / /usr/bin/keystone-wsgi-admin WSGIApplicationGroup %{GLOBAL} WSGIPassAuthorization On ErrorLogFormat "%{cu}t %M" ErrorLog /var/log/httpd/keystone-error.log CustomLog /var/log/httpd/keystone-access.log combined By:冰蓝. wx_fcxyz
分享到:
收藏