ansible部署Openstack

目录

环境搭建

Install dependencies

Install Kolla-ansible

Deployment

Using OpenStack

图形化应用:


环境搭建

https://docs.openstack.org/kolla-ansible/latest/user/quickstart.html #官方网址

虚拟机要能上网

1. 需要一个内存为8G最小安装的(省空间)虚拟机,需要连接互联网

2. 双网卡 eth0: 172.25.0.1  访问Horizon使用          

               eth1:激活但不分配ip,neutron使用,云主机访问外网用 禁用selinux和firewalld

3. 虚拟机的cpu需要支持kvm虚拟化,在创建虚拟机时勾选以下选项即可(有时需要自己手动敲上去):

4. 添加一块20g硬盘

5. 配置epel源:

vim /etc/yum.repo.d/epel.repo

[epel]
name=epel
baseurl=https://mirrors.aliyun.com/epel/8/Everything/x86_64/
gpgcheck=0

6. 创建一个20g的卷

[root@kolla ~] fdisk -l #查看第二块磁盘是否添加成功
[root@kolla ~] pvcreate /dev/vdb
   Physical volume "/dev/vdb" successfully created.
[root@kolla ~]# vgcreate cinder-volumes /dev/vdb
  Volume group "cinder-volumes" successfully created
[root@kolla ~]# vgs
  VG             #PV #LV #SN Attr   VSize   VFree  
  cinder-volumes   1   0   0 wz--n- <20.00g <20.00g
  rhel             1   2   0 wz--n- <39.00g      0 

7. 安装docker,ansible(注意对应版本)

vim /etc/yum.repos.d/docker.repo

[docker]
name=docker-ce
baseurl=http://mirrors.aliyun.com/docker-ce/linux/centos/8.0/x86_64/stable/
gpgcheck=0

vim /etc/docker/deom.json #配置加速器,在镜像拉取时速度更快(在阿里云登陆注册可得)

[root@kolla yum.repos.d]# yum install -y docker-ce.x86_64-19.03.15-3.el8 docker-ce-cli-19.03.15-3.el8
[root@kolla yum.repos.d]# systemctl enable --now docker.service
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
[root@kolla yum.repos.d]# cd /etc/docker
[root@kolla docker]# ls
key.json
[root@kolla docker]# vim deamon.json
[root@kolla docker]# systemctl restart docker
[root@kolla docker]# docker info
[root@kolla ~]# yum install ansible -y 

rpm -q ansible #查看ansible版本,必须要2.9版本以上。

Install dependencies

[root@kolla ~]# yum install -y python3-devel libffi-devel gcc openssl-devel python3-libselinux
[root@kolla ~]# dnf install python3-pip -y
[root@kolla ~]# mkdir .pip
[root@kolla ~]# cd .pip/
[root@kolla .pip]# vim .pip.conf
[root@kolla ~]# pip3 install -U pip

vim pip.conf  #将全局地址改为阿里云,加速

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com

Install Kolla-ansible

[root@kolla ~]# pip3 install kolla-ansible
[root@kolla ~]# mkdir -p /etc/kolla
[root@kolla kolla]# cp -r /usr/local/share/kolla-ansible/etc_examples/kolla/* /etc/kolla
[root@kolla kolla]# cp /usr/local/share/kolla-ansible/ansible/inventory/* .
[root@kolla kolla]# rm -f multinode  #本次实验在单节点部署不需要multinode
[root@kolla kolla]# ls
all-in-one  globals.yml  passwords.yml
[root@kolla kolla]# vim /etc/ansible/ansible.cfg 
[root@kolla kolla]# ansible -i all-in-one all -m ping
[WARNING]: Invalid characters were found in group names but not replaced, use
-vvvv to see details
localhost | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}
[root@kolla kolla]# kolla-genpwd #随机生成密码
[root@kolla kolla]# vim passwords.yml
安装kolla-ansible: # pip3 install kolla-ansible==8.0.1 (stein版本对应8.0.1)    
  不同的openstack版本需要不一样的kolla-ansible版本
  报错: ERROR: Cannot uninstall 'PyYAML'.
执行:
pip install --ignore-installed PyYAML		#强制更新
vim passwords.yml #改变admin的密码
keystone_admin_password: westos		#admin密码
vim  /etc/ansible/ansible.cfg  #优化加速 
[defaults]
host_key_checking=False
pipelining=True
forks=100

vim globals.yml

kolla_base_distro: "centos"
network_interface: "eth0"  #根据自己网卡名定
neutron_external_interface: "eth1" ##根据自己网卡名定
kolla_internal_vip_address: "172.25.22.1" #本次实验为单节点,不用vip
enable_cinder: "yes"
enable_haproxy: "no"  
enable_cinder_backend_lvm: "yes"
enable_keepalived: "{{ enable_haproxy | bool }}"

禁用docker源:

 vim /usr/loacl/share/kolla-ansible/ansible/roles/baremetal/defaults/main.yml

enable_docker_repo: false	
redhat_pkg_install:
 - epel-release
# - "{{ docker_yum_package }}"		#注释掉此行

Deployment

可以先进行镜像拉取,防止在进行安装时由于网络原因导致安装失败。

 kolla-ansible -i all-in-one  pull

在安装之前检验hosts

 kolla-ansible -i ./all-in-one prechecks

 安装:

kolla-ansible -i ./all-in-one deploy

Using OpenStack

pip install python-openstackclient
kolla-ansible post-deploy
cd /etc/kolla

source admin-openrc.sh

openstack user list

openstack project list

vim  /usr/local/share/kolla-ansible/init-runonce

/usr/local/share/kolla-ansible/init-runonce

vim  /usr/local/share/kolla-ansible/init-runonce

ENABLE_EXT_NET=${ENABLE_EXT_NET:-1}
EXT_NET_CIDR=${EXT_NET_CIDR:-'172.25.22.0/24'}  #根据自己的IP定
EXT_NET_RANGE=${EXT_NET_RANGE:-'start=172.25.22.150,end=172.25.22.199'}
EXT_NET_GATEWAY=${EXT_NET_GATEWAY:-'172.25.22.22'}
#把dns改为国内,加速
--dns-nameserver 114.114.114.114
#创建flavor
 $KOLLA_OPENSTACK_COMMAND flavor create --id 6 --ram 64 --disk 1 --vcpus 1 m1.nano

图形化应用:

直接访问172.25.22.1(自己部署的节点的ip),用户为admin密码为/etc/kolla/passwords.yaml中自己更改的密码:

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值