becool

20210708(목) 설치 후 기초#3 본문

openstack

20210708(목) 설치 후 기초#3

gusalstm 2021. 7. 8. 17:02
반응형

확인 패키지 리스트

[root@controller ~]# yum list |grep openstack-.*ui
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
openstack-neutron-lbaas-ui.noarch 4.0.0-1.el7            @centos-openstack-queens  → 로드밸런서탭 설치 패키지
openstack-cloudkitty-ui.noarch    7.0.0-1.el7            centos-openstack-queens

[root@controller ~]# yum list |grep python2-openstack
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
python2-openstackclient.noarch    3.14.3-1.el7           @centos-openstack-queens → 명령어 도구

[root@controller ~]# yum list |grep openstack-utils
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
openstack-utils.noarch            2017.1-1.el7           centos-openstack-queens  → 유틸

 

[root@controller ~]# openstack-status
== Nova services ==
openstack-nova-api:                     active
openstack-nova-compute:                 inactive  (disabled on boot)
openstack-nova-network:                 inactive  (disabled on boot)
openstack-nova-scheduler:               active
openstack-nova-conductor:               active
openstack-nova-console:                 inactive  (disabled on boot)
openstack-nova-consoleauth:             active
openstack-nova-xvpvncproxy:             inactive  (disabled on boot)
== Glance services ==
openstack-glance-api:                   active
openstack-glance-registry:              active
== Keystone service ==
openstack-keystone:                     inactive  (disabled on boot)
== Horizon service ==
openstack-dashboard:                    active
== neutron services ==
neutron-server:                         active
neutron-dhcp-agent:                     active
neutron-l3-agent:                       active
neutron-metadata-agent:                 active
neutron-lbaasv2-agent:                  active
neutron-openvswitch-agent:              active
neutron-metering-agent:                 active
== Cinder services ==
openstack-cinder-api:                   active
openstack-cinder-scheduler:             active
openstack-cinder-volume:                active
openstack-cinder-backup:                active
== Ceilometer services ==
openstack-ceilometer-api:               inactive  (disabled on boot)
openstack-ceilometer-central:           active
openstack-ceilometer-compute:           inactive  (disabled on boot)
openstack-ceilometer-collector:         inactive  (disabled on boot)
openstack-ceilometer-notification:      active
== Heat services ==
openstack-heat-api:                     active
openstack-heat-api-cfn:                 active
openstack-heat-api-cloudwatch:          inactive  (disabled on boot)
openstack-heat-engine:                  active
== Support services ==
openvswitch:                            active
dbus:                                   active
target:                                 active
rabbitmq-server:                        active
memcached:                              active
== Keystone users ==
Warning keystonerc not sourced
[root@controller ~]# openstack-service list

[root@controller ~]# openstack-service restart^C → 전체 서비스 재시작 (비추)

가급적이면 systemctl 로 하나씩 서비스 관리하는 것을 추천

[root@controller ~]# ls /etc/bash_completion.d/
cinder.bash_completion  glance  iprutils  nova                      ovs-vsctl-bashcomp.bash  redefine_filedir
git                     heat    manila    ovs-appctl-bashcomp.bash  python-mistralclient     yum-utils.bash
[root@controller ~]# ls /etc/httpd
conf  conf.d  conf.modules.d  logs  modules  run
[root@controller ~]# openstack complete > /etc/bash_completion.d/osp_complete 

   → 오픈스택 컴플리트 출력(쉘스크립트)물을 파일로 저장

   → 오픈스택 자동완성 기능을 지원

[root@controller ~]# source /etc/bash_completion.d/osp_complete → source명령어로 적용

 

 

오픈스택 명령어 사용

기본문법

  openstack < SUBCOMMAND 1 : 관리대상 > < SUBCOMMAND 2 : 작업명령 > [OPTIONS]..

 

 1. 명령어 도구가 포함된 패키지 설치

    → controller에서는 기본 설치 되어있음

    현재 팩스택 설치환경에서의 실습이지만 일반적으로 명령어도구도 직접 설치가 필요함. 

    #yum install python2-openstackclient

2. OSP 에 네트워크 연결(keystone서비스의 endpoint)

    → controller노드에서 작업 : 네트워크 연결 불필요

     그 외 다른 가상머신에서는 동일한 네트워크 설정 필요

 3. keystonerc 파일등을 통한 사용자 인증정보 수정

    → admin 파일 존재

      추가적인 파일은 복사 후 값만 수정해서 사용

 

