1. 程式人生 > >學習openstack(四)

學習openstack(四)

一。KVM虛擬化

1.KVM的安裝:

     yum install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install

     /etc/init.d/libvirtd start      

2.建立一個5G的大小的虛擬機器:

    qemu-img create -f raw /opt/centos-6.5-x86_64.raw 5G

3.檢視虛擬機器空間使用大小:

    qemu-img info /opt/centos-6.5-x86_64.raw

4.啟動虛擬機器,並指定記憶體512,磁碟位置,和CDROM的位置,並啟動VNC。

virt-install --virt-type kvm --name centos-6.6-64 --ram 512 --cdrom=/opt/centos-6.5.iso --disk path=/opt/centos-6.5-x86_64.raw --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel6

5.使用VNC訪問虛擬機器:

  172.16.2.210 5900埠        (第一臺虛擬機器預設是5900,第二臺就是5901)

6.檢視所有建立的虛擬機器:

    virsh list --all

7.啟動虛擬機器virsh start centos-6.6-64:

  virsh start centos-6.6-64 

7.1.直接進入虛擬機器命令列:

   virsh console centos-6.6-64

8.檢視xml檔案:

  vim /etc/libvirt/qemu/centos-6.6-64.xml

   virsh edit centos-6.6-64        (修改xml檔案,不能直接用vim修改)

9.根據xml檔案新建虛擬機器:

   virsh define /opt/centos-6.6-64.xml

10.虛擬機器監控命令:virt-top

11.檢視虛擬網橋狀態:brctl show

12.建立橋接網絡卡並且關聯到eth0上面:

   brctl addbr br0

   brctl addif br0 eth0 && ip del dev eth0 172.16.1.210/24 && ifconfig br0 172.16.1.210/24 up

   (建立了橋接網絡卡以後需要把原來的eth0的IP去掉,把原來的IP配置在br0上面)

13。修改虛擬機器的網絡卡為剛才建立的橋接網絡卡:

     virsh edit centos-6.6-64   (修改虛擬機器xml檔案)

  1.   < interface type= 'bridge'>
  2.   <mac address= '52:54:00:e4:46:c7'/>
  3.   <source bridge= 'br0'/>
  4.   <model type= 'virtio'/>
    virsh destroy entos-6.6-64 (關閉在啟動虛擬機器生效)    virsh start entos-6.6-64   二。OPENSTACK 雲端計算與虛擬化 (I 版)  

 1.安裝Openstack基礎環境:
  1.   wget https: //dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm (下載epel源)
  2.   rpm -ivh epel-release-latest- 6.noarch.rpm
  3.   yum install -y python-pip gcc gcc-c++ make libtool patch automake python-devel libxslt-devel MySQL-python openssl-devel libudev-devel git wget libvirt-python libvirt qemu-kvm gedit python-numdisplay python-eventlet device-mapper bridge-utils libffi-devel libffi
 2.安裝mysql,並且在my.cnf裡面加上配置。
  1.   default-storage-engine = innodb
  2.   innodb_file_per_table
  3.   collation-server = utf8_general_ci
  4.   init-connect = 'SET NAMES utf8'
  5.   character-set-server = utf8
