▲单独架构的小伙伴看这里:(学习杰哥视频的作业第13-14天)
1、基于nfs实现openstack云盘容量的扩容。
一、部署块存储 cinder
1.1 数据库准备
[root@linux-host5 ~]# mysql -uroot –p
MariaDB [(none)]> CREATE DATABASE cinder;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder123';
1.2 控制端 cinder 服务注册
[root@linux-host1 ~]# source admin-ocata.sh
[root@linux-host1 ~]# openstack user create --domain default --password-prompt cinder
[root@linux-host1 ~]# openstack role add --project service --user cinder admin
1.3 创建服务
(1) 创建v2 版本服务
[root@linux-host1 ~]# openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
(2) 创建v3 版本服务
[root@linux-host1 ~]# openstack service create --name cinderv3 --description "OpenStack Block Storage" volumev3
1.4 注册 V2 版本 endpoint
(1) 公共端点:
[root@linux-host1 ~]# openstack endpoint create --region RegionOne volumev2 public http://192.168.10.100:8776/v2/%\(project_id\)s
(2) 私有端点:
[root@linux-host1 ~]# openstack endpoint create --region RegionOne volumev2 internal http://192.168.10.100:8776/v2/%\(project_id\)s
(3) 管理端点:
[root@linux-host1 ~]# openstack endpoint create --region RegionOne volumev2 admin http://192.168.10.100:8776/v2/%\(project_id\)s
1.5 注册 V3 版本 endpoint
(1) 公共端点:
[root@linux-host1 ~]# openstack endpoint create --region RegionOne volumev3 public http://192.168.10.100:8776/v3/%\(project_id\)s
(2) 私有端点:
[root@linux-host1 ~]# openstack endpoint create --region RegionOne volumev3 internal http://192.168.10.100:8776/v3/%\(project_id\)s
(3) 管理端点:
[root@linux-host1 ~]# openstack endpoint create --region RegionOne volumev3 admin http://192.168.10.100:8776/v3/%\(project_id\)s
1.6 安装并配置 cinder 组件
(1) 控制端安装 cinder
[root@linux-host1 ~]# yum install openstack-cinder –y
(2) 编辑配置文件 cinder.conf:
[root@linux-host1 ~]# vim /etc/cinder/cinder.conf
1:[DEFAULT]
263:my_ip = 192.168.10.201
376:auth_strategy = keystone
3243:transport_url = rabbit://openstack:[email protected]
3518:[database]
3546:connection = mysql+pymysql://cinder:[email protected]/cinder
3767:[keystone_authtoken]
3768:auth_uri = http://192.168.10.100:5000
3769:auth_url = http://192.168.10.100:35357
3770:memcached_servers = 192.168.10.100:11211
3771:auth_type = password
3772:project_domain_name = default
3773:user_domain_name = default
3774:project_name = service
3775:username = cinder
3776:password = cinder
3996:[oslo_concurrency]
4012:lock_path = /var/lib/cinder/tmp
1.7 同步并验证数据库
[root@linux-host1 ~]# su -s /bin/sh -c "cinder-manage db sync" cinder
[root@linux-host1 ~]# mysql -ucinder -h192.168.10.100 -pcinder123
MariaDB [cinder]> show tables;
1.8 控制端重启 nova-api 服务
[root@linux-host1 ~]# systemctl restart openstack-nova-api.service
1.9 启动块存储服务 cinder
[root@linux-host1 ~]# systemctl enable openstack-cinder-api.service openstack-cinderscheduler.service
[root@linux-host1 ~]# systemctl start openstack-cinder-api.service openstack-cinderscheduler.service
二、使用 NFS 作为 openstack 后端存储
2.1 安装 NFS 服务器
[root@linux-host5 ~]# yum install nfs-utils rpcbind
[root@linux-host5 ~]# mkdir /nfsdata/
[root@linux-host5 ~]# vim /etc/exports
/nfsdata *(rw,no_root_squash)
[root@linux-host5 ~]# systemctl start nfs
[root@linux-host5 ~]# systemctl enable nfs
2.2 配置 cinder 使用 NFS
(1) 编辑主配置文件:
[root@linux-host1 ~]# vim /etc/cinder/cinder.conf
380 enabled_backends = nfs
4901 [nfs]
4902 volume_backend_name = openstack-NFS
4903 volume_driver = cinder.volume.drivers.nfs.NfsDriver
4904 nfs_shares_config = /etc/cinder/nfs_shares
4905 nfs_mount_point_base = $state_path/mnt
(2) 创建 NFS 挂载配置文件:
[root@linux-host1 ~]# vim /etc/cinder/nfs_shares
192.168.10.205:/nfsdata
[root@linux-host1 ~]# chown root.cinder /etc/cinder/nfs_shares
[root@linux-host1 ~]# systemctl restart openstack-cinder-volume.service
(3) 验证 NFS 和 lvm:
[root@linux-host1 ~]# cinder service-list
2.3 创建磁盘类型并关联
(1) 创建类型:
[root@linux-host1 ~]# cinder type-create lvm
[root@linux-host1 ~]# cinder type-create nfs
(2) 将磁盘类型与磁盘关联:
[root@linux-host1 ~]# source admin-ocata.sh
[root@linux-host1 ~]# cinder type-key lvm set volume_backend_name=Openstack-lvm
[root@linux-host1 ~]# cinder type-key nfs set volume_backend_name=openstack-NFS
三、Openstack WEB操作
3.1 创建 NFS 卷
3.2 管理卷连接
3.3 选择目标实例
3.4 确认连接卷
3.5 连接过程中
3.6 连接后状态
3.7 虚拟机验证
3.8 格式化并挂载
四、磁盘扩容
如果主机之前并未划分过分区,只是使用裸盘格式化使用,那么可以使用如下方法进行原地扩容。
查看当前挂载信息,可以看到是裸盘挂载,例:磁盘大小 5G。
1. umount /dev/xvdb 取消挂载。
2.控制台进行磁盘扩容,然后重新挂载(按量付费的云盘);或者控制台重启服务器(普通云盘)。
3.e2fsck -f /dev/vdb
4.resize2fs /dev/vdb
5.mount /dev/vdb /opt 重新挂载磁盘。可以看到磁盘已经扩容成功。
2、安装配置tomcat,实现对java代码访问
一、安装环境
192.168.10.100:运行Tomcat
二、安装JAVA
2.1 安装JDK
[10.100]# yum install jdk-8u241-linux-x64.rpm
2.2 修改环境变量
[10.100]# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH
2.3 重读环境变量
[10.100]# . /etc/profile.d/java.sh
2.4 检查版本及变量
[10.100]# java -version
[10.100]# echo $JAVA_HOME
三、Tomcat的安装及配置
3.1 安装Tomcat
[10.100]# tar xf apache-tomcat-8.5.53.tar.gz -C /usr/local/
[10.100]# cd /usr/local/
[10.100]# ln -sv apache-tomcat-8.5.53 tomcat
3.2 配置tomcat环境变量
[10.100]# vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
3.3 重读环境变量
[10.100]# . /etc/profile.d/tomcat.sh
[10.100]# cd tomcat
[10.100]# bin/catalina.sh version
3.4 测试配置文件
[10.100]# bin/catalina.sh configtest
3.5 启动tomcat引擎catalina
[10.100]# bin/catalina.sh start
3.6 查看监控状态
[10.100]# ss -tnl
http://192.168.10.100:8080
四、手动添加一个测试应用程序
4.1 创建webapp特有的目录结构
[10.100]# cd /usr/local/tomcat/webapps/
[10.100]# mkdir myapp/{lib,classes,WEB-INF,META-INF} -pv
[10.100]# tree myapp/
4.2 创建首页
[10.100]# vim myapp/index.jsp
<%@ page language="java" %>
<%@ page import="java.util.*" %>
JSP Test Page
<% out.println("Hello,world");%>
4.3 重启catalina
[10.100]# cd /usr/local/tomcat
[10.100]# bin/catalina.sh stop
[10.100]# bin/catalina.sh start
五、测试访问
http://192.168.10.100:8080/myapp