[root@controller ~]# source keystonerc_admin
[root@controller ~(keystone_admin)]# openstack image list
+--------------------------------------+--------------+--------+
| ID                                   | Name         | Status |
+--------------------------------------+--------------+--------+
| ddebf58c-12a8-499a-986c-3a2bf5913ddb | cirros       | active |
| bd458b40-7469-4ffb-9aa4-53a93f88b30b | img1         | active |
| 696e826e-3fbe-4274-82d7-a45594a9be42 | img2         | active |
| 32afc657-feed-4311-b0da-1194a114f566 | img_project1 | active |
+--------------------------------------+--------------+--------+

[root@controller ~(keystone_admin)]# openstack subnet list
+--------------------------------------+------------------+--------------------------------------+------------------+
| ID                                   | Name             | Network                              | Subnet           |
+--------------------------------------+------------------+--------------------------------------+------------------+
| 2721d528-5932-4eb0-9210-bc7836c4bff0 | demo_pro_subnet  | 93447c5f-3a62-445e-8e5f-d77deeb9572d | 192.168.200.0/24 |
| 97cd7904-c7b6-4eaf-a881-45ee9f3da225 | int_sub1         | 0c8d1fe6-b8e1-4503-8f24-2fdbdfc8b2f4 | 192.168.100.0/24 |
| 9e14280d-20c8-4b5b-ad7f-c066e9dcfd3e | ext_sub1         | d5556a31-b2df-4aef-9cf6-f2b7c91024c8 | 10.0.2.0/24      |
| db1c6a9e-bfcd-439e-b00d-0f9397af415a | demo_test_subnet | 325f9fcc-5332-48ba-9d02-bf9e4a72d554 | 192.168.150.0/24 |
| e8bb9c99-1659-49a2-bc0e-9ba81cc37d21 | subnet2          | 24e57b33-0acd-4496-9ffe-3a2239c2d132 | 192.168.56.0/24  |
+--------------------------------------+------------------+--------------------------------------+------------------+
[root@controller ~(keystone_admin)]# openstack

(openstack) flavor list
+--------------------------------------+-----------+-------+------+-----------+-------+-----------+
| ID                                   | Name      |   RAM | Disk | Ephemeral | VCPUs | Is Public |
+--------------------------------------+-----------+-------+------+-----------+-------+-----------+
| 1                                    | m1.tiny   |   512 |    1 |         0 |     1 | True      |
| 16f17f7c-6729-44ba-a918-f3191f8267b1 | f1        |  2048 |   10 |         0 |     1 | True      |
| 2                                    | m1.small  |  2048 |   20 |         0 |     1 | True      |
| 3                                    | m1.medium |  4096 |   40 |         0 |     2 | True      |
| 4                                    | m1.large  |  8192 |   80 |         0 |     4 | True      |
| 5                                    | m1.xlarge | 16384 |  160 |         0 |     8 | True      |
| 868fae77-fcb4-4e94-ab99-23dcfef64b0b | f2        |  2048 |   10 |         1 |     1 | True      |
+--------------------------------------+-----------+-------+------+-----------+-------+-----------+
(openstack) flavor list -c ID -c Name -c RAM → -c 옵션(column)을 통해 필요한 것만 선택 출력
+--------------------------------------+-----------+-------+
| ID                                   | Name      |   RAM |
+--------------------------------------+-----------+-------+
| 1                                    | m1.tiny   |   512 |
| 16f17f7c-6729-44ba-a918-f3191f8267b1 | f1        |  2048 |
| 2                                    | m1.small  |  2048 |
| 3                                    | m1.medium |  4096 |
| 4                                    | m1.large  |  8192 |
| 5                                    | m1.xlarge | 16384 |
| 868fae77-fcb4-4e94-ab99-23dcfef64b0b | f2        |  2048 |
+--------------------------------------+-----------+-------+

(openstack) server list -c ID -c Name -c Status  → 컬럼명 대소문자 구분
+--------------------------------------+----------+---------+
| ID                                   | Name     | Status  |
+--------------------------------------+----------+---------+
| fe99171e-f864-4634-a655-c11d5afac968 | vm3 test | SHUTOFF |
| 3d4945d7-8319-4c97-b817-765728415c9d | vm2      | SHUTOFF |
| fcb7e8cd-852e-4ea6-a83f-5e29ccaefc9e | vm1      | SHUTOFF |
+--------------------------------------+----------+---------+