3.給openstack建立Mysql相關庫。
  1.   create database keystone;
  2.   grant all on keystone.* to [email protected] '172.16.0.0/255.255.0.0' identified by 'keystone';(改許可權和限制訪問的Ip段)
  3.    
  4.   create database glance;
  5.   grant all on glance.* to [email protected] '172.16.0.0/255.255.0.0' identified by 'glance';
  6.    
  7.   create database nova;
  8.   grant all on nova.* to [email protected] '172.16.0.0/255.255.0.0' identified by 'nova';
  9.    
  10.   create database neutron;
  11.   grant all on neutron.* to [email protected] '172.16.0.0/255.255.0.0' identified by 'neutron';
  12.    
  13.   create database cinder;
  14.   grant all on cinder.* to [email protected] '172.16.0.0/255.255.0.0' identified by 'cinder';
  15.    
 4.安裝rabbitmq訊息佇列:    yum install rabbitmq-server 5.安裝rabbitmq的web管理外掛:    cd /usr/lib/rabbitmq/bin    ./rabbitmq-plugins enable rabbitmq_management    /etc/init.d/rabbitmq-server restart    ./rabbitmq-plugins list  (檢查外掛是否正常安裝)   http://172.16.1.210:15672  (通過這個網址訪問,預設賬號密碼都是guest) 二。認證服務keystone相關(5000,35357) 6.配置openstack的官方安裝源:
  1.   [openstack]
  2.   name=openstack
  3.   baseurl=http: //repos.fedorapeople.org/repos/openstack/EOL/openstack-icehouse/epel-6
  4.   enabled= 1
  5.   gpgcheck= 0
  6.   gpgkey=file: ///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
 7.安裝openstack-keystone: yum install openstack-keystone python-keystoneclient  8.建立PKI的目錄給keystone使用:  keystone-manage pki_setup --keystone-user keystone --keystone-group keystone  chown -R keystone:keystone /etc/keystone/ssl  chmod -R o-rwx /etc/keystone/ssl   (刪掉其他使用者的許可權)  9.修改keystone的配置檔案:
vim /etc/keystone/keystone.conf 
 
  1.   admin_token=ADMIN
  2.   log_file=/var/log/keystone/keystone.log
  3.   connection=mysql: //keystone:[email protected]/keystone
 10.初始化keystone的資料庫表結構:    keystone-manage db_sync  (沒有報錯就是成功,最好在進mysql裡面show tables看下)   rm /var/log/keystone/keystone.log  (不操作會許可權報錯) 11.啟動keystone:   /etc/init.d/openstack-keystone start

 12.配置連線keystone連線需要的環境變數:

    export OS_SERVICE_TOKEN=ADMIN

    export OS_SERVICE_ENDPOINT=http://172.16.1.210:35357/v2.0

 13.初始化話keystone的使用者資料(admin,demo):

   建立admin,demo使用者,建立admin角色,建立service,admin租戶

  1.   keystone user-create --name=admin --pass=admin --email=admin @example.com
  2.   keystone role-create --name=admin
  3.   keystone tenant-create --name=admin --description= "Admin Tenant"
  4.   keystone user-role-add --user=admin --tenant=admin --role=admin
  5.   keystone user-role-add --user=admin --role=_member_ --tenant=admin
  6.   keystone user-create --name=demo --pass=demo
  7.   keystone tenant-create --name=demo --description= "demo Tenant"
  8.   keystone user-role-add --user=demo --role=_member_ --tenant=demo
  9.   keystone tenant-create --name=service
  10.   keystone service-create --name=keystone --type=identity
  11.   keystone endpoint-create --service-id=$(keystone service-list | awk '/ identity / {print $2}') --publicurl=http: //172.16.1.210:5000/v2.0 --internalurl=http://172.16.1.210:5000/v2.0 --adminurl=http://172.16.1.210:35357/v2.0

 建立完成後,使用keystone user-list 命令檢視是否有admin和demo兩個賬號

 

14.檢視admin的token

unset OS_SERVICE_TOKEN

unset OS_SERVICE_ENDPOINT

keystone --os-username=admin --os-password=admin --os-tenant-name=admin --os-auth-url=http://172.16.1.210:35357/v2.0 token-get

15.建立admin和demo使用者的環境變數檔案:

vim /root/keystone-admin

 

  1.   export OS_TENANT_NAME=admin
  2.   export OS_USERNAME=admin
  3.   export OS_PASSWORD=admin
  4.   export OS_AUTH_URL=http: //172.16.1.210:35357/v2.0

vim /root/keystone-demo

 

  1.   export OS_TENANT_NAME=demo
  2.   export OS_USERNAME=demo
  3.   export OS_PASSWORD=demo
  4.   export OS_AUTH_URL=http: //172.16.1.210:35357/v2.0

 三。映象服務Glance(9292,9191)


1.安裝glance:

yum install openstack-glance python-glance python-glanceclient

 

2.配置glance:

vim /etc/glance/glance-api.conf

 

  1.   [DEFAULT]
  2.   debug=True
  3.   default_store=file
  4.   filesystem_store_datadir=/data/glance/images/
  5.   log_file=/var/log/glance/api.log
  6.   notifier_strategy = rabbit
  7.   rabbit_host= 172.16.1.210
  8.   rabbit_port= 5672
  9.   rabbit_use_ssl= false
  10.   rabbit_userid=guest
  11.   rabbit_password=guest
  12.   rabbit_virtual_host=/
  13.   rabbit_notification_exchange=glance
  14.   rabbit_notification_topic=notifications
  15.   rabbit_durable_queues=False
  16.   [database]
  17.   connection=mysql: //glance:[email protected]/glance
  18.   [keystone_authtoken]
  19.   auth_host= 172.16.1.210
  20.   auth_port= 35357
  21.   auth_protocol=http
  22.   admin_tenant_name=service
  23.   admin_user=glance
  24.   admin_password=glance
  25.   [paste_deploy]
  26.   flavor=keystone

vim /etc/glance/glance-registry.conf

 

  1.   debug=True
  2.   log_file=/var/log/glance/registry.log
  3.   connection=mysql: //glance:[email protected]/glance
  4.    
  5.   [keystone_authtoken]
  6.   auth_host= 172.16.1.210
  7.   auth_port= 35357
  8.   auth_protocol=http
  9.   admin_tenant_name=service
  10.   admin_user=glance
  11.   admin_password=glance
  12.    
  13.   [paste_deploy]
  14.   flavor=keystone

 

3.同步glance的mysql資料庫:

glance-manage db_sync  (警告報錯可以忽略)

chown -R glance:glance /var/log/glance

4.在keystone中建立glance的使用者:

keystone user-create --name=glance --pass=glance  (建立glance密碼也是一樣)

keystone user-role-add --user=glance --tenant=service --role=admin (講glance使用者加入到admin角色service租戶中)

5.將glance在keystone註冊服務和註冊url:

  1.   keystone service-create --name=glance --type=image
  2.   keystone endpoint-create --service-id=$(keystone service-list|awk '/ image / {print $2}') --publicurl=http: //172.16.1.210:9292 --internalurl=http://172.16.1.210:9292 --adminurl=http://172.16.1.210:9292

 6.啟動glance:

/etc/init.d/openstack-glance-api status

/etc/init.d/openstack-glance-registry start 

7.檢視映象列表:

   glance image-list 

8.下載開發映象並進行匯入:

  1.   wget http: //download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img
  2.   glance image-create --name "cirros-0.3.2-x86_64" --disk-format qcow2 --container-format bare --is- public True --file cirros- 0.3.2-x86_64-disk.img

 

 

四。計算服務nova相關  (5000,35357)

 1.安裝控制節點的nova服務:

yum install openstack-nova-api openstack-nova-cert openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler python-novaclient

pip install websockify==0.5.1   (解決novnc啟動不了的問題)

 2.修改nova的配置檔案:

 vim /etc/nova/nova.conf

  1.   rabbit_host= 172.16.1.210
  2.   rabbit_port= 5672
  3.   rabbit_use_ssl= false
  4.   rabbit_userid=guest
  5.   rabbit_password=guest
  6.   rpc_backend=rabbit
  7.   my_ip= 172.16.1.210
  8.   auth_strategy=keystone
  9.    
  10.   network_api_class=nova.network.neutronv2.api.API
  11.   linuxnet_interface_driver=nova.network.linux_net.LinuxBridgeInterfaceDriver
  12.   neutron_url=http: //172.16.1.210:9696
  13.   neutron_admin_username=neutron
  14.   neutron_admin_password=neutron
  15.   neutron_admin_tenant_id= 96616014997f4f79b7dbd9e319912154 ( "keystone tenant-list"命令看到的 service_id)
  16.   neutron_admin_tenant_name=service
  17.   neutron_admin_auth_url=http: //172.16.1.210:5000/v2.0
  18.   neutron_auth_strategy=keystone
  19.   firewall_driver=nova.virt.firewall.NoopFirewallDriver
  20.    
  21.   novncproxy_base_url=http: //172.16.1.210:6080/vnc_auto.html
  22.   vncserver_listen= 0.0.0.0
  23.   vncserver_proxyclient_address= 172.16.1.210
  24.   vnc_enabled= true
  25.   vnc_keymap=en-us
  26.   connection=mysql: //nova:[email protected]/nova
  27.   auth_host= 172.16.1.210
  28.   auth_port= 35357
  29.   auth_protocol=http
  30.   auth_uri=http: //172.16.1.210:5000
  31.   auth_version=v2.0
  32.   admin_user=nova
  33.   admin_password=nova
  34.   admin_tenant_name=service
  35.   vif_driver=nova.virt.libvirt.vif.NeutronLinuxBridgeVIFDriver

 

