brunch

PaaS-TA 4.0 전문가 교육

2019.07.22~07.26 판교제2테크노밸리 기업지원허브

by 가필드의 인사이트

[Cloud Model]

IaaS - CaaS - PaaS/aPaaS - FaaS - SaaS

ex) OpenStack - Docker - CloudFoundry - OpenWhisk-(Salesforce)

[IaaS]

가상화 유형: Hypervisor vs. Container

Pass-TA는 hypervisor 위에 콘테이너를 올림

KT는 apachecloudstack에 기반

[PaaS]

SaaS의 개념을 개발 플랫폼에 확장한 방식

VM위의 컨테이너 개념

https://www.cloudfoundry.org/

Hybrid 클라우드의 장점

[SaaS]

SaaS는 Business


실제사례: 타오바오, Q10


[Cloud Native]


Polyglot[ˈpɑːliɡlɑːt] Programming: 다중언어 프로그래밍

Mediation[mì:diéiʃən] : 중재


PaaS-TA 릴리스 이력(현재 최신 버전은 4.0 로텔)



[BOSH]

VM의 Life Cycle을 관리하는 툴

CPI: Cloud Provider i/f - IaaS API


[PaaS-TA 설치]

PaaS-TA/Guide-4.0-ROTELLE/


https://github.com/PaaS-TA/Guide-4.0-ROTELLE/blob/master/Install-Guide/Bosh/Bosh-Lite%20%EC%84%A4%EC%B9%98%20%EA%B0%80%EC%9D%B4%EB%93%9C%20%ED%99%98%EA%B2%BD%EC%84%A4%EC%A0%95v2.0.md


https://github.com/PaaS-TA/Guide-4.0-ROTELLE/blob/master/Install-Guide/Bosh/Bosh-Lite%20%EC%84%A4%EC%B9%98%20%EA%B0%80%EC%9D%B4%EB%93%9Cv2.0.md



ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$ ssh -i jumpbox.key jumpbox@192.168.50.51

Unauthorized use is strictly prohibited. All access and activity

is subject to logging and monitoring.

Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.15.0-54-generic x86_64)

* Documentation: https://help.ubuntu.com

* Management: https://landscape.canonical.com

* Support: https://ubuntu.com/advantage

Last login: Tue Jul 23 07:57:26 UTC 2019 from 192.168.50.1 on pts/0

Last login: Tue Jul 23 08:39:09 2019 from 192.168.50.1

To run a command as administrator (user "root"), use "sudo <command>".

See "man sudo_root" for details.

bosh/0:~$




login as: ubuntu

ubuntu@192.168.55.127's password:

Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.18.0-15-generic x86_64)

* Documentation: https://help.ubuntu.com

* Management: https://landscape.canonical.com

* Support: https://ubuntu.com/advantage

* Canonical Livepatch is available for installation.

- Reduce system reboots and improve kernel security. Activate at:

https://ubuntu.com/livepatch

패키지 405개를 업데이트할 수 있습니다.

180 업데이트는 보안 업데이트입니다.

Your Hardware Enablement Stack (HWE) is supported until April 2023.

Last login: Tue Jul 23 14:38:24 2019 from 192.168.55.113

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$ vboxmanage

Oracle VM VirtualBox Command Line Management Interface Version 5.2.20

(C) 2005-2018 Oracle Corporation

All rights reserved.

Usage:

VBoxManage [<general option>] <command>

General Options:

[-v|--version] print version number and exit

[-q|--nologo] suppress the logo

[--settingspw <pw>] provide the settings password

[--settingspwfile <file>] provide a file containing the settings password

[@<response-file>] load arguments from the given response file (bourne style)

Commands:

list [--long|-l] [--sorted|-s] vms|runningvms|ostypes|hostdvds|hostfl oppies

intnets|bridgedifs|hostonlyifs|natnets|dhcpservers

hostinfo|hostcpuids|hddbackends|hdds|dvds|floppies

usbhost|usbfilters|systemproperties|extpacks

groups|webcams|screenshotformats

showvminfo <uuid|vmname> [--details]

[--machinereadable]

showvminfo <uuid|vmname> --log <idx>

registervm <filename>

unregistervm <uuid|vmname> [--delete]

createvm --name <name>

[--groups <group>, ...]

[--ostype <ostype>]

[--register]

[--basefolder <path>]

[--uuid <uuid>]

modifyvm <uuid|vmname>

[--name <name>]

[--groups <group>, ...]

[--description <desc>]

[--ostype <ostype>]

[--iconfile <filename>]

[--memory <memorysize in MB>]

[--pagefusion on|off]

[--vram <vramsize in MB>]

[--acpi on|off]

[--pciattach 03:04.0]

[--pciattach 03:04.0@02:01.0]

[--pcidetach 03:04.0]

[--ioapic on|off]

[--hpet on|off]

[--triplefaultreset on|off]

[--apic on|off]

[--x2apic on|off]

[--paravirtprovider none|default|legacy|minimal

hyperv|kvm]

[--paravirtdebug <key=value> [,<key=value> ...]]

[--hwvirtex on|off]

[--nestedpaging on|off]

[--largepages on|off]

[--vtxvpid on|off]

[--vtxux on|off]

[--pae on|off]

[--longmode on|off]

[--ibpb-on-vm-exit on|off]

[--ibpb-on-vm-entry on|off]

[--spec-ctrl on|off]

[--l1d-flush-on-sched on|off]

[--l1d-flush-on-vm-entry on|off]

[--cpu-profile "host|Intel 80[86|286|386]"]

