centos 7部署openstack 基础环境
[root@openstack-3 ~]# yum list centos-release-openstack* Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Available Packages centos-release-openstack-queens.noarch 1-2.el7.centos extras centos-release-openstack-rocky.noarch 1-1.el7.centos extras centos-release-openstack-stein.noarch 1-1.el7.centos extras centos-release-openstack-train.noarch 1-1.el7.centos extras
官网文档:https://docs.openstack.org/install-guide/environment-security.html
安装yum源
[root@openstack-1 ~]# yum -y install centos-release-openstack-train.noarch
yum install https://rdoproject.org/repos/rdo-release.rpm
yum install python-openstackclient
yum install openstack-selinux
安装数据库
yum install mariadb mariadb-server python2-PyMySQL # py模块必须安装在控制节点,数据库可以不用
修改配置文件 /etc/my.cnf.d/openstack.cnf
[mysqld] bind-address = 0.0.0.0 default-storage-engine = innodb innodb_file_per_table = on max_connections = 4096 collation-server = utf8_general_ci character-set-server = utf8
[root@openstack-1 ~]# systemctl start mariadb [root@openstack-1 ~]# systemctl enable mariadb
小插曲,启动mariadb报错
[root@controller yum.repos.d]# systemctl status mariadb.service ● mariadb.service - MariaDB 10.3 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2022-07-26 17:39:00 CST; 1s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Process: 3649 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS) Process: 3578 ExecStartPre=/usr/libexec/mysql-prepare-db-dir %n (code=exited, status=0/SUCCESS) Process: 3553 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS) Main PID: 3617 (mysqld) Status: "Taking your SQL requests now..." CGroup: /system.slice/mariadb.service └─3617 /usr/libexec/mysqld --basedir=/usr Jul 26 17:39:00 controller systemd[1]: Starting MariaDB 10.3 database server... Jul 26 17:39:00 controller mysql-prepare-db-dir[3578]: Database MariaDB is probably initialized in /var/lib/mysql already, nothing is done. Jul 26 17:39:00 controller mysql-prepare-db-dir[3578]: If this is not the case, make sure the /var/lib/mysql is empty before running mysql-prepare-db-dir. Jul 26 17:39:00 controller mysqld[3617]: 2022-07-26 17:39:00 0 [Note] /usr/libexec/mysqld (mysqld 10.3.20-MariaDB) starting as process 3617 ... Jul 26 17:39:00 controller mysqld[3617]: 2022-07-26 17:39:00 0 [Warning] Could not increase number of max_open_files to more than 1024 (request: 8131) Jul 26 17:39:00 controller mysqld[3617]: 2022-07-26 17:39:00 0 [Warning] Changed limits: max_open_files: 1024 max_connections: 594 (was 4096) table_cache: 200 (was 2000) Jul 26 17:39:00 controller systemd[1]: Started MariaDB 10.3 database server.
百度了一番
ulimit -n 65535 # 临时配置
修改配置文件
vim /etc/security/limits.conf
* soft core unlimited * hard core unlimited * soft nofile 65535 * hard nofile 65535 * soft nproc 65535 * hard nproc 65535 * hard memlock 32000 * soft memlock 32000
修改启动文件
vim /etc/systemd/system/mysql.service
[Service] LimitNOFILE=65535
重启
[root@controller yum.repos.d]# systemctl status mariadb.service ● mariadb.service - MariaDB 10.3 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2022-07-26 17:41:14 CST; 4min 45s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Process: 3948 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS) Process: 3878 ExecStartPre=/usr/libexec/mysql-prepare-db-dir %n (code=exited, status=0/SUCCESS) Process: 3852 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS) Main PID: 3916 (mysqld) Status: "Taking your SQL requests now..." CGroup: /system.slice/mariadb.service └─3916 /usr/libexec/mysqld --basedir=/usr Jul 26 17:41:14 controller systemd[1]: Starting MariaDB 10.3 database server... Jul 26 17:41:14 controller mysql-prepare-db-dir[3878]: Database MariaDB is probably initialized in /var/lib/mysql already, nothing is done. Jul 26 17:41:14 controller mysql-prepare-db-dir[3878]: If this is not the case, make sure the /var/lib/mysql is empty before running mysql-prepare-db-dir. Jul 26 17:41:14 controller mysqld[3916]: 2022-07-26 17:41:14 0 [Note] /usr/libexec/mysqld (mysqld 10.3.20-MariaDB) starting as process 3916 ... Jul 26 17:41:14 controller systemd[1]: Started MariaDB 10.3 database server.
安装队列
yum install rabbitmq-server
[root@openstack-1 ~]# rabbitmqctl add_user openstack admin123456 Creating user "openstack"
[root@openstack-1 ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*" Setting permissions for user "openstack" in vhost "/"
开启web管理
[root@openstack-1 ~]# rabbitmq-plugins enable rabbitmq_management
设置管理员
[root@openstack-1 ~]# rabbitmqctl set_user_tags openstack administrator
访问
安装Memcached
yum install memcached python-memcached # py安装控制节点
编辑/etc/sysconfig/memcached
PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="512" OPTIONS="-l 0.0.0.0,::1"
systemctl enable memcached.service
systemctl start memcached.service
越学越感到自己的无知
分类:
openstack
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现