3.初始化nova的資料庫表結構:

nova-manage db sync

4在keystone中建立nova的使用者:

source /root/keystone-admin

keystone user-create --name=nova --pass=nova

keystone user-role-add --user=nova --tenant=service --role=admin

5.將nova在keystone註冊服務和註冊url:

 

  1.   source /root/keystone-admin (根據自己存放變數的檔案)
  2.   keystone service-create --name=nova --type=compute
  3.   keystone endpoint-create --service-id=$(keystone service-list|awk '/ compute / {print $2}') --publicurl=http: //172.16.1.210:8774/v2/%\(tenant_id\)s --internalurl=http://172.16.1.210:8774/v2/%\(tenant_id\)s --adminurl=http://172.16.1.210:8774/v2/%\(tenant_id\)s

 6.啟動nova所有相關服務:

 

for i in {api,cert,conductor,consoleauth,novncproxy,scheduler};do service openstack-nova-$i start; done
 

 7.在計算節點上面安裝相關服務:

    yum install -y qemu-kvm libvirt openstack-nova-compute python-novaclient

    yum upgrade device-mapper-libs

 8.將控制節點nova配置檔案複製到計算節點:

  scp /etc/nova/nova.conf 172.16.1.211:/etc/nova/nova.conf

  修改vncserver_proxyclient_address=172.16.1.211 配置的IP為計算節點的。

 9.啟動計算節點的相關服務:

/etc/init.d/libvirtd start

/etc/init.d/messagebus start

/etc/init.d/openstack-nova-compute start

10.在控制節點上面檢視是否註冊上來:

  nova host-list

六。網路服務neutron相關  (9696)

1.在控制節點安裝neutron服務:

yum install openstack-neutron openstack-neutron-ml2 python-neutronclient openstack-neutron-linuxbridge

2.修改neutron配置檔案:

vim /etc/neutron/neutron.conf

  1.   state_path = /var/lib/neutron
  2.   lock_path = $state_path/lock
  3.   core_plugin = ml2
  4.   service_plugins = router,firewall,lbaas
  5.   api_paste_config = /usr/share/neutron/api-paste.ini
  6.   auth_strategy = keystone
  7.   rabbit_host = 172.16.1.210
  8.   rabbit_password = guest
  9.   rabbit_port = 5672
  10.   rabbit_userid = guest
  11.   rabbit_virtual_host = /
  12.   notify_nova_on_port_status_changes = true
  13.   notify_nova_on_port_data_changes = true
  14.   nova_url = http: //172.16.1.210:8774/v2
  15.   nova_admin_username = nova
  16.   nova_admin_tenant_id = 96616014997f4f79b7dbd9e319912154 ( "keystone tenant-list"命令看到的 service_id)
  17.   nova_admin_password = nova
  18.   nova_admin_auth_url = http: //172.16.1.210:35357/v2.0
  19.   root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf
  20.   auth_host = 172.16.1.210
  21.   auth_port = 35357
  22.   auth_protocol = http
  23.   admin_tenant_name = service
  24.   admin_user = neutron
  25.   admin_password = neutron
  26.   connection = mysql: //neutron:[email protected]:3306/neutron
  27.   service_provider=LOADBALANCER:Haproxy:neutron.services.loadbalancer.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver: default
  28.   service_provider=VPN:openswan:neutron.services.vpn.service_drivers.ipsec.IPsecVPNDriver: default

 vim /etc/neutron/plugins/ml2/ml2_conf.ini  (下面是單一扁平網路的配置)

  1.   type_drivers = flat,vlan,gre,vxlan
  2.   tenant_network_types = flat,vlan,gre,vxlan
  3.   mechanism_drivers = linuxbridge,openvswitch
  4.   flat_networks = physnet1
  5.   enable_security_group = True

 vim /etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini    (下面是單一扁平網路的配置)

  1.   network_vlan_ranges = physnet1
  2.   physical_interface_mappings = physnet1:eth0 (根據網絡卡來配置)
  3.   firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
  4.   enable_security_group = True

 