(openstack) image create
usage: image create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN]
                    [--max-width <integer>] [--fit-width] [--print-empty]
                    [--noindent] [--prefix PREFIX] [--id <id>]
                    [--container-format <container-format>]
                    [--disk-format <disk-format>] → 이미지의 포맷(RAW,QCOW2 등)

                    [--min-disk <disk-gb>]  → 최소 디스크
                    [--min-ram <ram-mb>]  → 최소 램

                    [--file <file> | --volume <volume>]
                    [--force] [--protected | --unprotected] → 보호/비보호
                    [--public | --private | --community | --shared] → 4가지
                    [--property <key=value>]

                    [--tag <tag>] 
                    [--project <project>] → 퍼블릭이 아닌경우 특정 프로젝트 소속의 이미지로만 사용시 활용 

                    [--project-domain <project-domain>]
                    <image-name>

 

(openstack) flavor create

usage: flavor create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN]
                     [--max-width <integer>] [--fit-width] [--print-empty]
                     [--noindent] [--prefix PREFIX] [--id <id>]
                     [--ram <size-mb>] [--disk <size-gb>]   → 램, 디스크 사이즈(필수옵션)
                     [--ephemeral <size-gb>] [--swap <size-mb>]  → swap은 mb단위
                     [--vcpus <vcpus>] [--rxtx-factor <factor>] → cpu
                     [--public | --private] [--property <key=value>] → public/private
                     [--project <project>] [--project-domain <project-domain>]
                     <flavor-name>

(openstack) network create
usage: network create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN]
                      [--max-width <integer>] [--fit-width] [--print-empty]
                      [--noindent] [--prefix PREFIX] [--share | --no-share] →미 입력시 기본값 no share
                      [--enable | --disable] [--project <project>] → 기본값 enable  / 프로젝트 옵션 프로젝트명
                      [--description <description>] [--mtu <mtu>]
                      [--project-domain <project-domain>]
                      [--availability-zone-hint <availability-zone>]
                      [--enable-port-security | --disable-port-security]
                      [--external | --internal] [--default | --no-default] → 미 입력시 기본값 internal
                      [--qos-policy <qos-policy>]
                      [--transparent-vlan | --no-transparent-vlan]
                      [--provider-network-type <provider-network-type>] → phynet (local, gre, flat 등)
                      [--provider-physical-network <provider-physical-network>] → flat선택시 물리적주소(extnet 등)
                      [--provider-segment <provider-segment>] → VLAN선택시 추가로 작성해야하는 구분ID값
                      [--tag <tag> | --no-tag]
                      <name>

(openstack) subnet create
usage: subnet create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN]
                     [--max-width <integer>] [--fit-width] [--print-empty]
                     [--noindent] [--prefix PREFIX] [--project <project>]
                     [--project-domain <project-domain>]
                     [--subnet-pool <subnet-pool> | --use-prefix-delegation USE_PREFIX_DELEGATION | --use-default-subnet-pool]  
                     [--prefix-length <prefix-length>]
                     [--subnet-range <subnet-range>] [--dhcp | --no-dhcp] → no-dhcp
                     [--gateway <gateway>] [--ip-version {4,6}]  → 게이트 웨이
                     [--ipv6-ra-mode {dhcpv6-stateful,dhcpv6-stateless,slaac}]
                     [--ipv6-address-mode {dhcpv6-stateful,dhcpv6-stateless,slaac}]
                     [--network-segment <network-segment>] --network <network> → 네트워크 지정
                     [--description <description>]
                     [--allocation-pool start=<ip-address>,end=<ip-address>] → 할당범위
                     [--dns-nameserver <dns-nameserver>]
                     [--host-route destination=<subnet>,gateway=<ip-address>]
                     [--service-type <service-type>] [--tag <tag> | --no-tag]
                     name