[--cpuid-portability-level <0..3>

[--cpuid-set <leaf[:subleaf]> <eax> <ebx> <ecx> <edx >]

[--cpuid-remove <leaf[:subleaf]>]

[--cpuidremoveall]

[--hardwareuuid <uuid>]

[--cpus <number>]

[--cpuhotplug on|off]

[--plugcpu <id>]

[--unplugcpu <id>]

[--cpuexecutioncap <1-100>]

[--rtcuseutc on|off]

[--graphicscontroller none|vboxvga|vmsvga]

[--monitorcount <number>]

[--accelerate3d on|off]

[--accelerate2dvideo on|off]

[--firmware bios|efi|efi32|efi64]

[--chipset ich9|piix3]

[--bioslogofadein on|off]

[--bioslogofadeout on|off]

[--bioslogodisplaytime <msec>]

[--bioslogoimagepath <imagepath>]

[--biosbootmenu disabled|menuonly|messageandmenu]

[--biosapic disabled|apic|x2apic]

[--biossystemtimeoffset <msec>]

[--biospxedebug on|off]

[--boot<1-4> none|floppy|dvd|disk|net>]

[--nic<1-N> none|null|nat|bridged|intnet|hostonly

generic|natnetwork]

[--nictype<1-N> Am79C970A|Am79C973

82540EM|82543GC|82545EM

virtio]

[--cableconnected<1-N> on|off]

[--nictrace<1-N> on|off]

[--nictracefile<1-N> <filename>]

[--nicproperty<1-N> name=[value]]

[--nicspeed<1-N> <kbps>]

[--nicbootprio<1-N> <priority>]

[--nicpromisc<1-N> deny|allow-vms|allow-all]

[--nicbandwidthgroup<1-N> none|<name>]

[--bridgeadapter<1-N> none|<devicename>]

[--hostonlyadapter<1-N> none|<devicename>]

[--intnet<1-N> <network name>]

[--nat-network<1-N> <network name>]

[--nicgenericdrv<1-N> <driver>

[--natnet<1-N> <network>|default]

[--natsettings<1-N> [<mtu>],[<socksnd>],

[<sockrcv>],[<tcpsnd>],

[<tcprcv>]]

[--natpf<1-N> [<rulename>],tcp|udp,[<hostip>],

<hostport>,[<guestip>],<guestport>]

[--natpf<1-N> delete <rulename>]

[--nattftpprefix<1-N> <prefix>]

[--nattftpfile<1-N> <file>]

[--nattftpserver<1-N> <ip>]

[--natbindip<1-N> <ip>

[--natdnspassdomain<1-N> on|off]

[--natdnsproxy<1-N> on|off]

[--natdnshostresolver<1-N> on|off]

[--nataliasmode<1-N> default|[log],[proxyonly],

[sameports]]

[--macaddress<1-N> auto|<mac>]

[--mouse ps2|usb|usbtablet|usbmultitouch]

[--keyboard ps2|usb

[--uart<1-N> off|<I/O base> <IRQ>]

[--uartmode<1-N> disconnected

server <pipe>

client <pipe>

tcpserver <port>

tcpclient <hostname:port>

file <file>

<devicename>]

[--lpt<1-N> off|<I/O base> <IRQ>]

[--lptmode<1-N> <devicename>]

[--guestmemoryballoon <balloonsize in MB>]

[--audio none|null|oss|alsa|pulse]

[--audioin on|off]

[--audioout on|off]

[--audiocontroller ac97|hda|sb16]

[--audiocodec stac9700|ad1980|stac9221|sb16]

[--clipboard disabled|hosttoguest|guesttohost

bidirectional]

[--draganddrop disabled|hosttoguest]

[--vrde on|off]

[--vrdeextpack default|<name>

[--vrdeproperty <name=[value]>]

[--vrdeport <hostport>]

[--vrdeaddress <hostip>]

[--vrdeauthtype null|external|guest]

[--vrdeauthlibrary default|<name>

[--vrdemulticon on|off]

[--vrdereusecon on|off]

[--vrdevideochannel on|off]

[--vrdevideochannelquality <percent>]

[--usb on|off]

[--usbehci on|off]

[--usbxhci on|off]

[--usbrename <oldname> <newname>]

[--snapshotfolder default|<path>]

[--teleporter on|off]

[--teleporterport <port>]

[--teleporteraddress <address|empty>

[--teleporterpassword <password>]

[--teleporterpasswordfile <file>|stdin]

[--tracing-enabled on|off]

[--tracing-config <config-string>]

[--tracing-allow-vm-access on|off]

[--usbcardreader on|off]

[--autostart-enabled on|off]

[--autostart-delay <seconds>]

[--videocap on|off]

[--videocapscreens all|<screen ID> [<screen ID> ...] ]

[--videocapfile <filename>]

[--videocapres <width> <height>]

[--videocaprate <rate>]

[--videocapfps <fps>]

[--videocapmaxtime <ms>]

[--videocapmaxsize <MB>]

[--videocapopts <key=value> [,<key=value> ...]]

[--defaultfrontend default|<name>]

clonevm <uuid|vmname>

[--snapshot <uuid>|<name>]

[--mode machine|machineandchildren|all]

[--options link|keepallmacs|keepnatmacs

keepdisknames]

[--name <name>]

[--groups <group>, ...]

[--basefolder <basefolder>]

[--uuid <uuid>]

[--register]

import <ovfname/ovaname>

[--dry-run|-n]

[--options keepallmacs|keepnatmacs|importtovdi]

[more options]

(run with -n to have options displayed

for a particular OVF)

export <machines> --output|-o <name>.<ovf/ova/tar.gz>

[--legacy09|--ovf09|--ovf10|--ovf20|--opc10]

[--manifest]

[--iso]

[--options manifest|iso|nomacs|nomacsbutnat]

[--vsys <number of virtual system>]

[--product <product name>]

[--producturl <product url>]

[--vendor <vendor name>]

[--vendorurl <vendor url>]

[--version <version info>]

[--description <description info>]

[--eula <license text>]

[--eulafile <filename>]

startvm <uuid|vmname>...

[--type gui|sdl|headless|separate]

[-E|--putenv <NAME>[=<VALUE>]]

controlvm <uuid|vmname>

pause|resume|reset|poweroff|savestate

acpipowerbutton|acpisleepbutton

keyboardputscancode <hex> [<hex> ...]

keyboardputstring <string1> [<string2> ...]

keyboardputfile <filename>

setlinkstate<1-N> on|off

nic<1-N> null|nat|bridged|intnet|hostonly|generic

natnetwork [<devicename>]

nictrace<1-N> on|off

nictracefile<1-N> <filename>

nicproperty<1-N> name=[value]

nicpromisc<1-N> deny|allow-vms|allow-all

natpf<1-N> [<rulename>],tcp|udp,[<hostip>],

<hostport>,[<guestip>],<guestport>

natpf<1-N> delete <rulename>

guestmemoryballoon <balloonsize in MB>

usbattach <uuid>|<address>

[--capturefile <filename>]

usbdetach <uuid>|<address>

audioin on|off

audioout on|off

clipboard disabled|hosttoguest|guesttohost

bidirectional

draganddrop disabled|hosttoguest

vrde on|off

vrdeport <port>

vrdeproperty <name=[value]>

vrdevideochannelquality <percent>

setvideomodehint <xres> <yres> <bpp>

[[<display>] [<enabled:yes|no>

[<xorigin> <yorigin>]]]

screenshotpng <file> [display]

videocap on|off

videocapscreens all|none|<screen>,[<screen>...]

videocapfile <file>

videocapres <width>x<height>

videocaprate <rate>

videocapfps <fps>

videocapmaxtime <ms>

videocapmaxsize <MB>

setcredentials <username>

--passwordfile <file> | <password>

<domain>

[--allowlocallogon <yes|no>]

teleport --host <name> --port <port>

[--maxdowntime <msec>]

[--passwordfile <file>

--password <password>]

plugcpu <id>

unplugcpu <id>

cpuexecutioncap <1-100>

webcam <attach [path [settings]]> | <detach [path]> | <list>

addencpassword <id>

<password file>|-

[--removeonsuspend <yes|no>]

removeencpassword <id>

removeallencpasswords

discardstate <uuid|vmname>

adoptstate <uuid|vmname> <state_file>

snapshot <uuid|vmname>

take <name> [--description <desc>] [--live]

[--uniquename Number,Timestamp,Space,Force]

delete <uuid|snapname>

restore <uuid|snapname>

restorecurrent

edit <uuid|snapname>|--current

[--name <name>]

[--description <desc>]

list [--details|--machinereadable]

showvminfo <uuid|snapname>

closemedium [disk|dvd|floppy] <uuid|filename>

[--delete]

storageattach <uuid|vmname>

--storagectl <name>

[--port <number>]

[--device <number>]

[--type dvddrive|hdd|fdd]

[--medium none|emptydrive|additions

<uuid|filename>|host:<drive>|iscsi]

[--mtype normal|writethrough|immutable|shareable

readonly|multiattach]

[--comment <text>]

[--setuuid <uuid>]

[--setparentuuid <uuid>]

[--passthrough on|off]

[--tempeject on|off]

[--nonrotational on|off]

[--discard on|off]

[--hotpluggable on|off]

[--bandwidthgroup <name>]

[--forceunmount]

[--server <name>|<ip>]

[--target <target>]

[--tport <port>]

[--lun <lun>]

[--encodedlun <lun>]

[--username <username>]

[--password <password>]

[--passwordfile <file>]

[--initiator <initiator>]

[--intnet]

storagectl <uuid|vmname>

--name <name>

[--add ide|sata|scsi|floppy|sas|usb|pcie]

[--controller LSILogic|LSILogicSAS|BusLogic

IntelAHCI|PIIX3|PIIX4|ICH6|I82078

[ USB|NVMe]

[--portcount <1-n>]

[--hostiocache on|off]

[--bootable on|off]

[--rename <name>]

[--remove]

bandwidthctl <uuid|vmname>

add <name> --type disk|network

--limit <megabytes per second>[k|m|g|K|M|G]

set <name>

--limit <megabytes per second>[k|m|g|K|M|G]

remove <name>

list [--machinereadable]

(limit units: k=kilobit, m=megabit, g=gigabit,

K=kilobyte, M=megabyte, G=gigabyte)

showmediuminfo [disk|dvd|floppy] <uuid|filename>

createmedium [disk|dvd|floppy] --filename <filename>

[--size <megabytes>|--sizebyte <bytes>]

[--diffparent <uuid>|<filename>

[--format VDI|VMDK|VHD] (default: VDI)

[--variant Standard,Fixed,Split2G,Stream,ESX]

modifymedium [disk|dvd|floppy] <uuid|filename>

[--type normal|writethrough|immutable|shareable

readonly|multiattach]

[--autoreset on|off]

[--property <name=[value]>]

[--compact]

[--resize <megabytes>|--resizebyte <bytes>]

[--move <path]

[--description <description string>]

clonemedium [disk|dvd|floppy] <uuid|inputfile> <uuid|outputfile>

[--format VDI|VMDK|VHD|RAW|<other>]

[--variant Standard,Fixed,Split2G,Stream,ESX]

[--existing]

mediumproperty [disk|dvd|floppy] set <uuid|filename>

<property> <value>

[disk|dvd|floppy] get <uuid|filename>

<property>

[disk|dvd|floppy] delete <uuid|filename>

<property>

encryptmedium <uuid|filename>

[--newpassword <file>|-]

[--oldpassword <file>|-]

[--cipher <cipher identifier>]

[--newpasswordid <password identifier>]

checkmediumpwd <uuid|filename>

<pwd file>|-

convertfromraw <filename> <outputfile>

[--format VDI|VMDK|VHD]

[--variant Standard,Fixed,Split2G,Stream,ESX]

[--uuid <uuid>]

convertfromraw stdin <outputfile> <bytes>

[--format VDI|VMDK|VHD]

[--variant Standard,Fixed,Split2G,Stream,ESX]

[--uuid <uuid>]

getextradata global|<uuid|vmname>

<key>|enumerate

setextradata global|<uuid|vmname>

<key>

[<value>] (no value deletes key)

setproperty machinefolder default|<folder>

hwvirtexclusive on|off

vrdeauthlibrary default|<library>

websrvauthlibrary default|null|<library>

vrdeextpack null|<library>

autostartdbpath null|<folder>

loghistorycount <value>

defaultfrontend default|<name>

logginglevel <log setting>

usbfilter add <index,0-N>

--target <uuid|vmname>|global

--name <string>

--action ignore|hold (global filters only)

[--active yes|no] (yes)

[--vendorid <XXXX>] (null)

[--productid <XXXX>] (null)

[--revision <IIFF>] (null)

[--manufacturer <string>] (null)

[--product <string>] (null)

[--remote yes|no] (null, VM filters only)

[--serialnumber <string>] (null)

[--maskedinterfaces <XXXXXXXX>]

usbfilter modify <index,0-N>

--target <uuid|vmname>|global

[--name <string>]

[--action ignore|hold] (global filters only)

[--active yes|no]

[--vendorid <XXXX>|""]

[--productid <XXXX>|""]

[--revision <IIFF>|""]

[--manufacturer <string>|""]

[--product <string>|""]

[--remote yes|no] (null, VM filters only)

[--serialnumber <string>|""]

[--maskedinterfaces <XXXXXXXX>]

usbfilter remove <index,0-N>

--target <uuid|vmname>|global

sharedfolder add <uuid|vmname>

--name <name> --hostpath <hostpath>

[--transient] [--readonly] [--automount]

sharedfolder remove <uuid|vmname>

--name <name> [--transient]

guestproperty get <uuid|vmname>

<property> [--verbose]

guestproperty set <uuid|vmname>

<property> [<value> [--flags <flags>]]

guestproperty delete|unset <uuid|vmname>

<property>

guestproperty enumerate <uuid|vmname>

[--patterns <patterns>]

guestproperty wait <uuid|vmname> <patterns>

[--timeout <msec>] [--fail-on-timeout]

guestcontrol <uuid|vmname> [--verbose|-v] [--quiet|-q]

[--username <name>] [--domain <domain>]

[--passwordfile <file> | --password <password>]

run [common-options]

[--exe <path to executable>] [--timeout <msec>]

[-E|--putenv <NAME>[=<VALUE>]] [--unquoted-args]

[--ignore-operhaned-processes] [--profile]

[--no-wait-stdout|--wait-stdout]

[--no-wait-stderr|--wait-stderr]

[--dos2unix] [--unix2dos]

-- <program/arg0> [argument1] ... [argumentN]]

start [common-options]

[--exe <path to executable>] [--timeout <msec>]

[-E|--putenv <NAME>[=<VALUE>]] [--unquoted-args]

[--ignore-operhaned-processes] [--profile]

-- <program/arg0> [argument1] ... [argumentN]]

copyfrom [common-options]

[--dryrun] [--follow] [-R|--recursive]

<guest-src0> [guest-src1 [...]] <host-dst>

copyfrom [common-options]

[--dryrun] [--follow] [-R|--recursive]

[--target-directory <host-dst-dir>]

<guest-src0> [guest-src1 [...]]

copyto [common-options]

[--dryrun] [--follow] [-R|--recursive]

<host-src0> [host-src1 [...]] <guest-dst>

copyto [common-options]

[--dryrun] [--follow] [-R|--recursive]

[--target-directory <guest-dst>]

<host-src0> [host-src1 [...]]

mkdir|createdir[ectory] [common-options]

[--parents] [--mode <mode>]

<guest directory> [...]

rmdir|removedir[ectory] [common-options]

[-R|--recursive]

<guest directory> [...]

removefile|rm [common-options] [-f|--force]

<guest file> [...]

mv|move|ren[ame] [common-options]

<source> [source1 [...]] <dest>

mktemp|createtemp[orary] [common-options]

[--secure] [--mode <mode>] [--tmpdir <directory>]

<template>

stat [common-options]

<file> [...]

guestcontrol <uuid|vmname> [--verbose|-v] [--quiet|-q]

list <all|sessions|processes|files> [common-opts]

closeprocess [common-options]

< --session-id <ID>

| --session-name <name or pattern>

<PID1> [PID1 [...]]

closesession [common-options]

< --all | --session-id <ID>

| --session-name <name or pattern> >

updatega|updateguestadditions|updateadditions

[--source <guest additions .ISO>]

[--wait-start] [common-options]

[-- [<argument1>] ... [<argumentN>]]

watch [common-options]

metrics list [*|host|<vmname> [<metric_list>]]

(comma-separated)

metrics setup

[--period <seconds>] (default: 1)

[--samples <count>] (default: 1)

[--list]

[*|host|<vmname> [<metric_list>]]

metrics query [*|host|<vmname> [<metric_list>]]

metrics enable

[--list]

[*|host|<vmname> [<metric_list>]]

metrics disable

[--list]

[*|host|<vmname> [<metric_list>]]

metrics collect

[--period <seconds>] (default: 1)

[--samples <count>] (default: 1)

[--list]

[--detach]

[*|host|<vmname> [<metric_list>]]

natnetwork add --netname <name>

--network <network>

[--enable|--disable]

[--dhcp on|off]

[--port-forward-4 <rule>]

[--loopback-4 <rule>]

[--ipv6 on|off]

[--port-forward-6 <rule>]

[--loopback-6 <rule>]

natnetwork remove --netname <name>

natnetwork modify --netname <name>

[--network <network>]

[--enable|--disable]

[--dhcp on|off]

[--port-forward-4 <rule>]

[--loopback-4 <rule>]

[--ipv6 on|off]

[--port-forward-6 <rule>]

[--loopback-6 <rule>]

natnetwork start --netname <name>

natnetwork stop --netname <name>

natnetwork list [<pattern>]

hostonlyif ipconfig <name>

[--dhcp

--ip<ipv4> [--netmask<ipv4> (def: 255.255.255.0)]

--ipv6<ipv6> [--netmasklengthv6<length> (def: 64)]]

create

remove <name>

dhcpserver add|modify --netname <network_name>

--ifname <hostonly_if_name>

[--ip <ip_address>

--netmask <network_mask>

--lowerip <lower_ip>

--upperip <upper_ip>]

[--enable | --disable]

dhcpserver remove --netname <network_name>

--ifname <hostonly_if_name>

usbdevsource add <source name>

--backend <backend>

--address <address>

usbdevsource remove <source name>

Introspection and guest debugging:

VBoxManage debugvm <uuid|vmname> dumpvmcore [--filename=name]

VBoxManage debugvm <uuid|vmname> info <item> [args...]

VBoxManage debugvm <uuid|vmname> injectnmi

VBoxManage debugvm <uuid|vmname> log [[--release] | [--debug]]

[group-settings...]

VBoxManage debugvm <uuid|vmname> logdest [[--release] | [--debug]]

[destinations...]

VBoxManage debugvm <uuid|vmname> logflags [[--release] | [--debug]] [flags...]

VBoxManage debugvm <uuid|vmname> osdetect

VBoxManage debugvm <uuid|vmname> osinfo

VBoxManage debugvm <uuid|vmname> osdmesg [--lines=lines]

VBoxManage debugvm <uuid|vmname> getregisters [--cpu=id] [reg-set.reg-name...]

VBoxManage debugvm <uuid|vmname> setregisters [--cpu=id]

[reg-set.reg-name=value...]

VBoxManage debugvm <uuid|vmname> show [[--human-readable] | [--sh-export]

[--sh-eval] | [--cmd-set]] [settings-item...]

VBoxManage debugvm <uuid|vmname> stack [--cpu=id]

VBoxManage debugvm <uuid|vmname> statistics [--reset] [--descriptions]

[--pattern=pattern]

Extension package management:

VBoxManage extpack install [--replace] <tarball>

VBoxManage extpack uninstall [--force] <name>

VBoxManage extpack cleanup

Unattended guest OS installation:

VBoxManage unattended detect <--iso=install-iso> [--machine-readable]

VBoxManage unattended install <uuid|vmname> <--iso=install-iso> [--user=login]

[--password=password] [--password-file=file] [--full-user-name=name]

[--key=product-key] [--install-additions] [--no-install-additions]

[--additions-iso=add-iso] [--install-txs] [--no-install-txs]

[--validation-kit-iso=testing-iso] [--locale=ll_CC] [--country=CC]

[--time-zone=tz] [--hostname=fqdn]

[--package-selection-adjustment=keyword] [--dry-run]

[--auxiliary-base-path=path] [--image-index=number]

[--script-template=file] [--post-install-template=file]

[--post-install-command=command]

[--extra-install-kernel-parameters=params] [--language=lang]

[--start-vm=session-type]



ubuntu@ubuntu-virtual-machine:~$ vboxmanage startvm $(bosh int ~/workspace/bosh- deployment/state.json --path /current_vm_cid) --type headless

Waiting for VM "vm-90c5ab0a-db92-4494-525f-90b184eec358" to power on...

VM "vm-90c5ab0a-db92-4494-525f-90b184eec358" has been successfully started.

ubuntu@ubuntu-virtual-machine:~$ ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group defaul t qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group de fault qlen 1000

link/ether 00:0c:29:3f:e5:00 brd ff:ff:ff:ff:ff:ff

inet 192.168.55.127/24 brd 192.168.55.255 scope global dynamic noprefixroute ens160

valid_lft 6840sec preferred_lft 6840sec

inet6 fe80::d025:6363:7c01:d04f/64 scope link noprefixroute

valid_lft forever preferred_lft forever

3: vboxnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000

link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff

inet 192.168.50.1/24 brd 192.168.50.255 scope global vboxnet0

valid_lft forever preferred_lft forever

inet6 fe80::800:27ff:fe00:0/64 scope link

valid_lft forever preferred_lft forever

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$ ls

'VirtualBox VMs' 공개 사진

bosh-env 다운로드 음악

examples.desktop 문서 템플릿

virtualbox-5.2_5.2.20-125813~Ubuntu~bionic_amd64.deb 바탕화면

workspace 비디오

ubuntu@ubuntu-virtual-machine:~$ cd workspace/

ubuntu@ubuntu-virtual-machine:~/workspace$ ls

bosh-deployment credhub-linux-2.0.0.tgz

ubuntu@ubuntu-virtual-machine:~/workspace$ cd bosh-deployment/

ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$ ls

LICENSE

NOTICE

README.md

aws

azure

bbr.yml

bosh-lite-docker.yml

bosh-lite-grootfs.yml

bosh-lite-runc.yml

bosh-lite.yml

bosh.yml

ci

create-bosh.sh

credhub-linux-2.0.0.tgz

credhub.yml

creds.yml

docker

docs

experimental

external-ip-not-recommended-uaa.yml

external-ip-not-recommended.yml

external-ip-with-registry-not-recommended.yml

gcp

hm

jumpbox-user.yml

jumpbox.key

local-bosh-release-tarball.yml

local-bosh-release.yml

local-dns.yml

misc

openstack

runtime-configs

softlayer

state.json

syslog.yml

tests

turbulence.yml

uaa.yml

vcloud

virtualbox

vsphere

warden


ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$ ssh -i jumpbox.key ju mbox@192.168.50.51

Unauthorized use is strictly prohibited. All access and activity

is subject to logging and monitoring.

Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.15.0-54-generic x86_64)

* Documentation: https://help.ubuntu.com

* Management: https://landscape.canonical.com

* Support: https://ubuntu.com/advantage

Last login: Tue Jul 23 07:57:26 UTC 2019 from 192.168.50.1 on pts/0

Last login: Tue Jul 23 08:39:09 2019 from 192.168.50.1

To run a command as administrator (user "root"), use "sudo <command>".

See "man sudo_root" for details.

bosh/0:~$


bosh/0:~$ netstat -na | grep LIST

tcp 0 0 0.0.0.0:8845 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:25555 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:25556 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:17013 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:8443 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:4222 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:7777 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:25250 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:25923 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:2822 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:8844 0.0.0.0:* LISTEN

unix 2 [ ACC ] STREAM LISTENING 12671 /run/systemd/private

unix 2 [ ACC ] SEQPACKET LISTENING 12685 /run/udev/control

unix 2 [ ACC ] STREAM LISTENING 13488 /run/systemd/journal/stdout

unix 2 [ ACC ] STREAM LISTENING 12682 /run/systemd/fsck.progress

unix 2 [ ACC ] STREAM LISTENING 12882 /var/run/dbus/system_bus_socket

unix 2 [ ACC ] STREAM LISTENING 30916 /tmp/.s.PGSQL.5432

unix 2 [ ACC ] STREAM LISTENING 30979 /var/vcap/data/blobstore/backend.sock

bosh/0:~$


[제3일차]

Bosh-Lite PaaS-TA 설치 가이드v2.0.md

https://github.com/PaaS-TA/Guide-4.0-ROTELLE/blob/master/Install-Guide/Bosh/Bosh-Lite%20PaaS-TA%20%EC%84%A4%EC%B9%98%20%EA%B0%80%EC%9D%B4%EB%93%9Cv2.0.md


[vboxcred.sh]

#!/bin/bash

export CREDPATH=/home/ubuntu/workspace/bosh-deployment

export BOSH_CA_CERT=$(bosh int $CREDPATH/creds.yml --path /director_ssl/ca)

export BOSH_CLIENT=admin

export BOSH_CLIENT_SECRET=$(bosh int $CREDPATH/creds.yml --path /admin_password)

export BOSH_ENVIRONMENT=vbox

bosh alias-env vbox -e 192.168.50.51 --ca-cert <(bosh int $CREDPATH/creds.yml --path /director_ssl/cal)

export CREDHUB_CLIENT=credhub-admin

export CREDHUB_SECRET=$(bosh int --path /credhub_admin_client_secret $CREDPATH/creds.yml)

$ export CREDHUB_CA_CERT=$(bosh int --path /credhub_tls/ca $CREDPATH/creds.yml)

$ credhub login -s https://192.168.50.51:8844 --skip-tls-validation


[.profile] 파일 맨뒤에 위 sh파일 추가하여 실행

. $HOME/workspace/bosh-deployment/vboxcred.sh


ubuntu@ubuntu-virtual-machine:~$ cd workspace/bosh-deployment/

ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$ clear

ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$


ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$ cat vboxcred.sh

#!/bin/bash

export CREDPATH=/home/ubuntu/workspace/bosh-deployment

export BOSH_CA_CERT=$(bosh int $CREDPATH/creds.yml --path /director_ssl/ca)

export BOSH_CLIENT=admin

export BOSH_CLIENT_SECRET=$(bosh int $CREDPATH/creds.yml --path /admin_password)

export BOSH_ENVIRONMENT=vbox

bosh alias-env vbox -e 192.168.50.51 --ca-cert <(bosh int $CREDPATH/creds.yml --path /director_ssl/ca)

export CREDHUB_CLIENT=credhub-admin

export CREDHUB_SECRET=$(bosh int --path /credhub_admin_client_secret $CREDPATH/creds.yml)

export CREDHUB_CA_CERT=$(bosh int --path /credhub_tls/ca $CREDPATH/creds.yml)

credhub login -s https://192.168.50.51:8844 --skip-tls-validation

ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$

ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$

ubuntu@ubuntu-virtual-machine:~/workspace/bosh-deployment$ cd ~

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$ cat .profile

# ~/.profile: executed by the command interpreter for login shells.

# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login

# exists.

# see /usr/share/doc/bash/examples/startup-files for examples.

# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask

# for ssh logins, install and configure the libpam-umask package.

#umask 022

# if running bash

if [ -n "$BASH_VERSION" ]; then

# include .bashrc if it exists

if [ -f "$HOME/.bashrc" ]; then

. "$HOME/.bashrc"

fi

fi

# set PATH so it includes user's private bin if it exists

if [ -d "$HOME/bin" ] ; then

PATH="$HOME/bin:$PATH"

fi

# set PATH so it includes user's private bin if it exists

if [ -d "$HOME/.local/bin" ] ; then

PATH="$HOME/.local/bin:$PATH"

fi

. $HOME/workspace/bosh-deployment/vboxcred.sh


ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$ source .profile

Using environment '192.168.50.51' as client 'admin'

Name bosh-lite

UUID 16799d63-01dc-4d46-9238-66b2d0c2ab7a

Version 270.4.0 (00000000)

CPI warden_cpi

Features compiled_package_cache: disabled

config_server: enabled

local_dns: enabled

power_dns: disabled

snapshots: disabled

User admin

Succeeded

Warning: The targeted TLS certificate has not been verified for this connection.

Warning: The --skip-tls-validation flag is deprecated. Please use --ca-cert instead.

Setting the target url: https://192.168.50.51:8844

Login Successful

ubuntu@ubuntu-virtual-machine:~$




PaaS-TA 4.0 설치

PaaS-TA 설치파일 다운로드

$ wget --content-disposition http://amedio0222.ipdisk.co.kr/pubdav/HDD2/dev/paasta-4.0.tar

PaaS-TA 설치파일 압축풀기

$ tar -xvf ./paasta-4.0.tar

Local Route

$ sudo ip route add 10.244.0.0/16 via 192.168.50.51 # Linux (using iproute2 suite)

Update cloud config

$ cd ~/workspace/paasta-4.0/deployment/cloud-config


ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$ ll

합계 44

drwxrwxr-x 2 ubuntu ubuntu 4096 7월 24 11:45 ./

drwxrwxr-x 5 ubuntu ubuntu 4096 5월 23 16:24 ../

-rwx------ 1 ubuntu ubuntu 5498 5월 23 16:15 aws-cloud-config.yml*

-rwx------ 1 ubuntu ubuntu 5161 5월 23 16:15 azure-cloud-config.yml*

-rwx------ 1 ubuntu ubuntu 1650 5월 23 16:15 bosh-lite-cloud-config.yml*

-rwx------ 1 ubuntu ubuntu 5971 5월 23 16:15 google-cloud-config.yml*

-rwx------ 1 ubuntu ubuntu 5132 5월 23 16:15 openstack-cloud-config.yml*

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$



$ bosh -e vbox update-cloud-config bosh-lite-cloud-config.yml


(별도 세션을 중복해서 열어서: vbox 환경변수, 크레덴셜 연결 설정후-vboxcred.sh실행)

login as: ubuntu

ubuntu@192.168.55.127's password:

Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.18.0-15-generic x86_64)

* Documentation: https://help.ubuntu.com

* Management: https://landscape.canonical.com

* Support: https://ubuntu.com/advantage

* Canonical Livepatch is available for installation.

- Reduce system reboots and improve kernel security. Activate at:

https://ubuntu.com/livepatch

패키지 248개를 업데이트할 수 있습니다.

0 업데이트는 보안 업데이트입니다.

Your Hardware Enablement Stack (HWE) is supported until April 2023.

*** 시스템을 다시 시작해야 합니다 ***

Last login: Wed Jul 24 09:58:12 2019 from 192.168.55.113

Using environment '192.168.50.51' as client 'admin'

Name bosh-lite

UUID 16799d63-01dc-4d46-9238-66b2d0c2ab7a

Version 270.4.0 (00000000)

CPI warden_cpi

Features compiled_package_cache: disabled

config_server: enabled

local_dns: enabled

power_dns: disabled

snapshots: disabled

User admin

Succeeded

Warning: The targeted TLS certificate has not been verified for this connection.

Warning: The --skip-tls-validation flag is deprecated. Please use --ca-cert instead.

Setting the target url: https://192.168.50.51:8844

Login Successful

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$

ubuntu@ubuntu-virtual-machine:~$ cd workspace/paasta-4.0/deployment/cloud-config/

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$ bosh env

Using environment '192.168.50.51' as client 'admin'

Name bosh-lite

UUID 16799d63-01dc-4d46-9238-66b2d0c2ab7a

Version 270.4.0 (00000000)

CPI warden_cpi

Features compiled_package_cache: disabled

config_server: enabled

local_dns: enabled

power_dns: disabled

snapshots: disabled

User admin

Succeeded


ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$ bosh -e vbox update-cloud-config bosh-lite-cloud-config.yml

Using environment '192.168.50.51' as client 'admin'

+ azs:

+ - name: z1

+ - name: z2

+ - name: z3

+ vm_types:

+ - name: minimal

+ - name: small

+ - name: medium

+ - name: medium-memory-8GB

+ - name: small-50GB-ephemeral-disk

+ - name: small-100GB-ephemeral-disk

+ - name: small-highmem-16GB

+ - name: small-highmem

+ - name: default

+ vm_extensions:

+ - name: 5GB_ephemeral_disk

+ - name: 10GB_ephemeral_disk

+ - name: 50GB_ephemeral_disk

+ - name: 100GB_ephemeral_disk

+ - name: 500GB_ephemeral_disk

+ - name: 1TB_ephemeral_disk

+ - cloud_properties:

+ ports:

+ - host: 80

+ - host: 443

+ - host: 2222

+ name: ssh-proxy-and-router-lb

+ - cloud_properties:

+ ports:

+ - host: 1024-1123

+ name: cf-tcp-router-network-properties

+ - cloud_properties:

+ ports:

+ - host: 8845

+ name: credhub-lb

+ compilation:

+ az: z1

+ network: default

+ reuse_compilation_vms: true

+ vm_type: minimal

+ workers: 6

+ networks:

+ - name: default

+ subnets:

+ - azs:

+ - z1

+ - z2

+ - z3

+ cloud_properties:

+ name: random

+ gateway: 10.244.0.1

+ range: 10.244.0.0/20

+ reserved:

+ - 10.244.0.1

+ static:

+ - 10.244.0.2 - 10.244.0.127

+ - 10.244.1.0 - 10.244.1.127

+ - 10.244.2.0 - 10.244.2.127

+ - 10.244.3.0 - 10.244.3.127

+ disk_types:

+ - disk_size: 1024

+ name: 1GB

+ - disk_size: 5120

+ name: 5GB

+ - disk_size: 10240

+ name: 10GB

+ - disk_size: 100240

+ name: 100GB

+ - disk_size: 1024

+ name: default

Continue? [yN]: y

Succeeded

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$ bosh update-cloud-config bosh-lite-cloud-config.yml

Using environment '192.168.50.51' as client 'admin'

Continue? [yN]: y

Succeeded

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$ bosh -e vbox update-cloud-config bosh-lite-cloud-config.yml

Using environment '192.168.50.51' as client 'admin'

Continue? [yN]: y

Succeeded

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/cloud-config$


Upload a runtime-config

~/workspace/paasta-4.0/deployment/bosh-deployment$ ./update-runtime-config.sh


Upload stemcell

~/workspace/paasta-4.0/stemcell$ bosh -e vbox upload-stemcell bosh-warden-boshlite-ubuntu-xenial-go_agent-97.28.tgz



Deploy PaaS-TA

~/workspace/paasta-4.0/deployment/paasta-deployment$ vi paasta-deployment.yml

~/workspace/paasta-4.0/deployment/paasta-deployment$ vi ./deploy-bosh-lite.sh


(참고) xip io

http://leoh0.blogspot.com/2014/05/xipio-private-ip-wildcard-dns.html

~/workspace/paasta-4.0/deployment/paasta-deployment$ ./deploy-bosh-lite.sh

(1시간 걸림)


$ bosh -e vbox -d paasta vms


ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ bosh -e vbox -d paasta vms

Using environment '192.168.50.51' as client 'admin'

Task 35. Done

Deployment 'paasta'

Instance Process State AZ IPs VM CID VM Type Active

adapter/a03af8aa-155d-4717-8b8f-59be4e7c3516 running z2 10.244.0.129 7975f3f9-5a1b-436a-7df0-0093247fbbe4 minimal true

api/a7655b65-3029-4b19-9f54-96c059ed2bd6 running z2 10.244.0.134 a76f447d-d741-4549-4925-95e6e0d2aa5e small true

cc-worker/71f8a6d3-4288-45e4-9530-d2165940f2ab running z2 10.244.0.135 f7350783-6bc9-4032-718e-b664eac659ed minimal true

credhub/394bf88d-df69-4931-ae33-3b10368148f9 running z2 10.244.0.141 fe9442e5-07d5-4b71-701e-e9848b45a4c8 default true

database/bdd43713-4855-4622-b584-dd78d86b2f13 running z3 10.244.0.130 ea39f676-ab10-4279-4a31-6e0e460d3986 default true

diego-api/a5218272-60d7-418f-a8c1-5ff53e408bc1 running z2 10.244.0.131 87045d27-d375-4d69-756e-e6a4bb294ff1 small true

diego-cell/3f398ef2-6cfa-48be-a5fa-c2afb46cb919 running z1 10.244.0.139 9683d5c7-bf5c-47c1-567a-c816870fb2fe default true

doppler/7455430c-e43b-43d2-8a69-0c3fe08fae3a running z1 10.244.0.138 e21b2a32-1074-4e02-727b-32e67bf9a4de minimal true

log-api/ec498165-5611-4619-959e-827788b66dbd running z2 10.244.0.140 ccddf65f-c25e-4f11-7433-e4daab9d8aad minimal true

nats/d44bac39-4333-4097-8412-ff7bf6f3bd97 running z1 10.244.0.128 e0e6c779-9654-4972-677c-be9a70187599 minimal true

router/31728a72-74ea-4c0d-b952-c79c4bbdfae2 running z1 10.244.0.34 ad9b9550-81ac-4aa9-59f3-14d91a90040d minimal true

scheduler/70cb89e2-6b3c-448d-8611-ca7162c58d7a running z2 10.244.0.137 4abc8910-4e8a-4023-42e7-51bff0414c92 small true

singleton-blobstore/1ff12183-50a4-4441-8465-f99a94e2f4f8 running z3 10.244.0.133 63accf13-54c1-46dd-5737-6b313315ce58 small true

tcp-router/2e60d7f9-0151-4dea-a16a-cb71b6a66cb8 running z2 10.244.0.136 62043ed8-9fe5-4b7f-425c-51f14a44bf69 minimal true

uaa/8d878b38-6713-40e3-8178-bed09b3dbbbc running z2 10.244.0.132 0409eaf5-71c2-401c-57c3-35c5644e6f54 default true

15 vms

Succeeded

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$




releases는 별도 과정으로 진행함


ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ bosh instances

Using environment '192.168.50.51' as client 'admin'

Task 36. Done

Deployment 'paasta'

Instance Process State AZ IPs

adapter/a03af8aa-155d-4717-8b8f-59be4e7c3516 running z2 10.244.0.129

api/a7655b65-3029-4b19-9f54-96c059ed2bd6 running z2 10.244.0.134

cc-worker/71f8a6d3-4288-45e4-9530-d2165940f2ab running z2 10.244.0.135

credhub/394bf88d-df69-4931-ae33-3b10368148f9 running z2 10.244.0.141

database/bdd43713-4855-4622-b584-dd78d86b2f13 running z3 10.244.0.130

diego-api/a5218272-60d7-418f-a8c1-5ff53e408bc1 running z2 10.244.0.131

diego-cell/3f398ef2-6cfa-48be-a5fa-c2afb46cb919 running z1 10.244.0.139

doppler/7455430c-e43b-43d2-8a69-0c3fe08fae3a running z1 10.244.0.138

log-api/ec498165-5611-4619-959e-827788b66dbd running z2 10.244.0.140

nats/d44bac39-4333-4097-8412-ff7bf6f3bd97 running z1 10.244.0.128

rotate-cc-database-key/108e579b-31c0-48f2-b0ca-e7d4d0fcc638 - z1 -

router/31728a72-74ea-4c0d-b952-c79c4bbdfae2 running z1 10.244.0.34

scheduler/70cb89e2-6b3c-448d-8611-ca7162c58d7a running z2 10.244.0.137

singleton-blobstore/1ff12183-50a4-4441-8465-f99a94e2f4f8 running z3 10.244.0.133

smoke-tests/0feeb4d0-4d59-41e9-89d7-069693608612 - z1 -

tcp-router/2e60d7f9-0151-4dea-a16a-cb71b6a66cb8 running z2 10.244.0.136

uaa/8d878b38-6713-40e3-8178-bed09b3dbbbc running z2 10.244.0.132

17 instances

Succeeded

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$




ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ bosh -d paasta ssh database

Using environment '192.168.50.51' as client 'admin'

Using deployment 'paasta'

Task 37. Done

Unauthorized use is strictly prohibited. All access and activity

is subject to logging and monitoring.

Welcome to Ubuntu 16.04.5 LTS (GNU/Linux 4.15.0-54-generic x86_64)

* Documentation: https://help.ubuntu.com

* Management: https://landscape.canonical.com

* Support: https://ubuntu.com/advantage

The programs included with the Ubuntu system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by

applicable law.

Last login: Tue Jul 23 13:09:54 2019 from 192.168.50.1

To run a command as administrator (user "root"), use "sudo <command>".

See "man sudo_root" for details.

database/bdd43713-4855-4622-b584-dd78d86b2f13:~$



PaaS-TA App Push Test

cf cli 설치 (Linux)

#1. Add the Cloud Foundry Foundation public key and package repository to your system:

$ wget -q -O - https://packages.cloudfoundry.org/debian/cli.cloudfoundry.org.key | sudo apt-key add -

#2.

$ echo "deb https://packages.cloudfoundry.org/debian stable main" | sudo tee /etc/apt/sources.list.d/cloudfoundry-cli.list

#3. Update your local package index:

$ sudo apt-get update

#4. Install the cf CLI:

$ sudo apt-get install cf-cli

$ cf -v

cf 버전 6.44.1+c3b20bfbe.2019-05-08


(실습)


ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ wget -q -O - https://packages.cloudfoundry.org/debian/cli.cloudfoundry.org.key | sudo apt-key add -

[sudo] ubuntu의 암호:

OK

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ echo "deb https://packages.cloudfoundry.org/debian stable main" | sudo tee /etc/apt/sources.list.d/cloudfoundry-cli.list

deb https://packages.cloudfoundry.org/debian stable main

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ sudo apt-get update

기존:1 http://kr.archive.ubuntu.com/ubuntu bionic InRelease

받기:2 http://kr.archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]

받기:3 http://kr.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]

받기:4 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main i386 Packages [563 kB]

받기:5 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages [691 kB]

받기:6 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main Translation-en [254 kB]

받기:7 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 DEP-11 Metadata [282 kB]

받기:8 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]

받기:9 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main DEP-11 48x48 Icons [66.7 kB]

받기:10 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main DEP-11 64x64 Icons [134 kB]

받기:11 http://kr.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages [974 kB]

받기:12 http://kr.archive.ubuntu.com/ubuntu bionic-updates/universe i386 Packages [958 kB]

받기:13 http://kr.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 DEP-11 Metadata [250 kB]

받기:14 http://kr.archive.ubuntu.com/ubuntu bionic-updates/universe DEP-11 48x48 Icons [213 kB]

받기:15 http://kr.archive.ubuntu.com/ubuntu bionic-updates/universe DEP-11 64x64 Icons [440 kB]

받기:16 http://kr.archive.ubuntu.com/ubuntu bionic-updates/multiverse amd64 DEP-11 Metadata [2,468 B]

받기:17 http://kr.archive.ubuntu.com/ubuntu bionic-backports/universe amd64 DEP-11 Metadata [7,704 B]

받기:19 http://security.ubuntu.com/ubuntu bionic-security/main amd64 DEP-11 Metadata [22.7 kB]

받기:20 http://security.ubuntu.com/ubuntu bionic-security/main DEP-11 48x48 Icons [10.4 kB]

받기:21 http://security.ubuntu.com/ubuntu bionic-security/main DEP-11 64x64 Icons [31.7 kB]

받기:22 http://security.ubuntu.com/ubuntu bionic-security/universe amd64 DEP-11 Metadata [41.3 kB]

받기:23 http://security.ubuntu.com/ubuntu bionic-security/universe DEP-11 48x48 Icons [16.4 kB]

받기:24 http://security.ubuntu.com/ubuntu bionic-security/universe DEP-11 64x64 Icons [111 kB]

받기:25 http://security.ubuntu.com/ubuntu bionic-security/multiverse amd64 DEP-11 Metadata [2,464 B]

받기:18 https://cf-cli-debian-repo.s3.amazonaws.com stable InRelease [2,665 B]

받기:26 https://cf-cli-debian-repo.s3.amazonaws.com stable/main amd64 Packages [8,813 B]

받기:27 https://cf-cli-debian-repo.s3.amazonaws.com stable/main i386 Packages [8,806 B]

내려받기 5,342 k바이트, 소요시간 4초 (1,277 k바이트/초)

패키지 목록을 읽는 중입니다... 완료

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ sudo apt-get install cf-cli

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

다음 새 패키지를 설치할 것입니다:

cf-cli

0개 업그레이드, 1개 새로 설치, 0개 제거 및 248개 업그레이드 안 함.

5,997 k바이트 아카이브를 받아야 합니다.

이 작업 후 22.3 M바이트의 디스크 공간을 더 사용하게 됩니다.

받기:1 https://packages.cloudfoundry.org/debian stable/main amd64 cf-cli amd64 6.46.0 [5,997 kB]

내려받기 5,997 k바이트, 소요시간 2초 (2,435 k바이트/초)

Selecting previously unselected package cf-cli.

(데이터베이스 읽는중 ...현재 188459개의 파일과 디렉터리가 설치되어 있습니다.)

Preparing to unpack .../cf-cli_6.46.0_amd64.deb ...

Unpacking cf-cli (6.46.0) ...

cf-cli (6.46.0) 설정하는 중입니다 ...

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ cf -v

cf 버전 6.46.0+29d6257f1.2019-07-09

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$


cf login

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$ cf login -a https://api.bosh-lite.com --skip-ssl-validation

API 엔드포인트: https://api.bosh-lite.com

Email> admin

Password> (admin 칠것)

인증 중...

확인

대상 지정된 조직 system

API 엔드포인트: https://api.bosh-lite.com(API 버전: 2.125.0)

사용자: admin

조직: system

영역: 대상 지정된 영역이 없습니다. 'cf target -s SPACE' 명령을 사용하십시오.

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0/deployment/paasta-deployment$


cf create-org

$ cf create-org test-org

$ cf create-space test-space -o test-org

$ cf create-user test test1234

$ cf set-org-role test test-org OrgManager

$ cf set-space-role test test-org test-space SpaceManager

$ cf set-space-role test test-org test-space SpaceDeveloper


(실습)


~/workspace/paasta-4.0$ cf create-org test-org

admin(으)로 test-org 조직 작성 중...

확인

test-org 조직의 admin 사용자에게 OrgManager 역할 지정 중...

확인

팁: 새 조직을 대상으로 지정하려면 'cf target -o "test-org"' 명령을 사용하십시오.

~/workspace/paasta-4.0$ cf create-space test-space -o test-org

admin(으)로 test-org 조직의 test-space 영역 작성 중...

확인

admin(으)로 test-org 조직 / test-space 영역의 admin 사용자에게 SpaceManager 역할을 지정하는 중...

확인

admin(으)로 test-org 조직 / test-space 영역의 admin 사용자에게 SpaceDeveloper 역할을 지정하는 중...

확인

팁: 새 영역을 대상으로 지정하려면 'cf target -o "test-org" -s "test-space"'을(를) 사용하십시오.

~/workspace/paasta-4.0$ cf create-user test test1234

사용자 test 작성 중...

확인

팁: 'cf set-org-role' 및 'cf set-space-role'의 역할을 지정하십시오.

~/workspace/paasta-4.0$ cf set-org-role test test-org OrgManager

admin(으)로 test-org 조직의 test 사용자에게 OrgManager 역할 지정 중...

확인

~/workspace/paasta-4.0$ cf set-space-role test test-org test-space SpaceManager

admin(으)로 test-org 조직/test-space 영역의 test 사용자에게 RoleSpaceManager 역할 지정 중...

확인

~/workspace/paasta-4.0$ cf set-space-role test test-org test-space SpaceDeveloper

admin(으)로 test-org 조직/test-space 영역의 test 사용자에게 RoleSpaceDeveloper 역할 지정 중...

확인

~/workspace/paasta-4.0$


cf login test user

(로그인 테스트)

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0$ cf login

API 엔드포인트: https://api.bosh-lite.com

Email> admin

Password>

인증 중...

확인

조직 선택(또는 Enter를 눌러 건너뜀):

1. system

2. test-org

Org> quit

API 엔드포인트: https://api.bosh-lite.com(API 버전: 2.125.0)

사용자: admin

대상 지정된 조직 또는 영역이 없습니다. 'cf target -o ORG -s SPACE' 명령을 사용하십시오.

실패

quit 조직을 찾는 중에 오류 발생

Organization quit 찾을 수 없음


ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0$ cf login

API 엔드포인트: https://api.bosh-lite.com

Email> test

Password> (test1234 입력)

인증 중...

확인

대상 지정된 조직 test-org

대상 지정된 영역 test-space

API 엔드포인트: https://api.bosh-lite.com(API 버전: 2.125.0)

사용자: test

조직: test-org

영역: test-space

ubuntu@ubuntu-virtual-machine:~/workspace/paasta-4.0$


manifest.yml 설정 추가

$ vi manifest.yml

---

applications:

- name: spring-music

memory: 1G

random-route: true

buildpack: java_buildpack

health-check-type: none

path: build/libs/spring-music-1.0.jar


cf push

$ cd ~/workspace/sample/spring-music

$ cf push


ubuntu@ubuntu-virtual-machine:~/workspace/sample/spring-music$ cf apps

test(으)로 test-org 조직/test-space 영역의 앱 가져오는 중...

확인

이름 요청된 상태 인스턴스 메모리 디스크 URL

spring-music started 1/1 1G 1G spring-music-excellent-reedbuck.bosh-lite.com

ubuntu@ubuntu-virtual-machine:~/workspace/sample/spring-music$


[제4일차] PaaS-TA 포탈 및 MSA개발

http://playpark.paas-ta.org paasta_trainee10 / trainee10


PaaS-TA는 CloudFoundry 기반

- 유료버전: Pivotal, IBM CF Ent.


Java App과 Redis Service 예제로 생성



[CF CLI]

https://github.com/cloudfoundry/cli#installers-and-compressed-binaries

$ cf -help


$ cf login -a https://api.paas-ta.org --skip-ssl-validation

API endpoint: https://api.paas-ta.org

Email> paasta_trainee10

Password> (trainee10)

Authenticating...

OK

Targeted org trainee10

Targeted space dev

API endpoint: https://api.paas-ta.org (API version: 2.128.0)

User: paasta_trainee10

Org: trainee10

Space: dev

$


$ cf services

Getting services in org trainee10 / space dev as paasta_trainee10...

name service plan bound apps last operation broker upgrade available

tr10_redis redis dedicated-vm tr10_java create succeeded redis-service-broker

TIP: Please upgrade to CC API v2.138.0 or higher for individual service upgrades


$ cf apps

Getting apps in org trainee10 / space dev as paasta_trainee10...

OK

name requested state instances memory disk urls

tr10_java started 1/1 1G 1G tr10java.paas-ta.org

$


$ cf marketplace

Getting services from marketplace in org trainee10 / space dev as paasta_trainee10...

OK

service plans description broker

Mysql-DB Mysql-Plan1-10con, Mysql-Plan2-100con A simple mysql implementation mysql-service-broker

CubridDB utf8, euckr A simple cubrid implementation cubrid-service-broker

container-service Micro, Small, Advanced For Container Service Plans, You can choose plan about CPU, Memory, disk. container-service-broker

glusterfs glusterfs-5Mb, glusterfs-100Mb, glusterfs-1000Mb A simple glusterfs implementation glusterfs-service-broker

Mongo-DB default-plan A simple mongo implementation mongodb-service-broker

p-rabbitmq standard RabbitMQ is a robust and scalable high-performance multi-protocol messaging broker. rabbitmq-service-broker

redis shared-vm, dedicated-vm Redis service to provide a key-value store redis-service-broker

p-paasta-sourcecontrol Default A paasta source control service for application development.provision parameters : parameters {owner : {owner}, org_name : {org_name}} scm-service-broker

delivery-pipeline-v2 delivery-pipeline-shared, delivery-pipeline-dedicated A paasta source control service for application development.provision parameters : parameters {owner : owner} delivery-pipeline

TIP: Use 'cf marketplace -s SERVICE' to view descriptions of individual plans of a given service.

$





MSA 기반 앱개발 테스트



[manifest.yml]

---

applications:

- name: rest-ui-test

memory: 768M

host: tr10_rest-ui-test --> tr10 으로 해야 에러 안남

path: ./target/RestUI.war

buildpack: java_buildpack

env:

JAVA_OPTS: -Djava.security.egd=file:///dev/urandom


C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI>cf push

Pushing from manifest to org trainee10 / space dev as paasta_trainee10...

Using manifest file C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI\manifest.yml

Deprecation warning: Specifying app manifest attributes at the top level is deprecated. Found: env.

Please see https://docs.cloudfoundry.org/devguide/deploy-apps/manifest-attributes.html#deprecated for alternatives and other app manifest deprecations. This feature will be removed in the future.

Using manifest file C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI\manifest.yml

Creating app rest-ui-test in org trainee10 / space dev as paasta_trainee10...

OK

Creating route tr10_rest-ui-test.paas-ta.org...

OK

Binding tr10_rest-ui-test.paas-ta.org to rest-ui-test...

OK

Uploading rest-ui-test...

Uploading app files from: C:\Users\osstem\AppData\Local\Temp\unzipped-app250391939

Uploading 3.1K, 13 files

Done uploading

OK

Starting app rest-ui-test in org trainee10 / space dev as paasta_trainee10...

Downloading java_buildpack...

Downloaded java_buildpack

Cell a256f43a-611e-4fd7-bc7a-ab928c855f9e creating container for instance 79d7a84c-9c44-46f5-b8fe-2b381e130fa7

Cell a256f43a-611e-4fd7-bc7a-ab928c855f9e successfully created container for instance 79d7a84c-9c44-46f5-b8fe-2b381e130fa7

Downloading app package...

Downloaded app package (84.7K)

-----> Java Buildpack v4.16.1 | https://github.com/cloudfoundry/java-buildpack.git#41b8ff8

-----> Downloading Jvmkill Agent 1.16.0_RELEASE from https://java-buildpack.cloudfoundry.org/jvmkill/trusty/x86_64/jvmkill-1.16.0-RELEASE.so (0.3s)

-----> Downloading Open Jdk JRE 1.8.0_222 from https://java-buildpack.cloudfoundry.org/openjdk/trusty/x86_64/openjdk-jre-1.8.0_222-trusty.tar.gz (0.9s)

Expanding Open Jdk JRE to .java-buildpack/open_jdk_jre (1.3s)

JVM DNS caching disabled in lieu of BOSH DNS caching

-----> Downloading Open JDK Like Memory Calculator 3.13.0_RELEASE from https://java-buildpack.cloudfoundry.org/memory-calculator/trusty/x86_64/memory-calculator-3.13.0-RELEASE.tar.gz (0.3s)

Loaded Classes: 8155, Threads: 250

-----> Downloading Client Certificate Mapper 1.8.0_RELEASE from https://java-buildpack.cloudfoundry.org/client-certificate-mapper/client-certificate-mapper-1.8.0-RELEASE.jar (5.1s)

-----> Downloading Container Security Provider 1.16.0_RELEASE from https://java-buildpack.cloudfoundry.org/container-security-provider/container-security-provider-1.16.0-RELEASE.jar (0.1s)

-----> Downloading Tomcat Instance 8.5.43 from https://java-buildpack.cloudfoundry.org/tomcat/tomcat-8.5.43.tar.gz (0.3s)

Expanding Tomcat Instance to .java-buildpack/tomcat (0.1s)

-----> Downloading Tomcat Access Logging Support 3.3.0_RELEASE from https://java-buildpack.cloudfoundry.org/tomcat-access-logging-support/tomcat-access-logging-support-3.3.0-RELEASE.jar (0.2s)

-----> Downloading Tomcat Lifecycle Support 3.3.0_RELEASE from https://java-buildpack.cloudfoundry.org/tomcat-lifecycle-support/tomcat-lifecycle-support-3.3.0-RELEASE.jar (5.1s)

-----> Downloading Tomcat Logging Support 3.3.0_RELEASE from https://java-buildpack.cloudfoundry.org/tomcat-logging-support/tomcat-logging-support-3.3.0-RELEASE.jar (0.1s)

Exit status 0

Uploading droplet, build artifacts cache...

Uploading droplet...

Uploading build artifacts cache...

Uploaded build artifacts cache (49.1M)

Uploaded droplet (48.1M)

Uploading complete

Cell a256f43a-611e-4fd7-bc7a-ab928c855f9e stopping instance 79d7a84c-9c44-46f5-b8fe-2b381e130fa7

Cell a256f43a-611e-4fd7-bc7a-ab928c855f9e destroying container for instance 79d7a84c-9c44-46f5-b8fe-2b381e130fa7

Cell a256f43a-611e-4fd7-bc7a-ab928c855f9e successfully destroyed container for instance 79d7a84c-9c44-46f5-b8fe-2b381e130fa7

1 of 1 instances running

App started

OK

App rest-ui-test was started using this command `JAVA_OPTS="-agentpath:$PWD/.java-buildpack/open_jdk_jre/bin/jvmkill-1.16.0_RELEASE=printHeapHistogram=1 -Djava.io.tmpdir=$TMPDIR -Djava.ext.dirs=$PWD/.java-buildpack/container_security_provider:$PWD/.java-buildpack/open_jdk_jre/lib/ext -Djava.security.properties=$PWD/.java-buildpack/java_security/java.security $JAVA_OPTS -Daccess.logging.enabled=false -Dhttp.port=$PORT" && CALCULATED_MEMORY=$($PWD/.java-buildpack/open_jdk_jre/bin/java-buildpack-memory-calculator-3.13.0_RELEASE -totMemory=$MEMORY_LIMIT -loadedClasses=9445 -poolType=metaspace -stackThreads=250 -vmOptions="$JAVA_OPTS") && echo JVM Memory Configuration: $CALCULATED_MEMORY && JAVA_OPTS="$JAVA_OPTS $CALCULATED_MEMORY" && MALLOC_ARENA_MAX=2 JAVA_OPTS=$JAVA_OPTS JAVA_HOME=$PWD/.java-buildpack/open_jdk_jre exec $PWD/.java-buildpack/tomcat/bin/catalina.sh run`

Showing health and status for app rest-ui-test in org trainee10 / space dev as paasta_trainee10...

OK

requested state: started

instances: 1/1

usage: 768M x 1 instances

urls: tr10_rest-ui-test.paas-ta.org

last uploaded: Thu Jul 25 04:51:13 UTC 2019

stack: cflinuxfs2

buildpack: java_buildpack

state since cpu memory disk details

#0 running 2019-07-25 01:52:28 PM 0.0% 0 of 768M 0 of 1G

C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI>



C:\>cf create-service Mysql-DB Mysql-Plan2-100con tr10_mysql_db

Creating service instance tr10_mysql_db in org trainee10 / space dev as paasta_trainee10...

OK

C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI>




C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI>cf ssh rest-ui-test

vcap@ddc586f2-bda9-459c-56d1-5c12:~$ ls

app deps logs profile.d staging_info.yml tmp

vcap@ddc586f2-bda9-459c-56d1-5c12:~$ ps -ef

UID PID PPID C STIME TTY TIME CMD

root 1 0 0 04:52 ? 00:00:00 /tmp/garden-init

vcap 7 0 0 04:52 ? 00:00:00 /tmp/lifecycle/diego-sshd --allowedKeyExchanges= --address=0.0.0.0:2

vcap 14 0 0 04:52 ? 00:00:03 /home/vcap/app/.java-buildpack/open_jdk_jre/bin/java -Djava.util.log

root 88 0 0 04:52 ? 00:00:00 /etc/cf-assets/healthcheck/healthcheck -port=8080 -timeout=1000ms -l

vcap 104 7 0 05:07 pts/0 00:00:00 /bin/bash

vcap 115 104 0 05:08 pts/0 00:00:00 ps -ef

vcap@ddc586f2-bda9-459c-56d1-5c12:~$

vcap@ddc586f2-bda9-459c-56d1-5c12:~$ cd ..

vcap@ddc586f2-bda9-459c-56d1-5c12:/home$ ls

vcap

vcap@ddc586f2-bda9-459c-56d1-5c12:/home$ cd ..

vcap@ddc586f2-bda9-459c-56d1-5c12:/$ ls

app bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var

vcap@ddc586f2-bda9-459c-56d1-5c12:/$ cd ..

vcap@ddc586f2-bda9-459c-56d1-5c12:/$ pwd

/

vcap@ddc586f2-bda9-459c-56d1-5c12:/$



[IDE 연동] CF Plugin 제공해야함


[SCM]



http://ccambo.gitlab.io/2017/07/09/VSCODE-VSCode%EC%97%90-Git-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/

Windows PowerShell

Copyright (C) Microsoft Corporation. All rights reserved.

[0x7FF9840E3AC0] ANOMALY: meaningless REX prefix used

[0x7FF9845AE8F0] ANOMALY: use of REX.w is meaningless (default operand size is 64)

[0x7FF9845AEBF0] ANOMALY: use of REX.w is meaningless (default operand size is 64)

[0x7FF9844D5C80] ANOMALY: use of REX.w is meaningless (default operand size is 64)

PS C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI> git remote add origin http://paasta_trainee10@45.248.73.55:8084/scm/git/GitRepoTr10nee10@45.248.73.55:8084/scm/git/GitRepoTr10

PS C:\GARFTECH\PaaS-TA\PaaS-TA-app개발_rest_app\RestUI>




[제5일차]




keyword