3.在keystone中建立neutron的使用者:

  1.   keystone user-create --name neutron --pass neutron
  2.   keystone user-role-add --user neutron --tenant service --role admin

 4.這裡需要改下nova的neutron相關配置(我前面已經整合進去了)

 5.將neutron在keystone註冊服務和註冊url:

  1.   keystone service-create --name neutron --type network
  2.   keystone endpoint-create --service-id=$(keystone service-list |awk '/ network / {print $2}') --publicurl=http: //172.16.1.210:9696 --internalurl=http://172.16.1.210:9696 --adminurl=http://172.16.1.210:9696

 6.先使用手動啟動看是否有報錯(啟動成功會監聽9696埠):

neutron-server --config-file=/etc/neutron/neutron.conf --config-file=/etc/neutron/pluns/ml2/ml2_conf.ini  --config-file=/etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini
 

7.修改neutron服務的init啟動指令碼:

vim /etc/init.d/neutron-server

vim /etc/init.d/neutron-linuxbridge-agent              (兩個檔案修改相同的地方)

  1.   configs=(
  2.   "/etc/neutron/neutron.conf" \
  3.   "/etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini" \
  4.   "/etc/neutron/plugins/ml2/ml2_conf.ini" \
  5.   )

 8.啟動neutron服務:

/etc/init.d/neutron-server status

/etc/init.d/neutron-linuxbridge-agent start

9.檢視neutron的連線情況:

neutron agent-list

 

10.在計算節點安裝neutron服務:

yum install openstack-neutron openstack-neutron-ml2 python-neutronclient openstack-neutron-linuxbridge

11.將控制節點的配置檔案複製到計算節點上:

  1.   scp /etc/init.d/neutron-* 172.16.1.211:/etc/init.d/
  2.   scp /etc/neutron/neutron.conf 172.16.1.211:/etc/neutron/neutron.conf
  3.   scp /etc/neutron/plugins/ml2/ml2_conf.ini 172.16.1.211:/etc/neutron/plugins/ml2/ml2_conf.ini
  4.   scp /etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini 172.16.1.211:/etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini

 12.在計算節點上啟動neutron的客戶端程式:

/etc/init.d/neutron-linuxbridge-agent start

 七。web服務dashboard相關  (80)

1.安裝dashboard服務:

yum install httpd mod_wsgi memcached python-memcached openstack-dashboard

2.修改dashboard的配置檔案:

vim /etc/openstack-dashboard/local_settings    (修改下面兩項)

  1.   ALLOWED_HOSTS = [ 'horizon.example.com', 'localhost', '172.16.1.210'] (允許的地址)
  2.   CACHES = {
  3.   'default': {
  4.   'BACKEND' : 'django.core.cache.backends.memcached.MemcachedCache',
  5.   'LOCATION' : '127.0.0.1:11211',
  6.   }
  7.   }
  8.    
  9.   OPENSTACK_HOST = "172.16.1.210"

 3.啟動dashboard服務:

/etc/init.d/memcached start

/etc/init.d/httpd start

4.登入dashboard:

http://172.16.1.210/dashboard/

預設賬戶密碼:admin/admin

 八。除錯Openstack

1.為demo建立一個單一扁平網路:

neutron net-create --tenant-id 9d18b0a337064af386cc0d599dd172fd flat_net --shared --provider:network_type flat --provider:physical_network physnet1
 

 id為keystone tenant-list 檢視的demo_id,  flat_net是建立網路的名稱,--shared代表共享網路,後面是網路的型別,最後是對應neutron網路名稱.

2.檢視建立的網路:

   neutron net-list

3.在網頁上面建立子網:

 管理員-網路-點選網路-建立子網-扁平網路網段就用和eth0一樣的就可以

4.虛擬機器建立流程圖:


5.安裝備註:

  1.如果安裝完成以後虛擬機器無法ping同外網,請檢查網絡卡是否開啟“混雜模式”

  2.強行修改虛擬機器的狀態為“執行”

   nova reset-state 6986b3f8-be2c-4931-b3b9-90d8077210b6 --active

  3.啟動“主機集合”功能需要修改配置檔案:

  /etc/nova/nova.conf

  scheduler_default_filters=AvailabilityZoneFilter,RetryFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,CoreFilter

 4.將db4加入到gigold-2的主機集合裡面:

 nova aggregate-add-host gigold-2 db4

 nova aggregate-remove-host gigold-2 db4 (這個是刪除)

 5.關閉預設的virbr0虛擬網絡卡

  1.   virsh net-destroy default
  2.   virsh net-undefine default
  3.   service libvirtd restart

 

  • 大小: 386.1 KB
  • 大小: 214.9 KB

 #####################################################################################################

一。塊儲存服務Cinder控制節點

1.安裝cinder:

yum install openstack-cinder python-cinderclient

2.修改配置檔案:

vim /etc/cinder/cinder.conf

  1.   rabbit_host= 172.16.1.210
  2.   rabbit_port= 5672
  3.   rabbit_use_ssl= false
  4.   rabbit_userid=guest
  5.   rabbit_password=guest
  6.   rpc_backend=rabbit
  7.   my_ip= 172.16.1.210
  8.   glance_host=$my_ip
  9.   auth_strategy=keystone
  10.   connection=mysql: //cinder:[email protected]/cinder
  11.   auth_host= 172.16.1.210
  12.   auth_port= 35357
  13.   auth_protocol=http
  14.   auth_uri=http: //172.16.1.210:5000
  15.   identity_uri=http: //172.16.1.210:35357/
  16.   auth_version=v2.0
  17. 相關推薦

    學習openstack

    一。KVM虛擬化 1.KVM的安裝:      yum install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install      /etc/

    openstack學習筆記-使用devstack自動化部署openstack的實驗環境

    devstack 是一套用來給開發人員快速部署Openstack開發環境的指令碼,其實對於整個安裝過程沒有什麼好說的,因為指令碼寫的很完善,安裝過程沒有難度,安裝的速度取決於自身的網路情況。 實驗環境:Ubuntu 14.04 LTS 64 1、安裝git

    Cocos2d-x學習筆記 布景層的加入移除

    dcl from position 顏色 顯示地圖 idt col 分享 學習 布景層類也就是CCLayer類,每一個遊戲場景中都能夠有非常多層,每一層負責各自的任務。顯示地圖、顯示人物等。同一時候層還是一個容器,能夠放入文本、圖片和菜單。構成遊戲中一個個UI。這次

    機器學習筆記機器學習可行性分析

    資料 表示 image 隨機 訓練樣本 -s mage 例如 lin 從大量數據中抽取出一些樣本,例如,從大量彈珠中隨機抽取出一些樣本,總的樣本中橘色彈珠的比例為,抽取出的樣本中橘色彈珠的比例為,這兩個比例的值相差很大的幾率很小,數學公式表示為: 用抽取到的樣本作為訓練

    Python_sklearn機器學習學習筆記decision_tree決策樹

    min n) 空間 strong output epo from 標簽 ict # 決策樹 import pandas as pd from sklearn.tree import DecisionTreeClassifier from sklearn.

    學習yaf路由

    protect 根據 route 構造 bar mod enc ble function 使用路由 使用路由既可以讓之很復雜,同時也能讓它很簡單,這是歸於你的應用。然而使用一個路由是很簡單的,你可以添加你的路由協議給路由器,這樣就OK了! 不同的路

    Python學習筆記 列表生成式_生成器

    rec triangle 小寫 ont 無限 end clas 普通 執行過程 筆記摘抄來自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431

    Unity3D之Mecanim動畫系統學習筆記:Animation State

    大致 面板 輸入 jpg any 動畫播放 速度 nsf 顯示 動畫的設置 我們先看看Animation Clip的一些設置: Loop time:動畫是否循環播放。 下面出現了3個大致一樣的選項: Root Transform Rotation:表示為播放動畫

    python機器學習實戰

    畫畫 import 測試數據 trac 1+n read dex 缺失值 類型 python機器學習實戰(四) 版權聲明:本文為博主原創文章,轉載請指明轉載地址

    JavaScript學習日誌:BOM

    特殊符號 對話框 核心 混淆 == script delet 網頁 port BOM的核心對象就是window,這一章沒什麽好說的,總結一些比較常用的: 1,a未定義,a; //報錯window.a; //undefined 不能用delete刪除全局變量 2

    .net core 2.0學習筆記:遷移.net framework 工程到.net core

    編譯 its evel hashtable ref 學習筆記 inline null 創建 在遷移.net core的過程中,第一步就是要把.net framework 工程的目標框架改為.net core2.0,但是官網卻沒有提供轉換工具,需要我們自己動手完成了

    C語言學習系列C語言基本語法和數據類型

    .html 二進制 占用 efault html pac 精度 es2017 %d 一、基本語法 C的令牌(Tokens)   C 程序由各種令牌組成,令牌可以是關鍵字、標識符、常量、字符串值,或者是一個符號。 關鍵字(保留字) auto else long swit

    ES6學習筆記—— async 函數

    ons fst cte code span pre getname 普通 聲明 await 是 async wait 的簡寫, 是 generator 函數的語法糖。 async 函數的特點: async 聲明一個方法是異步的,await 則等待這個異步方法執行的完

    Hibernate學習筆記 --- 映射基本數據類型的List集合

    varchar prim drop n) 進行 lis auth pos 方案 集合按其內元素的數據類型分為兩種:基本數據類型集合及復雜對象類型集合,Hibernate對於兩類集合提供不同的映射方式。(在類上以@Embeddable註解的復雜對象數據類型處理方式同基本數據類

    java學習筆記:import語法

    employee sign cnblogs java 調用 變量賦值 temp 職位 求職 Import 語法是給編譯器尋找特定類的適當位置的一種方法。 創建一個Employee 類,包括四個實體變量姓名(name),年齡(age),職位(designation)和薪水(s

    Cesium學習筆記Camera

    ttr can str efault 簡單的 list 事件處理 get provider http://blog.csdn.net/HobHunter/article/details/74909641 Cesium 相機控制場景中的視野。操作相機的方法有很多,如

    Flask 學習系列---Jinjia2 模板繼承

    list size border padding sub -- margin nbsp 中文 1.基模板 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF

    JAVA學習總結

    服務 共同點 運行 blog 重要 程序員 ride 處理 mob 1.接口 interface 1.1語法:   修飾符 interface 接口名{     常量     都是抽象方法  } 修飾符:默認 | public接口名:自定義,規則與類名相同,一般I字母打頭:

    python學習筆記-數據類型

    rand 兩個 urn 浪費 line 平年 randint .com .cn 0. 在 Python 中的數據類型詳解 http://www.cnblogs.com/scios/p/8026576.html 1. 為什麽布爾類型(bool)的 True 和 False 分

    Nodejs學習筆記-----Buffer

    pretty 成員 保存 n) tin 設置 amp 個數 普通 Node.js Buffer(緩沖區) JavaScript 語言自身只有字符串數據類型,沒有二進制數據類型。 但在處理像TCP流或文件流時,必須使用到二進制數據。因此在 Node.js中,定義了一個 Buf