(openstack) server create
usage: server create [-h] [-f {json,shell,table,value,yaml}] [-c COLUMN]
                     [--max-width <integer>] [--fit-width] [--print-empty]
                     [--noindent] [--prefix PREFIX]
                     (--image <image> | --volume <volume>) --flavor <flavor> → 이미지/볼륨 등 사용시 옵션
                     [--security-group <security-group>] → 보안그룹 
                     [--key-name <key-name>] [--property <key=value>]
                     [--file <dest-filename=source-filename>]
                     [--user-data <user-data>]
                     [--availability-zone <zone-name>]
                     [--block-device-mapping <dev-name=mapping>]
                     [--nic <net-id=net-uuid,v4-fixed-ip=ip-addr,v6-fixed-ip=ip-addr,port-id=port-uuid,auto,none>]
                     [--network <network>] [--port <port>] → nic/network 방식 network : 이름만, nic : 전체정보
                     [--hint <key=value>]
                     [--config-drive <config-drive-volume>|True]
                     [--min <count>] [--max <count>] [--wait]
                     <server-name>

[root@controller ~(keystone_admin)]# openstack keypair create
usage: openstack keypair create [-h] [-f {json,shell,table,value,yaml}]
                                [-c COLUMN] [--max-width ]
                                [--fit-width] [--print-empty] [--noindent]
                                [--prefix PREFIX]
                                [--public-key | --private-key ]  → 기존 공개키를 업로드
[root@controller ~(keystone_admin)]# openstack keypair create key1   

  → 개인키를 저장하지 않으므로 쓸 수 없다. (특히 CLI 환경)

[root@controller ~(keystone_admin)]# openstack keypair create --private-key key1.pem key1

  → 개인키를 key1.pem 파일로 저장

  → 파일 생성 시, 644 권한을 600 권한으로 수정 필요.   
[root@controller ~(keystone_admin)]# openstack volume create
usage: openstack volume create [-h] [-f {json,shell,table,value,yaml}]
                               [-c COLUMN] [--max-width <integer>]
                               [--fit-width] [--print-empty] [--noindent]
                               [--prefix PREFIX] [--size <size>]→ 사이즈
                               [--type <volume-type>]
                               [--image <image> | --snapshot <snapshot> | --source <volume> | --source-replicated <replicated-volume>]
                               [--description <description>] [--user <user>]
                               [--project <project>]
                               [--availability-zone <availability-zone>]
                               [--consistency-group consistency-group>]
                               [--property <key=value>] [--hint <key=value>]
                               [--multi-attach] [--bootable | --non-bootable]
                               [--read-only | --read-write]
                               <name>       이름지정

  → 볼륨 생성 후 인스턴스에 추가할려면 openstack server add 명령어 사용

[root@controller ~(keystone_admin)]# openstack server add [탭탭]
fixed     floating  network   port      security  volume
[root@controller ~(keystone_admin)]# openstack server add volume

[root@controller ~(keystone_admin)]# openstack router [탭탭]
add     create  delete  list    remove  set     show    unset

[root@controller ~(keystone_admin)]# openstack security group rule create
usage: openstack security group rule create [-h]
                                            [-f {json,shell,table,value,yaml}]
                                            [-c COLUMN]
                                            [--max-width <integer>]
                                            [--fit-width] [--print-empty]
                                            [--noindent] [--prefix PREFIX]
                                            [--remote-ip <ip-address> | --remote-group <group>] →IP기반,그룹명기반
                                            [--description <description>]
                                            [--dst-port <port-range>] → port번호 오픈
                                            [--icmp-type <icmp-type>]
                                            [--icmp-code <icmp-code>]
                                            [--protocol <protocol>] → 프로토콜 이름
                                            [--ingress | --egress] → 들어옴 ingress / 내보냄 egress
                                            [--ethertype <ethertype>]
                                            [--project <project>]
                                            [--project-domain <project-domain>]
                                            <group>

 

 

 

===========================

image flavor network subnet server create, delete 등 실습

항상 source keystonerc_admin 잘 체크

[root@controller ~(keystone_admin)]# opnestack flavor create --vcpus 1 --ram 1024 --disk 10 demo_flavor^C
[root@controller ~(keystone_admin)]# openstack image create --disk-format qcow2 --file FILENAME img01^C
[root@controller ~(keystone_admin)]# openstack network create ^C
[root@controller ~(keystone_admin)]# openstack subnet create --network net1 --subnet-range 1.1.1.1/24 sub01^C
[root@controller ~(keystone_admin)]# openstack server create --flavor f1 --image img01 --network net1 vm01^C
[root@controller ~(keystone_admin)]# openstack server create --flavor f1 --image img01 --nic net-id-net1 vm01^C

