127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.10 controller
192.168.100.20 compute
[root@compute ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.10 controller
192.168.100.20 compute
(3)挂载iso文件
【挂载CentOS-7-x86_64-DVD-1804.iso】
[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1804.iso /mnt/
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# mkdir /opt/iaas
[root@controller ~]# cp -rvf /mnt/* /opt/centos/
[root@controller ~]# umount /mnt/
【挂载XianDian-IaaS-v2.4.iso】
[root@controller ~]# mount -o loop chinaskills_cloud_iaas.iso /mnt/
mount: /dev/loop0 is write-protected, mounting read-only
[root@controller ~]# cp -rvf /mnt/* /opt/iaas
(4)搭建ftp服务器,开启并设置自启
[root@controller ~]# yum install vsftpd -y
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
添加anon_root=/opt/
保存退出
[root@controller ~]# systemctl start vsftpd
[root@controller ~]# systemctl enable vsftpd
(5)配置防火墙和Selinux
【controller/compute】
编辑selinux文件
vi /etc/selinux/config
SELINUX=permissive
[root@controller ~]# setenforce 0
关闭防火墙并设置开机不自启
systemctl stop firewalld.service
systemctl disable firewalld.service
(6)清除缓存,验证yum源
【controller/compute】
yum clean all
yum list
controller和compute节点
yum install iaas-xiandian -y
编辑文件/etc/xiandian/openrc.sh,此文件是安装过程中的各项参数,根据每项参数上一行的说明及服务器实际情况进行配置。
Vim模式删除所有内容:%d
##--------------------system Config--------------------##
##Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.100.10
##Controller HOST Password. example:000000
HOST_PASS=000000
##Controller Server hostname. example:controller
HOST_NAME=controller
##Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.100.20
##Compute HOST Password. example:000000
HOST_PASS_NODE=000000
##Compute Node hostname. example:compute
HOST_NAME_NODE=compute
##--------------------Chrony Config-------------------##
##Controller network segment IP. example:x.x.0.0/16(x.x.x.0/24)
network_segment_IP=192.168.100.0/24
##--------------------Rabbit Config ------------------##
##user for rabbit. example:openstack
RABBIT_USER=openstack
##Password for rabbit user .example:000000
RABBIT_PASS=000000
##--------------------MySQL Config---------------------##
##Password for MySQL root user . exmaple:000000
DB_PASS=000000
##--------------------Keystone Config------------------##
##Password for Keystore admin user. exmaple:000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000
##Password for Mysql keystore user. exmaple:000000
KEYSTONE_DBPASS=000000
##--------------------Glance Config--------------------##
##Password for Mysql glance user. exmaple:000000
GLANCE_DBPASS=000000
##Password for Keystore glance user. exmaple:000000
GLANCE_PASS=000000
##--------------------Nova Config----------------------##
##Password for Mysql nova user. exmaple:000000
NOVA_DBPASS=000000
##Password for Keystore nova user. exmaple:000000
NOVA_PASS=000000
##--------------------Neturon Config-------------------##
##Password for Mysql neutron user. exmaple:000000
NEUTRON_DBPASS=000000
##Password for Keystore neutron user. exmaple:000000
NEUTRON_PASS=000000
##metadata secret for neutron. exmaple:000000
METADATA_SECRET=000000
##Tunnel Network Interface. example:x.x.x.x
INTERFACE_IP=192.168.100.10
##External Network Interface. example:eth1
INTERFACE_NAME=enp8s0
##External Network The Physical Adapter. example:provider
Physical_NAME=provider
##First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101
minvlan=2
##Last Vlan ID in VLAN RANGE for VLAN Network. example:200
maxvlan=300
##--------------------Cinder Config--------------------##
##Password for Mysql cinder user. exmaple:000000
CINDER_DBPASS=000000
##Password for Keystore cinder user. exmaple:000000
CINDER_PASS=000000
##Cinder Block Disk. example:md126p3
BLOCK_DISK=md126p4
##--------------------Swift Config---------------------##
##Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000
##The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=md126p5
##The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=192.168.100.20
##--------------------Heat Config----------------------##
##Password for Mysql heat user. exmaple:000000
HEAT_DBPASS=000000
##Password for Keystore heat user. exmaple:000000
HEAT_PASS=000000
##--------------------Zun Config-----------------------##
##Password for Mysql Zun user. exmaple:000000
ZUN_DBPASS=000000
##Password for Keystore Zun user. exmaple:000000
ZUN_PASS=000000
##Password for Mysql Kuryr user. exmaple:000000
KURYR_DBPASS=000000
##Password for Keystore Kuryr user. exmaple:000000
KURYR_PASS=000000
##--------------------Ceilometer Config----------------##
##Password for Gnocchi ceilometer user. exmaple:000000
CEILOMETER_DBPASS=000000
##Password for Keystore ceilometer user. exmaple:000000
CEILOMETER_PASS=000000
##--------------------AODH Config----------------##
##Password for Mysql AODH user. exmaple:000000
AODH_DBPASS=000000
##Password for Keystore AODH user. exmaple:000000
AODH_PASS=000000
##--------------------Barbican Config----------------##
##Password for Mysql Barbican user. exmaple:000000
BARBICAN_DBPASS=000000
##Password for Keystore Barbican user. exmaple:000000
BARBICAN_PASS=000000
scp /etc/xiandian/openrc.sh root@compute://etc/xiandian/
The authenticity of host ‘compute (192.168.100.20)’ can’t be established.
ECDSA key fingerprint is SHA256:RShHiJfjbyvHe3iH59hzhlPJAA2GdgjbtyvrgvbBiQ4.
ECDSA key fingerprint is MD5:a1:50:ff:a2:d0:6a:5b:2d:f0:ee:07:d5:f4:12:d3:71.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘compute,192.168.100.20’ (ECDSA) to the list of known hosts.
root@compute’s password:
openrc.sh 100% 3881 2.5MB/s 00:00
Compute节点修改tunnel IP
以下脚本按顺序执行!
Controller:
iaas-pre-host.sh
reboot
iaas-install-mysql.sh
iaas-install-keystone.sh
iaas-install-glance.sh
iaas-install-nova-controller.sh
iaas-install-neutron-controller.sh
iaas-install-dashboard.sh
iaas-install-cinder-controller.sh
iaas-install-swift-controller.sh
iaas-install-nova-compute.sh(修改配置之后运行)
Compute:
iaas-pre-host.sh
reboot
iaas-install-nova-compute.sh
iaas-install-neutron-compute.sh
iaas-install-cinder-compute.sh
iaas-install-swift-compute.sh
流程:
(1)管理员->资源管理->云主机类型->创建云主机类型
(2)管理员->网络->网络->创建网络
(2)项目->网络->安全组->管理规则->添加规则(ICMP、TCP、UDP)
(3)项目->资源管理->云主机->创建云主机
1 创建云主机类型
2 创建云主机网络
选择vlan模式,网络要和外网网卡一个网段,段ID要选择外网网卡所在网段
2.1绑定固定网络
3 修改安全组
4 上传镜像
[root@controller ~]# source /etc/keystone/admin-openrc.sh
[root@controller ~]# glance image-create --name “CentOS7.5” --disk-format qcow2 --container-format bare --progress < /opt/iaas/images/CentOS_7.5_x86_64_XD.qcow2
[=============================>] 100%
±-----------------±-------------------------------------+
…
5 创建云主机
6 测试连接
1 创建云主机类型
使用命令创建一个名为 test ,ID为 6 ,内存为 2048MB ,磁盘为 10GB ,vcpu数量为 2 的云主机类型。
nova flavor-create test 6 2048 10 2
±—±-----±----------±-----±----------±-----±------±------------±----------±------------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |
±—±-----±----------±-----±----------±-----±------±------------±----------±------------+
| 6 | test | 2048 | 10 | 0 | | 2 | 1.0 | True | - |
±—±-----±----------±-----±----------±-----±------±------------±----------±------------
2 创建云主机网络
思路:查看云平台创建好的网络,查看它的详细信息,用命令创建的时候,指定参数即可!
[root@controller ~]# neutron net-create --router:external --provider:network_type vlan --provider:physical_network provider --provider:segmentation_id 200 ext
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new network:
±--------------------------±-------------------------------------+
| Field | Value |
±--------------------------±-------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| created_at | 2020-12-01T00:22:18Z |
| description | |
| id | 37edbae1-9478-472e-a681-8587fbb464fb |
| ipv4_address_scope | |
| ipv6_address_scope | |
| is_default | False |
| mtu | 1500 |
| name | ext |
| port_security_enabled | True |
| project_id | 213eb58e471448cf969fd925382bc08d |
| provider:network_type | vlan |
| provider:physical_network | provider |
| provider:segmentation_id | 200 |
| revision_number | 5 |
| router:external | True |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | |
| tenant_id | 213eb58e471448cf969fd925382bc08d |
| updated_at | 2020-12-01T00:22:19Z |
±--------------------------±-------------------------------------+
创建子网
[root@controller ~]# neutron subnet-create ext 192.168.200.0/24 --name sub_ext --gateway 192.168.200.1
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new subnet:
±------------------±-----------------------------------------------------+
| Field | Value |
±------------------±-----------------------------------------------------+
| allocation_pools | {“start”: “192.168.200.2”, “end”: “192.168.200.254”} |
| cidr | 192.168.200.0/24 |
| created_at | 2020-12-01T00:28:39Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 192.168.100.1 |
| host_routes | |
| id | 0be6f045-08b2-459f-a989-b58863b1a29d |
| ip_version | 4 |
| ipv6_address_mode | |
| ipv6_ra_mode | |
| name | sub_ext |
| network_id | 37edbae1-9478-472e-a681-8587fbb464fb |
| project_id | 213eb58e471448cf969fd925382bc08d |
| revision_number | 0 |
| service_types | |
| subnetpool_id | |
| tags | |
| tenant_id | 213eb58e471448cf969fd925382bc08d |
| updated_at | 2020-12-01T00:28:39Z |
±------------------±-----------------------------------------------------+
3 创建云主机
[root@controller ~]# glance image-list
±-------------------------------------±----------+
| ID | Name |
±-------------------------------------±----------+
| db8a716d-0a2e-49eb-8892-681e7b6be41d | CentOS7.5 |
±-------------------------------------±----------+
[root@controller ~]# neutron net-list
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
±-------------------------------------±-----±---------------------------------±------------------------------------------------------+
| id | name | tenant_id | subnets |
±-------------------------------------±-----±---------------------------------±------------------------------------------------------+
| 37edbae1-9478-472e-a681-8587fbb464fb | ext | 213eb58e471448cf969fd925382bc08d | 0be6f045-08b2-459f-a989-b58863b1a29d 192.168.200.0/24 |
±-------------------------------------±-----±---------------------------------±------------------------------------------------------+
[root@controller ~]# nova flavor-list
±-------------------------------------±-----±----------±-----±----------±-----±------±------------±----------±------------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |
±-------------------------------------±-----±----------±-----±----------±-----±------±------------±----------±------------+
| 6 | test | 2048 | 10 | 0 | | 2 | 1.0 | True | -
±-------------------------------------±-----±----------±-----±----------±-----±------±------------±----------±------------+
[root@controller ~]# nova boot --flavor c5af1899-5ca2-4b5f-bf5e-b03d6e049f28 --image db8a716d-0a2e-49eb-8892-681e7b6be41d --nic net-id=37edbae1-9478-472e-a681-8587fbb464fb pc-cai
±-------------------------------------±-------------------------------------------------+
| Property | Value |
±-------------------------------------±-------------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | |
| OS-EXT-SRV-ATTR:host | - |
| OS-EXT-SRV-ATTR:hostname | pc-cai |
| OS-EXT-SRV-ATTR:hypervisor_hostname | - |
| OS-EXT-SRV-ATTR:instance_name | |
| OS-EXT-SRV-ATTR:kernel_id | |
| OS-EXT-SRV-ATTR:launch_index | 0 |
| OS-EXT-SRV-ATTR:ramdisk_id | |
| OS-EXT-SRV-ATTR:reservation_id | r-q8pfr6gu |
| OS-EXT-SRV-ATTR:root_device_name | - |
| OS-EXT-SRV-ATTR:user_data | - |
| OS-EXT-STS:power_state | 0 |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | - |
| OS-SRV-USG:terminated_at | - |
| accessIPv4 | |
| accessIPv6 | |
| adminPass | kmuX4hyXnv6N |
| config_drive | |
| created | 2020-12-01T00:38:47Z |
| description | - |
| flavor:disk | 50 |
| flavor:ephemeral | 0 |
| flavor:extra_specs | {} |
| flavor:original_name | BBB |
| flavor:ram | 4200 |
| flavor:swap | 0 |
| flavor:vcpus | 4 |
| hostId | |
| host_status | |
| id | 24192942-af87-444a-8145-f0cca1fc6880 |
| image | CentOS7.5 (db8a716d-0a2e-49eb-8892-681e7b6be41d) |
| key_name | - |
| locked | False |
| metadata | {} |
| name | pc-cai |
| os-extended-volumes:volumes_attached | [] |
| progress | 0 |
| security_groups | default |
| status | BUILD |
| tags | [] |
| tenant_id | 213eb58e471448cf969fd925382bc08d |
| updated | 2020-12-01T00:38:47Z |
| user_id | ea1193f0ce094069bbbbe22399c30929 |
±-------------------------------------±-------------------------------------------------+
4 创建云硬盘
建一个2G的硬盘名字为haha
[root@controller ~]# cinder create --name haha 2
±-------------------------------±-------------------------------------+
| Property | Value |
±-------------------------------±-------------------------------------+
| attachments | [] |
| availability_zone | nova |
| bootable | false |
| consistencygroup_id | None |
| created_at | 2020-12-01T00:48:15.000000 |
| description | None |
| encrypted | False |
| id | 0439bafc-2d9a-473c-8f38-e1ace00808a3 |
| metadata | {} |
| migration_status | None |
| multiattach | False |
| name | haha |
| os-vol-host-attr:host | None |
| os-vol-mig-status-attr:migstat | None |
| os-vol-mig-status-attr:name_id | None |
| os-vol-tenant-attr:tenant_id | 213eb58e471448cf969fd925382bc08d |
| replication_status | None |
| size | 2 |
| snapshot_id | None |
| source_volid | None |
| status | creating |
最全的Linux教程,Linux从入门到精通
======================
-
linux从入门到精通(第2版)
-
Linux系统移植
-
Linux驱动开发入门与实战
-
LINUX 系统移植 第2版
-
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。
需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论