使用kolla安装OPENSTACK

安装centos7
一、根据这个做一个模板
1、编辑host文件
10.103.129.146  control-1
10.103.129.147  node-1
10.103.129.148  node-2
10.103.129.149  network-1
10.103.129.150  ceph-1
10.103.129.151  ceph-2
10.103.129.152  control-2
10.103.129.153  network-2

解决中文乱码
localectl set-locale LANG=zh_CN
source   /etc/locale.conf

关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service

关闭sellinux
sed -i '/^SELINUX=.*/c SELINUX=disabled' /etc/selinux/config
sed -i 's/^SELINUXTYPE=.*/SELINUXTYPE=disabled/g' /etc/selinux/config
setenforce 0

改名
hostnamectl set-hostname xxx

Yum 源修改
修改为阿里云或者中科大的源地址

阿里:baseurl=http://mirrors.cloud.aliyuncs.com/alinux

中科大:baseurl=https://mirrors.ustc.edu.cn/centos

sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://mirror.centos.org/centos|baseurl=https://mirrors.ustc.edu.cn/centos|g' \
-i.bak \
/etc/yum.repos.d/CentOS-Base.repo

安装epel源
yum install -y epel-release
yum update -y

安装常用软件包
yum install gcc vim wget net-tools ntpdate git -y

配置免密钥
 ssh-keygen

 分发密钥
 ssh-copy-id root@dba-bigdata-node1

修改ssh配置
sed -i 's/#ClientAliveInterval 0/ClientAliveInterval 60/g' /etc/ssh/sshd_config
sed -i 's/#ClientAliveCountMax 3/ClientAliveCountMax 60/g' /etc/ssh/sshd_config
systemctl daemon-reload && systemctl restart sshd && systemctl status sshd

python环境
yum install python2-devel libffi-devel openssl-devel libselinux-python -y
yum install python-pip -y
pip install --upgrade pip==20.3.4
pip install pbr
配置清华的pip源,加快速度
mkdir ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
EOF
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
时间同步
 echo "
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp6.aliyun.com iburst
stratumweight 0
driftfile /var/lib/chrony/drift
rtcsync
makestep 10 3
bindcmdaddress 127.0.0.1
bindcmdaddress ::1
keyfile /etc/chrony.keys
commandkey 1
generatecommandkey
noclientlog
logchange 0.5
logdir /var/log/chrony
">/etc/chrony.conf

systemctl enable chronyd && systemctl restart chronyd && systemctl status chronyd
 chronyc sources -v
 yum install ntpdate
 ntpdate ntp1.aliyun.com
 hwclock -w

 设置docker-ce源,并设置为国内的地址
 wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo
 sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo

删除docker,安装docker-ce
  yum remove docker docker-common docker-selinux docker-engine -y
  yum install docker-ce -y

  配置国内docker推送地址
  mkdir /etc/docker/
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ],
  "insecure-registries": []
}
EOF

开启docker共享模式
mkdir -p /etc/systemd/system/docker.service.d
cat >> /etc/systemd/system/docker.service.d/kolla.conf << EOF
[Service]
MountFlags=shared
EOF

systemctl daemon-reload && systemctl enable docker && systemctl restart docker&& systemctl status docker

开启registry,建立本地仓库
docker pull registry
vim /etc/docker/registry/config.yml
version: 0.1
log:
fields:

    service: registry
storage:
  cache:
    blobdescriptor: inmemory
  filesystem:
    rootdirectory: /var/lib/registry
http:
  addr: :5000
  headers:
    X-Content-Type-Options: [nosniff]
    Access-Control-Allow-Origin: ['*']
    Access-Control-Allow-Methods: ['*']
    Access-Control-Max-Age: [1728000]

health:
  storagedriver:
    enabled: true
    interval: 10s
    threshold: 3

docker run -d \
--name registry \
   -p 4000:5000 \
   -v /etc/docker/registry/config.yml:/etc/docker/registry/config.yml \
   registry:latest