[root@controller ~(keystone_admin)]# openstack network create [EXTERNAL]

 

[root@controller ~(keystone_admin)]# openstack router create  <라우터이름 이름>

[root@controller ~(keystone_admin)]# openstack router add subnet <라우터이름> <서브넷 이름>^C

[root@controller ~(keystone_admin)]# openstack router add subnet rt1 demo_subnet

 

[root@controller ~]# qemu-img info cirros-0.5.2-x86_64-disk.img
image: cirros-0.5.2-x86_64-disk.img
file format: qcow2
virtual size: 112M (117440512 bytes)
disk size: 16M
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false


+----------------------------+--------------------------------------+
| Field                      | Value                                |
+----------------------------+--------------------------------------+
| OS-FLV-DISABLED:disabled   | False                                |
| OS-FLV-EXT-DATA:ephemeral  | 0                                    |
| disk                       | 10                                   |
| id                         | 09d61147-b5c0-450c-b5f8-3a1a011ffcfe |
| name                       | demo_flavor                          |
| os-flavor-access:is_public | True                                 |
| properties                 |                                      |
| ram                        | 1024                                 |
| rxtx_factor                | 1.0                                  |
| swap                       |                                      |
| vcpus                      | 1                                    |
+----------------------------+--------------------------------------+

 

실습 내용

플레이버 vcpu  1 , memory 1G , disk 10G

demo_flavor
이미지 - cirros 이미지 사용

demo_image
네트워크 / 서브넷 생성 192.168.10.0/24
demo_net / demo_subnet
인스턴스 demo_vm01

외부 네트워크 - 타입 flat, 물리네트워크 extnet

public_net / pub-sub
타입 : flat , 물리네트워크 : extnet

라우터 - demo_rt01
----> 여기까지  핑이 나가는지
 
보안그룹 - 이름 : demo_sg , 규칙 : ssh / ping 가능하게 설정 : ssh 20포트, ping icmp 프로토콜
keypair - 이름 : demo_key , 개인키 : demo_key.pem
인스턴스 생성 - demo_vm01 에서 사용한 이미지/플레이버/네트워크 및 demo_sg , demo_key 까지 사용해서 원격접속이 가능하게 구성해보기. 
===> 추가적으로 해볼 내용.





 

[root@controller ~(keystone_admin)]# openstack image create --disk-format qcow2

 --file cirros-0.5.2-x86_64-disk.img demo_image
+------------------+------------------------------------------------------+
| Field            | Value                                                |
+------------------+------------------------------------------------------+
| checksum         | b874c39491a2377b8490f5f1e89761a4                     |
| container_format | bare                                                 |
| created_at       | 2021-07-08T03:30:34Z                                 |
| disk_format      | qcow2                                                |
| file             | /v2/images/3e162d6d-f81f-4f9e-9929-0e8d1d59bdb9/file |
| id               | 3e162d6d-f81f-4f9e-9929-0e8d1d59bdb9                 |
| min_disk         | 0                                                    |
| min_ram          | 0                                                    |
| name             | demo_image                                           |
| owner            | f21117852a8c4b8282852213e79b96c6                     |
| protected        | False                                                |
| schema           | /v2/schemas/image                                    |
| size             | 16300544                                             |
| status           | active                                               |
| tags             |                                                      |
| updated_at       | 2021-07-08T03:30:34Z                                 |
| virtual_size     | None                                                 |
| visibility       | shared                                               |
+------------------+------------------------------------------------------+

[root@controller ~(keystone_admin)]# openstack network create demo_net
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | UP                                   |
| availability_zone_hints   |                                      |
| availability_zones        |                                      |
| created_at                | 2021-07-08T03:33:14Z                 |
| description               |                                      |
| dns_domain                | None                                 |
| id                        | 6e4d0c98-33b6-46a3-8033-22acccb97a40 |
| ipv4_address_scope        | None                                 |
| ipv6_address_scope        | None                                 |
| is_default                | False                                |
| is_vlan_transparent       | None                                 |
| mtu                       | 1450                                 |
| name                      | demo_net                             |
| port_security_enabled     | True                                 |
| project_id                | f21117852a8c4b8282852213e79b96c6     |
| provider:network_type     | vxlan                                |
| provider:physical_network | None                                 |
| provider:segmentation_id  | 69                                   |
| qos_policy_id             | None                                 |
| revision_number           | 2                                    |
| router:external           | Internal                             |
| segments                  | None                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tags                      |                                      |
| updated_at                | 2021-07-08T03:33:14Z                 |
+---------------------------+--------------------------------------+

