The purpose of this repository is to help automate the initial configuration of Tenants, Projects, Quota's, Networks, Images, Clusters (Harbor and Kubernetes). You can modify any of the variables to fit your deployment and environment.
- Photon Platform Deployed photon-platform-config.yaml, you can conifgure the yaml file to match you environment.
- You can use this guide to deploy Photon Platform - Photon Controller Quick Start Guide
- Pre-created Tenants, resource tickets, project, flavor, disk flavor, image, and SSH user/pass or generate an iso. Instructions
- photon cli binary Download
- NOTE: You will need to rename the binary from
photon-linux64-1.x.x-xxxxxxx
tophoton
- NOTE: You will need to rename the binary from
- Git (optional: if you want to clone the repository)
- Docker machine driver plugin for Photon Controller Download
- export these variables from your Photon Controller deployment
photon target show
photon project list
photon flavor list
photon image list
Access token is retrieved by photon target login user@tenant
and then
cat ~/.photon-cli/.photon-config
{"CloudTarget":"https://192.168.64.85:443" "Token":"eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBZG1pbmlzdHJhdG9yQHZiYWxsaW4uY29tIiwiYXVkIjpbIkFkbWluaXN0cmF0b3JAdmJhbGxpbi5jb20iLCJyc19lc3hjbG91ZCJdLCJzY29wZSI6InJzX2VzeGNsb3VkIGF0X2dyb3VwcyBvcGVuaWQgb2ZmbGluZV9hY2Nlc3MiLCJpc3MiOiJodHRwczpcL1wvMTkyLjE2OC42NC4xMDFcL29wZW5pZGNvbm5lY3RcL3ZiYWxsaW4uY29tIiwiZ3JvdXBzIjpbInZiYWxsaW4uY29tXFxVc2VycyIsInZiYWxsaW4uY29tXFxBZG1pbmlzdHJhdG9ycyIsInZiYWxsaW4uY29tXFxDQUFkbWlucyIsInZiYWxsaW4uY29tXFxFdmVyeW9uZSJdLCJ0b2tlbl9jbGFzcyI6ImFjY2Vzc190b2tlbiIsInRva2VuX3R5cGUiOiJCZWFyZXIiLCJleHAiOjE0ODkyODQ2NjcsImlhdCI6MTQ4ODk4NDY2NywianRpIjoidmtSNGtHd0lUVExXTmxfQ0NMSTlqZTlsVXFoOUswNFhTX21UaVgwZTZDVSIsInRlbmFudCI6InZiYWxsaW4uY29tIn0.lC3W4yVFyJ7hvTe0fMqJDl10pExUkY99tqaCxBZWX2t29prHH7QVK6h4ZtA2Vd3iisF_H4jauxIFnW1rlg3uogZ8a14ZD8DeNUlqj4IWbbgp7v7KqxJ7gwcmulspVKoZNlBJWzY_VueR9msrJWxnx7DxyYQvmqAX_rNq2QGrcC4NFeOkQDq7FtOvtaQkHRUFJEiWIIJCMp9802gPV4UasCD_Yn1efbNAz8fXVoHD5HcSpWC2oIAfcOUUTjzj9mZyLDrUYMLJ2Tg_tbEmPx0CLDnnblj235MgUrIh2roFkyyaDSLpf2b3Pv6ZOhiiaZIBMKIosC25vUzKI4jBFi1WvtpnE5n8JhQo3Epuhb_QmZD_K0Su8-8qWaHf4uEBlVd4FSbhVpk5PuvSYXje21uOMTGLcu1vcezd6oiIJh0xXo63IfsclJN9AxskQaOxM8VzzI3TUa2zK07g30N9UIS89566IhtDXe1iJdjwX64pzagg7jcqDdaHTMsmDsHklk_kPtnIQEUSfQb92xg6m_H2kikH7J_j9JHDirgLdeufMhPre9dn9g4xdxeRQNgSbYBckXC0DTZtYJotXNoiaBsRP2VnikeYfEJpNt8Fd-o_1ASVimI3vlE1g16kPRpb1wLTr79fuWuxptAlra5Qvjfp638z_fTzeJePR4HQDfWAgAY","RefreshToken":"eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBZG1pbmlzdHJhdG9yQHZiYWxsaW4uY29tIiwiYXVkIjoiQWRtaW5pc3RyYXRvckB2YmFsbGluLmNvbSIsInNjb3BlIjoicnNfZXN4Y2xvdWQgYXRfZ3JvdXBzIG9wZW5pZCBvZmZsaW5lX2FjY2VzcyIsImlzcyI6Imh0dHBzOlwvXC8xOTIuMTY4LjY0LjEwMVwvb3BlbmlkY29ubmVjdFwvdmJhbGxpbi5jb20iLCJ0b2tlbl9jbGFzcyI6InJlZnJlc2hfdG9rZW4iLCJ0b2tlbl90eXBlIjoiQmVhcmVyIiwiZXhwIjoxNTEwNTg0NjY3LCJpYXQiOjE0ODg5ODQ2NjcsImp0aSI6IlhGYms1ZVNQTVYtLWpBNzdQN0hQeDJYSFhBWUlCaTJlM044Si1zN25OQnMiLCJ0ZW5hbnQiOiJ2YmFsbGluLmNvbSJ9.LXAU17M2SUcjBlO9gkvP07-Px4xIajkEa3UvvSI0NJKKOdGefC1olNhg8fR5mymcC3sRNGvUcpyoWGaFbVQQMV3KU40giBgWMcsdrs9Nbbr7h1MPowKEqnpe3TTLQE5M8VKC9AwHekjN7xNT6xs7u-4kVupk2mJd2pAyVsgIya76_eyYz3V6Ftbqfj3K8-9hNp2QDCb30INHDv9ad9YzoTG3q0PmhPSLBhAnTIcK5RzgbuIDdRdgjH9HgKBHlhMsG2omMWy1FiuLN7ay5F0LNLdQHpfXy6vEl-_oQsnjsgeW5d6x-etQRIsHXN1PzKHmMwbyayCUGuEv9LwwhEcliDMgIvyB01pH63yV4bvWIDktTLiNtf384rFhVKhsrrJXA0JTeNLmMBZbUxoTJ3Thfeaj97k4Ok7jTfMLX2BLmRaJqz335GM-cgxFqEcXq-7CyDPqh33zV2rqm9BPPtGntbfGAdjkYcikDjF_8ZmlN2x7j7CWky_zotqsIXTMMDjPbZ4IjVcGyTis-UmSbbUcKMb-G8Zl1jBnxniURlyNs6U1h22jmfK-1UwbKlutbakqRUyZflc66uUhvyFwAy1Rct9Cd8xSwaCr-axCsw6NaGDoctxkPwwOgUY6jwh8LR_i4GdYnROlAG-D1H2QCLBdwgjD-soA2o797MxF-yBIZ40","IgnoreCertificate":true,"Tenant":{"Name":"orgADevs","ID":"4c205d67-8db6-484f-ba4c-96f6d1024b21"},"Project":{"Name":"docker-project","ID":"e6187f3a-496c-4065-b50e-9ef70cbc35d0"}}
export PHOTON_ENDPOINT=https://192.168.64.85:443
export PHOTON_PROJECT=e6187f3a-496c-4065-b50e-9ef70cbc35d0
export PHOTON_DISK_FLAVOR=vm-disk
export PHOTON_IMAGE=7b9168d8-4259-4805-97b4-c151cab6287c
export PHOTON_VM_FLAVOR=medium-vm
export PHOTON_ISO_PATH=/home/vagrant/photonplatform/images/cloud-init.iso
export PHOTON_SSH_KEYPATH=/home/vagrant/.ssh/id_rsa
export PHOTON_ACCESS_TOKEN='eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBZG1pbmlzdHJhdG9yQHZiYWxsaW4uY29tIiwiYXVkIjpbIkFkbWluaXN0cmF0b3JAdmJhbGxpbi5jb20iLCJyc19lc3hjbG91ZCJdLCJzY29wZSI6InJzX2VzeGNsb3VkIGF0X2dyb3VwcyBvcGVuaWQgb2ZmbGluZV9hY2Nlc3MiLCJpc3MiOiJodHRwczpcL1wvMTkyLjE2OC42NC4xMDFcL29wZW5pZGNvbm5lY3RcL3ZiYWxsaW4uY29tIiwiZ3JvdXBzIjpbInZiYWxsaW4uY29tXFxVc2VycyIsInZiYWxsaW4uY29tXFxBZG1pbmlzdHJhdG9ycyIsInZiYWxsaW4uY29tXFxDQUFkbWlucyIsInZiYWxsaW4uY29tXFxFdmVyeW9uZSJdLCJ0b2tlbl9jbGFzcyI6ImFjY2Vzc190b2tlbiIsInRva2VuX3R5cGUiOiJCZWFyZXIiLCJleHAiOjE0ODkyODQ2NjcsImlhdCI6MTQ4ODk4NDY2NywianRpIjoidmtSNGtHd0lUVExXTmxfQ0NMSTlqZTlsVXFoOUswNFhTX21UaVgwZTZDVSIsInRlbmFudCI6InZiYWxsaW4uY29tIn0.lC3W4yVFyJ7hvTe0fMqJDl10pExUkY99tqaCxBZWX2t29prHH7QVK6h4ZtA2Vd3iisF_H4jauxIFnW1rlg3uogZ8a14ZD8DeNUlqj4IWbbgp7v7KqxJ7gwcmulspVKoZNlBJWzY_VueR9msrJWxnx7DxyYQvmqAX_rNq2QGrcC4NFeOkQDq7FtOvtaQkHRUFJEiWIIJCMp9802gPV4UasCD_Yn1efbNAz8fXVoHD5HcSpWC2oIAfcOUUTjzj9mZyLDrUYMLJ2Tg_tbEmPx0CLDnnblj235MgUrIh2roFkyyaDSLpf2b3Pv6ZOhiiaZIBMKIosC25vUzKI4jBFi1WvtpnE5n8JhQo3Epuhb_QmZD_K0Su8-8qWaHf4uEBlVd4FSbhVpk5PuvSYXje21uOMTGLcu1vcezd6oiIJh0xXo63IfsclJN9AxskQaOxM8VzzI3TUa2zK07g30N9UIS89566IhtDXe1iJdjwX64pzagg7jcqDdaHTMsmDsHklk_kPtnIQEUSfQb92xg6m_H2kikH7J_j9JHDirgLdeufMhPre9dn9g4xdxeRQNgSbYBckXC0DTZtYJotXNoiaBsRP2VnikeYfEJpNt8Fd-o_1ASVimI3vlE1g16kPRpb1wLTr79fuWuxptAlra5Qvjfp638z_fTzeJePR4HQDfWAgAY'
docker run swarm create
Unable to find image 'swarm:latest' locally
latest: Pulling from library/swarm
ebe0176dcf9a: Pull complete
19f771faa982: Pull complete
902eeedf931a: Pull complete
Digest: sha256:815fc8fd4617d866e1256999c2c0a55cc8f377f3dade26c3edde3f0543a70c04
Status: Downloaded newer image for swarm:latest
68ac2ec4986cb1e533b6f7d3de5b35dd
docker-machine create \
-d photon \
--swarm \
--swarm-master \
--swarm-discovery token://815fc8fd4617d866e1256999c2c0a55cc8f377f3dade26c3edde3f0543a70c04 \
swarm-manager
docker-machine create \
-d photon \
--swarm \
--swarm-discovery token://**815fc8fd4617d866e1256999c2c0a55cc8f377f3dade26c3edde3f0543a70c04** \
swarm-node01
docker-machine create \
-d photon \
--swarm \
--swarm-discovery token://815fc8fd4617d866e1256999c2c0a55cc8f377f3dade26c3edde3f0543a70c04 \
swarm-node02
docker-machine create \
-d photon \
--swarm \
--swarm-discovery token://815fc8fd4617d866e1256999c2c0a55cc8f377f3dade26c3edde3f0543a70c04 \
swarm-node03
docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
swarm-manager - photon Running tcp://192.168.72.106:2376 swarm-manager (master) v17.03.0-ce
swarm-node01 - photon Running tcp://192.168.72.107:2376 swarm-manager v17.03.0-ce
swarm-node02 - photon Running tcp://192.168.72.108:2376 swarm-manager v17.03.0-ce
swarm-node03 - photon Running tcp://192.168.72.109:2376 swarm-manager v17.03.0-ce
eval "$(docker-machine env swarm-manager)"
or eval "$(docker-machine env swarm-node01)"
docker info
docker service create --replicas 1 --name vmwarecna vmwarecna/nginx
docker service scale vmwarecna=3
docker service inspect --pretty vmwarecna
docker service ps vmwarecna
docker service update --publish-add "80:80" vmwarecna