docker tag registry 10.103.129.146:4000/registry
docker push 10.103.129.146:4000/registry

docker pull joxit/docker-registry-ui

docker run -p 81:80 \
   --name registry-ui \
   -e REGISTRY_URL="http://10.103.129.146:4000" \
   -d joxit/docker-registry-ui:latest

安装ansible
pip install ansible
pip install kolla-ansible

复制kolla-ansible相关配置文件
cp -r /usr/share/kolla-ansible/etc_examples/kolla /etc/
cp /usr/share/kolla-ansible/ansible/inventory/multinode /etc/kolla/

自动生成各服务的密码文件
kolla-genpwd

database_password: KKdyIqxjgRJ9dCzPkm31pLJM6GwySNNPKlPkCUcI
karbor_keystone_password: vkCzxYPBdjlIKPC62LoBi8Nyp9xFer2VP8MOeMFx
keystone_admin_password: vcYM8HwJf1uMMy92vfi4tk3DpllcqHqDdUJXo3MF
keystone_database_password: VqCqSo8SZLlchIM8NqQwFMMARUSG3c22sNbvLLtu

安装失败
原因是使用了NFS后端存储但却没安装NFS服务
解决办法,只安装LVM后端存储,等之后再安装NFS
以下是一个可用的global.yml

more globals.yml | grep  -Ev "^#|^$"
---
kolla_base_distro: "centos"
kolla_install_type: "binary"
openstack_release: "train"
kolla_internal_vip_address: "10.103.129.157"
docker_namespace: "kolla"
network_interface: "ens32"
neutron_external_interface: "ens33"
neutron_plugin_agent: "openvswitch"
enable_ceph: "no"
enable_cinder: "yes"
enable_cinder_backend_lvm: "yes"
enable_cinder_backend_nfs: "no"
enable_heat: "yes"
enable_neutron_provider_networks: "yes"

安装harbor
wget https://ghproxy.com/https://github.com/goharbor/harbor/releases/download/v2.8.3/harbor-offline-installer-v2.8.3.tgz

pip install ansible==2.9.0
pip install pbr
pip install kolla-ansible==9.3.0 --ignore-installed PyYAML

yum install -y yum-utils device-mapper-persistent-data lvm2
yum -y install nfs-utils

LVM
pvcreate /dev/sdb
vgcreate cinder-volumes /dev/sdb
lvs
cat /etc/kolla/passwords.yml | grep keystone_admin_password
keystone_admin_password: kxj5PPmsCL1omIV7BsaRRUKAvdRhO9ThO8gG2Zqc

pip install -I ipaddress

ansible -i /etc/kolla/multinode all -m ping
kolla-ansible -i /etc/kolla/multinode bootstrap-servers
kolla-ansible -i /etc/kolla/multinode prechecks
kolla-ansible -i /etc/kolla/multinode deploy
kolla-ansible post-deploy

yum install centos-release-openstack-train
yum install python-openstackclient


iscsi服务器端在tgtd容器,使用命令tgt-admin -s 可查看连接的客户端

iscsi客户端在iscsid容器,使用命令iscsiadm -m session 可查看连接的服务器端

查看容器启动命令
docker pull cucker/get_command_4_run_container
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock cucker/get_command_4_run_container tgtd

管理OPENSTACK
导入认证toker
source /etc/kolla/admin-openrc.sh


列出计算节点
nova hypervisor-list
或者
openstack
(openstack) host list
又或者
hypervisor list


列出虚拟机
server list

列出规格
flavor list

查看网络代理
network agent list

列出所有网络
network list

查看网络详细信息
network show 4622d8cd-b2f5-4050-89b7-d9051e16c99e

创建网络
openstack network create <network_name>
network create --share --external --provider-physical-network physnet1 --provider-network-type flat out
network create --share --external --provider-physical-network default --provider-network-type vlan --provider-segment 3000 out_vlan

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值