[root@controller ~(keystone_admin)]# openstack subnet create --subnet-range 192.168.10.0/24

--network demo_net demo_subnet  → 앞서 만든 network이름 demo_net과 새로 만들 demo_subnet을 연결
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| allocation_pools  | 192.168.10.2-192.168.10.254          |
| cidr              | 192.168.10.0/24                      |
| created_at        | 2021-07-08T03:35:21Z                 |
| description       |                                      |
| dns_nameservers   |                                      |
| enable_dhcp       | True                                 |
| gateway_ip        | 192.168.10.1                         |
| host_routes       |                                      |
| id                | 7d9ce0eb-2f41-4a55-a217-a57bff0164e8 |
| ip_version        | 4                                    |
| ipv6_address_mode | None                                 |
| ipv6_ra_mode      | None                                 |
| name              | demo_subnet                          |
| network_id        | 6e4d0c98-33b6-46a3-8033-22acccb97a40 |
| prefix_length     | None                                 |
| project_id        | f21117852a8c4b8282852213e79b96c6     |
| revision_number   | 0                                    |
| segment_id        | None                                 |
| service_types     |                                      |
| subnetpool_id     | None                                 |
| tags              |                                      |
| updated_at        | 2021-07-08T03:35:21Z                 |
+-------------------+--------------------------------------+
[root@controller ~(keystone_admin)]#

[root@controller ~(keystone_admin)]# openstack server create --image demo_image --flavor demo_flavor

 --network demo_net demo_vm01

  --wait 옵션 : 완료 메시지가 즉시 출력되지 않고 status : active 되는 시점까지 기다렸다가 출력
+-------------------------------------+----------------------------------------------------+
| Field                               | Value                                              |
+-------------------------------------+----------------------------------------------------+
| OS-DCF:diskConfig                   | MANUAL                                             |
| OS-EXT-AZ:availability_zone         |                                                    |
| OS-EXT-SRV-ATTR:host                | None                                               |
| OS-EXT-SRV-ATTR:hypervisor_hostname | None                                               |
| OS-EXT-SRV-ATTR:instance_name       |                                                    |
| OS-EXT-STS:power_state              | NOSTATE                                            |
| OS-EXT-STS:task_state               | scheduling                                         |
| OS-EXT-STS:vm_state                 | building                                           |
| OS-SRV-USG:launched_at              | None                                               |
| OS-SRV-USG:terminated_at            | None                                               |
| accessIPv4                          |                                                    |
| accessIPv6                          |                                                    |
| addresses                           |                                                    |
| adminPass                           | uuUrLvn7YDgR                                       |
| config_drive                        |                                                    |
| created                             | 2021-07-08T03:38:47Z                               |
| flavor                              | demo_flavor (09d61147-b5c0-450c-b5f8-3a1a011ffcfe) |
| hostId                              |                                                    |
| id                                  | 6208364d-c3ea-4185-abfb-7145ca25d2d7               |
| image                               | demo_image (3e162d6d-f81f-4f9e-9929-0e8d1d59bdb9)  |
| key_name                            | None                                               | → 키페어
| name                                | demo_vm01                                          |
| progress                            | 0                                                  |
| project_id                          | f21117852a8c4b8282852213e79b96c6                   |
| properties                          |                                                    |
| security_groups                     | name='default'                                     | → 보안그룹
| status                              | BUILD                                              | → wait 옵션 사용 가능
| updated                             | 2021-07-08T03:38:47Z                               |
| user_id                             | e0acebc1c30b41c1961eaa0513737f31                   |
| volumes_attached                    |                                                    | → 추가 볼륨
+-------------------------------------+----------------------------------------------------+

[root@controller ~(keystone_admin)]# openstack router create demo_rt01
+-------------------------+--------------------------------------+
| Field                   | Value                                |
+-------------------------+--------------------------------------+
| admin_state_up          | UP                                   |
| availability_zone_hints |                                      |
| availability_zones      |                                      |
| created_at              | 2021-07-08T06:26:08Z                 |
| description             |                                      |
| distributed             | False                                |
| external_gateway_info   | None                                 |
| flavor_id               | None                                 |
| ha                      | False                                |
| id                      | 6e4af248-4d23-40b8-b959-73889dbeadb9 |
| name                    | demo_rt01                            |
| project_id              | f21117852a8c4b8282852213e79b96c6     |
| revision_number         | 0                                    |
| routes                  |                                      |
| status                  | ACTIVE                               |
| tags                    |                                      |
| updated_at              | 2021-07-08T06:26:08Z                 |
+-------------------------+--------------------------------------+

[root@controller ~(keystone_admin)]# openstack network create --provider-network-type flat --provider-physical-network extnet --external public_net
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | UP                                   |
| availability_zone_hints   |                                      |
| availability_zones        |                                      |
| created_at                | 2021-07-08T06:44:44Z                 |
| description               |                                      |
| dns_domain                | None                                 |
| id                        | 0db3d166-2021-429c-b8da-55a16f4f7f35 |
| ipv4_address_scope        | None                                 |
| ipv6_address_scope        | None                                 |
| is_default                | False                                |
| is_vlan_transparent       | None                                 |
| mtu                       | 1500                                 |
| name                      | public_net                           |
| port_security_enabled     | True                                 |
| project_id                | f21117852a8c4b8282852213e79b96c6     |
| provider:network_type     | flat                                 |
| provider:physical_network | extnet                               |
| provider:segmentation_id  | None                                 |
| qos_policy_id             | None                                 |
| revision_number           | 5                                    |
| router:external           | External                             |
| segments                  | None                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tags                      |                                      |
| updated_at                | 2021-07-08T06:44:44Z                 |
+---------------------------+--------------------------------------+

[root@controller ~(keystone_admin)]# openstack subnet create --network public_net --alloc
ation-pool start=10.0.2.50,end=10.0.2.100 --gateway 10.0.2.1 --no-dhcp --subnet-range 10.0.2.0/24 pub-sub
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| allocation_pools  | 10.0.2.50-10.0.2.100                 |
| cidr              | 10.0.2.0/24                          |
| created_at        | 2021-07-08T07:17:50Z                 |
| description       |                                      |
| dns_nameservers   |                                      |
| enable_dhcp       | False                                |
| gateway_ip        | 10.0.2.1                             |
| host_routes       |                                      |
| id                | 0bf6df97-35b1-418c-bc9b-eaf6ccf6ecd3 |
| ip_version        | 4                                    |
| ipv6_address_mode | None                                 |
| ipv6_ra_mode      | None                                 |
| name              | pub-sub                              |
| network_id        | 0db3d166-2021-429c-b8da-55a16f4f7f35 |
| prefix_length     | None                                 |
| project_id        | f21117852a8c4b8282852213e79b96c6     |
| revision_number   | 0                                    |
| segment_id        | None                                 |
| service_types     |                                      |
| subnetpool_id     | None                                 |
| tags              |                                      |
| updated_at        | 2021-07-08T07:17:50Z                 |
+-------------------+--------------------------------------+

 

 

 - 외부네트워크 실습 - 

(openstack) network create --enable --external --provider-network-type flat 

--provider-physical-network extnet 1pubnet   :외부 네트워크 생성

(openstack) subnet create --network 1pubnet --allocation-pool start=10.0.2.20,end=10.0.2.50

--gateway 10.0.2.1 --subnet-range 10.0.2.0/24 --no-dhcp 1pubsub :외부 서브넷 생성

(openstack) router create --enable --project admin 1rt : 라우터 생성

(openstack) router set 1rt --external-gateway 1pubnet : 라우터 외부 게이트 웨이 설정

(openstack) router add subnet 1rt 1pubsub : 라우터 외부네트워크 연결

(openstack) network create --enable --internal --project admin 1netnet : 내부 네트워크 생성

(openstack) subnet create --project admin --subnet-range 192.168.100.0/24 --dhcp
 --network 1netnet 1netsub : 내부 서브넷 생성

(openstack) server create --image demo_image --flavor m1.tiny --network 1netnet
1vm --wait : 인스턴스 생성

(openstack) router add subnet 1rt 1netsub : 라우터 내부네트워크 연결

 

P469 참고.

(openstack) security group rule create --dst-port 22:22 --ingress demo_sg

(openstack) security group rule create --protocol tcp --dst-port 22 --remote-ip 0.0.0.0 -ingress demo_sg

(openstack) security group rule create --protocol icmp --ingress demo_sg

(openstack) security group show demo_sg --fit-width

(openstack) keypair create --private-key demo_key.pem demo_key

(openstack) server create --image demo_image --flavor demo_flavor --network 1netnet --security-group demo_sg

--key-name demo_key demo_vm --wait

+-------------------------------------+----------------------------------------------------------+
| Field                               | Value                                                    |
+-------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig                   | MANUAL                                                   |
| OS-EXT-AZ:availability_zone         | nova                                                     |
| OS-EXT-SRV-ATTR:host                | compute1.cccr3.co.kr                                     |
| OS-EXT-SRV-ATTR:hypervisor_hostname | compute1.cccr3.co.kr                                     |
| OS-EXT-SRV-ATTR:instance_name       | instance-00000014                                        |
| OS-EXT-STS:power_state              | Running                                                  |
| OS-EXT-STS:task_state               | None                                                     |
| OS-EXT-STS:vm_state                 | active                                                   |
| OS-SRV-USG:launched_at              | 2021-07-09T00:53:39.000000                               |
| OS-SRV-USG:terminated_at            | None                                                     |
| accessIPv4                          |                                                          |
| accessIPv6                          |                                                          |
| addresses                           | 1netnet=192.168.100.8                                    |
| adminPass                           | VX6P5puzn7AR                                             |
| config_drive                        |                                                          |
| created                             | 2021-07-09T00:53:29Z                                     |
| flavor                              | demo_flavor (09d61147-b5c0-450c-b5f8-3a1a011ffcfe)       |
| hostId                              | 012c87a4953e6a617027f8711560c9c5847731d61efd66b2a2caa56d |
| id                                  | db971118-3fa8-49ea-81f4-c6eef9e85cdd                     |
| image                               | demo_image (3e162d6d-f81f-4f9e-9929-0e8d1d59bdb9)        |
| key_name                            | demo_key                                                 |
| name                                | demo_vm                                                  |
| progress                            | 0                                                        |
| project_id                          | f21117852a8c4b8282852213e79b96c6                         |
| properties                          |                                                          |
| security_groups                     | name='demo_sg'                                           |
| status                              | ACTIVE                                                   |
| updated                             | 2021-07-09T00:53:39Z                                     |
| user_id                             | e0acebc1c30b41c1961eaa0513737f31                         |
| volumes_attached                    |                                                          |
+-------------------------------------+----------------------------------------------------------+

(openstack) server add floating ip 1vm 10.0.2.30

(openstack) server add floating ip demo_vm 10.0.2.32

chmod 600 demo_key.pem

ssh cirros@10.0.2.32

 

1) 라우터 외부게이트웨이 설정

(openstack) router remove subnet 1pubsub

(openstack) router set 1rt --external-gateway 1pubnet : 라우터 외부 게이트 웨이 설정
(openstack) router add subnet 1pubsub

 

2) 내 아이피??? ping이 안들어옴. : 유동아이피 넣었는지 확인 (floating ip)

 

 

 

 

 

==================================================

그 외 명령어

[root@controller ~(keystone_admin)]# openstack server show demo_vm01

[root@controller ~(keystone_admin)]# openstack server list

[root@controller ~(keystone_admin)]# openstack server list --fit-width

[root@controller ~(keystone_admin)]# openstack console url show demo_vm01 --
fit-width  → 콘솔 접속 url을 볼 수 있는 명령어
+-------+------------------------------------------------------------------+
| Field | Value                                                            |
+-------+------------------------------------------------------------------+
| type  | novnc                                                            |
| url   | http://10.0.2.10:6080/vnc_auto.html?token=8e6ec349-5a63-4e45-b25 |
|       |                                                                      |
+-------+------------------------------------------------------------------+

[root@controller ~(keystone_admin)]# openstack console log show demo_vm01

 

외부통신 추가 시, dhcp 중복체크(해제), 

 

 

 

 

 

 

 

728x90

'openstack' 카테고리의 다른 글

20210712 (월) 서비스 개념 설명  (0) 2021.07.12
20210709 (금) 설치 후 기초 #4  (0) 2021.07.09
20210707 (수) 설치 후 기초#2  (0) 2021.07.07
20210706 (화) 설치 후 기초#1  (0) 2021.07.06
20210705 (월) packstack 설치  (0) 2021.07.05
Comments