mirror of
https://github.com/openziti/ziti.git
synced 2026-10-11 23:12:35 +00:00
working docker compose with two edge routers - one regular, one wss
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
ZITI_CONTROLLER_RAWNAME=ziti-controller
|
||||
ZITI_EDGE_CONTROLLER_RAWNAME=ziti-edge-controller
|
||||
ZITI_ZAC_RAWNAME=ziti-zac
|
||||
@@ -2,6 +2,8 @@ version: '2.4'
|
||||
services:
|
||||
ziti-controller:
|
||||
image: openziti/ziti-quickstart
|
||||
env_file:
|
||||
- ./default.env
|
||||
build: ./image
|
||||
ports:
|
||||
- 1280:1280
|
||||
@@ -17,6 +19,8 @@ services:
|
||||
|
||||
ziti-edge-router:
|
||||
image: openziti/ziti-quickstart
|
||||
environment:
|
||||
- ZITI_EDGE_ROUTER_RAWNAME=ziti-edge-router
|
||||
depends_on:
|
||||
ziti-controller:
|
||||
condition: service_started
|
||||
@@ -30,8 +34,24 @@ services:
|
||||
- ziti-fs:/openziti
|
||||
entrypoint:
|
||||
- /openziti/run-edge-router.sh
|
||||
#command: ["wait-for-it", "ziti-controller:1280", "-t", "120", "--", "./run-edge-router.sh"]
|
||||
|
||||
ziti-edge-router-wss:
|
||||
image: openziti/ziti-quickstart
|
||||
environment:
|
||||
- ZITI_EDGE_ROUTER_RAWNAME=ziti-edge-router-wss
|
||||
depends_on:
|
||||
ziti-controller:
|
||||
condition: service_started
|
||||
ports:
|
||||
- 3023:3022
|
||||
networks:
|
||||
ziticontrol:
|
||||
aliases:
|
||||
- ziti-edge-router
|
||||
volumes:
|
||||
- ziti-fs:/openziti
|
||||
entrypoint: /bin/bash
|
||||
command: "/openziti/run-edge-router.sh wss"
|
||||
networks:
|
||||
ziticontrol:
|
||||
zitired:
|
||||
@@ -40,4 +60,3 @@ networks:
|
||||
volumes:
|
||||
ziti-fs:
|
||||
|
||||
|
||||
|
||||
@@ -14,18 +14,10 @@ WORKDIR /openziti
|
||||
COPY --chown=ziti ziti.ignore /usr/local/bin/
|
||||
COPY --chown=ziti *.sh ./
|
||||
|
||||
RUN export ZITI_HOME=/openziti && \
|
||||
export ENV_FILE=/openziti/ziti.env && \
|
||||
export ZITI_NETWORK=ziti && \
|
||||
export ZITI_CONTROLLER_RAWNAME=ziti-controller && \
|
||||
export ZITI_EDGE_CONTROLLER_RAWNAME=ziti-edge-controller && \
|
||||
export ZITI_EDGE_ROUTER_RAWNAME=ziti-edge-router && \
|
||||
export ZITI_EDGE_WSS_ROUTER_RAWNAME=ziti-edge-router-wss && \
|
||||
export ZITI_ROUTER_BR_RAWNAME=ziti-edge-router-br && \
|
||||
export ZITI_ROUTER_BLUE_RAWNAME=ziti-edge-router-blue && \
|
||||
export ZITI_ROUTER_RED_RAWNAME=ziti-edge-router-red && \
|
||||
export ZITI_ZAC_RAWNAME=ziti-zac && \
|
||||
/openziti/env.sh && \
|
||||
echo "source /openziti/ziti.env" >> ~/.bashrc && \
|
||||
echo "alias ziti-fabric='ziti-fabric -e \${fabric_controller_uri}'" >> ~/.bashrc
|
||||
ENV ZITI_HOME=/openziti
|
||||
ENV ENV_FILE=/openziti/ziti.env
|
||||
ENV ZITI_NETWORK=ziti
|
||||
|
||||
RUN /openziti/env.sh && \
|
||||
echo "source /openziti/ziti.env" >> ~/.bashrc
|
||||
|
||||
|
||||
@@ -18,10 +18,10 @@ identity:
|
||||
ca: "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_CONTROLLER_HOSTNAME}-server.chain.pem"
|
||||
|
||||
ctrl:
|
||||
listener: tls:${ZITI_EDGE_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
listener: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
|
||||
mgmt:
|
||||
listener: tls:${ZITI_EDGE_CONTROLLER_HOSTNAME}:${ZITI_FAB_MGMT_PORT}
|
||||
listener: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_MGMT_PORT}
|
||||
|
||||
#metrics:
|
||||
# influxdb:
|
||||
|
||||
@@ -11,6 +11,16 @@ identity:
|
||||
ctrl:
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
|
||||
link:
|
||||
listeners:
|
||||
- binding: transport
|
||||
bind: tls:0.0.0.0:80
|
||||
advertise: tls:${ZITI_EDGE_ROUTER_HOSTNAME}:80
|
||||
options:
|
||||
outQueueSize: 16
|
||||
dialers:
|
||||
- binding: transport
|
||||
|
||||
listeners:
|
||||
- binding: tunnel
|
||||
options:
|
||||
@@ -34,7 +44,32 @@ edge:
|
||||
ip:
|
||||
- "127.0.0.1"
|
||||
|
||||
dialers:
|
||||
- binding: udp
|
||||
- binding: transport
|
||||
listeners:
|
||||
- binding: edge
|
||||
address: tls:0.0.0.0:443
|
||||
options:
|
||||
advertise: ${ZITI_EDGE_ROUTER_HOSTNAME}:443
|
||||
connectTimeoutMs: 5000
|
||||
getSessionTimeout: 60s
|
||||
|
||||
transport:
|
||||
wss:
|
||||
writeTimeout: 10
|
||||
readTimeout: 5
|
||||
idleTimeout: 5
|
||||
pongTimeout: 60
|
||||
pingInterval: 54
|
||||
handshakeTimeout: 10
|
||||
readBufferSize: 4096
|
||||
writeBufferSize: 4096
|
||||
enableCompression: true
|
||||
server_cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}-router-server.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}-router-server.key
|
||||
|
||||
forwarder:
|
||||
latencyProbeInterval: 1000
|
||||
xgressDialQueueLength: 1000
|
||||
xgressDialWorkerCount: 128
|
||||
linkDialQueueLength: 1000
|
||||
linkDialWorkerCount: 10
|
||||
HereDocForEdgeRouter
|
||||
|
||||
@@ -75,8 +75,7 @@ echo " "
|
||||
pki_client_server "${ZITI_CONTROLLER_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_EDGE_CONTROLLER_HOSTNAME}" "${ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_EDGE_ROUTER_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_EDGE_WSS_ROUTER_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_ROUTER_BR_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_ROUTER_BLUE_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_ROUTER_RED_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
pki_client_server "${ZITI_ZAC_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
#pki_client_server "${ZITI_EDGE_WSS_ROUTER_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
#pki_client_server "${ZITI_ROUTER_BR_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
#pki_client_server "${ZITI_ROUTER_RED_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
#pki_client_server "${ZITI_ZAC_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
function pki_client_server {
|
||||
name_local=$1
|
||||
ZITI_CA_NAME_local=$2
|
||||
|
||||
if ! test -f "${ZITI_PKI}/${ZITI_CA_NAME_local}/keys/${name_local}-server.key"; then
|
||||
echo "Creating server cert from ca: ${ZITI_CA_NAME_local} for ${name_local}"
|
||||
ziti pki create server --pki-root="${ZITI_PKI}" --ca-name "${ZITI_CA_NAME_local}" \
|
||||
--server-file "${name_local}-server" \
|
||||
--dns "${name_local},localhost" --ip 127.0.0.1 \
|
||||
--server-name "${name_local} server certificate"
|
||||
else
|
||||
echo "Creating server cert from ca: ${ZITI_CA_NAME_local} for ${name_local}"
|
||||
echo "key exists"
|
||||
fi
|
||||
|
||||
if ! test -f "${ZITI_PKI}/${ZITI_CA_NAME_local}/keys/${name_local}-client.key"; then
|
||||
echo "Creating client cert from ca: ${ZITI_CA_NAME_local} for ${name_local}"
|
||||
ziti pki create client --pki-root="${ZITI_PKI}" --ca-name "${ZITI_CA_NAME_local}" \
|
||||
--client-file "${name_local}-client" \
|
||||
--key-file "${name_local}-server" \
|
||||
--client-name "${name_local}"
|
||||
else
|
||||
echo "Creating client cert from ca: ${ZITI_CA_NAME_local} for ${name_local}"
|
||||
echo "key exists"
|
||||
fi
|
||||
echo " "
|
||||
}
|
||||
|
||||
function pki_create_ca {
|
||||
if ! test -f "${ZITI_PKI}/${1}/keys/${1}.key"; then
|
||||
echo "Creating CA: ${1}"
|
||||
ziti pki create ca --pki-root="${ZITI_PKI}" --ca-file="${1}" --ca-name="${1} Root CA"
|
||||
else
|
||||
echo "Creating CA: ${1}"
|
||||
echo "key exists"
|
||||
fi
|
||||
echo " "
|
||||
}
|
||||
|
||||
function pki_create_intermediate {
|
||||
if ! test -f "${ZITI_PKI}/${2}/keys/${2}.key"; then
|
||||
echo "Creating intermediate: ${1} ${2} ${3}"
|
||||
ziti pki create intermediate --pki-root "${ZITI_PKI}" --ca-name "${1}" \
|
||||
--intermediate-name "${2}" \
|
||||
--intermediate-file "${2}" --max-path-len ${3}
|
||||
else
|
||||
echo "Creating intermediate: ${1} ${2} ${3}"
|
||||
echo "key exists"
|
||||
fi
|
||||
echo " "
|
||||
}
|
||||
|
||||
pki_client_server "${ZITI_EDGE_ROUTER_HOSTNAME}" "${ZITI_CONTROLLER_INTERMEDIATE_NAME}"
|
||||
@@ -0,0 +1,75 @@
|
||||
#!/bin/bash
|
||||
cat > ${ZITI_HOME}/${ZITI_EDGE_ROUTER_HOSTNAME}.yaml <<HereDocForEdgeRouter
|
||||
v: 3
|
||||
|
||||
identity:
|
||||
cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_ROUTER_HOSTNAME}-router-client.cert
|
||||
server_cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_ROUTER_HOSTNAME}-router-server.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_EDGE_ROUTER_HOSTNAME}-router-server.key
|
||||
ca: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_ROUTER_HOSTNAME}-router-server.chain.pem
|
||||
|
||||
ctrl:
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
|
||||
link:
|
||||
listeners:
|
||||
- binding: transport
|
||||
bind: tls:0.0.0.0:80
|
||||
advertise: tls:${ZITI_EDGE_ROUTER_HOSTNAME}:80
|
||||
options:
|
||||
outQueueSize: 16
|
||||
dialers:
|
||||
- binding: transport
|
||||
|
||||
listeners:
|
||||
- binding: tunnel
|
||||
options:
|
||||
mode: host #tproxy|tun|host
|
||||
- binding: edge
|
||||
address: wss:0.0.0.0:3023
|
||||
options:
|
||||
advertise: ${ZITI_EDGE_WSS_ROUTER_HOSTNAME}:3023
|
||||
|
||||
edge:
|
||||
csr:
|
||||
country: US
|
||||
province: NC
|
||||
locality: Charlotte
|
||||
organization: NetFoundry
|
||||
organizationalUnit: Ziti
|
||||
sans:
|
||||
dns:
|
||||
- ${ZITI_EDGE_ROUTER_HOSTNAME}
|
||||
- localhost
|
||||
ip:
|
||||
- "127.0.0.1"
|
||||
|
||||
listeners:
|
||||
- binding: edge
|
||||
address: tls:0.0.0.0:443
|
||||
options:
|
||||
advertise: ${ZITI_EDGE_ROUTER_HOSTNAME}:443
|
||||
connectTimeoutMs: 5000
|
||||
getSessionTimeout: 60s
|
||||
|
||||
transport:
|
||||
wss:
|
||||
writeTimeout: 10
|
||||
readTimeout: 5
|
||||
idleTimeout: 5
|
||||
pongTimeout: 60
|
||||
pingInterval: 54
|
||||
handshakeTimeout: 10
|
||||
readBufferSize: 4096
|
||||
writeBufferSize: 4096
|
||||
enableCompression: true
|
||||
server_cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}-router-server.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}-router-server.key
|
||||
|
||||
forwarder:
|
||||
latencyProbeInterval: 1000
|
||||
xgressDialQueueLength: 1000
|
||||
xgressDialWorkerCount: 128
|
||||
linkDialQueueLength: 1000
|
||||
linkDialWorkerCount: 10
|
||||
HereDocForEdgeRouter
|
||||
@@ -14,6 +14,7 @@ if [[ "${1}" != "" ]]; then
|
||||
export ZITI_NETWORK=${1}
|
||||
fi
|
||||
if [[ "${ZITI_NETWORK}" = "" ]]; then
|
||||
echo "ERROR: ZITI_NETWORK HAS NOT BEEN DECLARED! USING hostname: $(hostname)"
|
||||
export ZITI_NETWORK=$(hostname)
|
||||
fi
|
||||
|
||||
@@ -27,23 +28,12 @@ export ZITI_FAB_CTRL_PORT="6262"
|
||||
|
||||
if [[ "${ZITI_CONTROLLER_RAWNAME}" == "" ]]; then export ZITI_CONTROLLER_RAWNAME="${ZITI_NETWORK}-controller"; fi
|
||||
if [[ "${ZITI_EDGE_CONTROLLER_RAWNAME}" == "" ]]; then export ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_NETWORK}-edge-controller"; fi
|
||||
if [[ "${ZITI_EDGE_ROUTER_RAWNAME}" == "" ]]; then export ZITI_EDGE_ROUTER_RAWNAME="${ZITI_NETWORK}-edge-router"; fi
|
||||
if [[ "${ZITI_EDGE_ROUTER_RAWNAME_WSS}" == "" ]]; then export ZITI_EDGE_ROUTER_RAWNAME_WSS="${ZITI_NETWORK}-wss-edge-router"; fi
|
||||
if [[ "${ZITI_ROUTER_BR_RAWNAME}" == "" ]]; then export ZITI_ROUTER_BR_RAWNAME="${ZITI_NETWORK}-edge-router-br"; fi
|
||||
if [[ "${ZITI_ROUTER_BLUE_RAWNAME}" == "" ]]; then export ZITI_ROUTER_BLUE_RAWNAME="${ZITI_NETWORK}-edge-router-blue"; fi
|
||||
if [[ "${ZITI_ROUTER_RED_RAWNAME}" == "" ]]; then export ZITI_ROUTER_RED_RAWNAME="${ZITI_NETWORK}-edge-router-red"; fi
|
||||
if [[ "${ZITI_ZAC_RAWNAME}" == "" ]]; then export ZITI_ZAC_RAWNAME="${ZITI_NETWORK}-zac"; fi
|
||||
|
||||
export ZITI_PKI="${ZITI_HOME}/pki"
|
||||
export ZITI_EDGE_CONTROLLER_PORT="1280"
|
||||
|
||||
export ZITI_CONTROLLER_HOSTNAME="${ZITI_CONTROLLER_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_EDGE_CONTROLLER_HOSTNAME="${ZITI_EDGE_CONTROLLER_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_EDGE_ROUTER_HOSTNAME="${ZITI_EDGE_ROUTER_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_EDGE_ROUTER_RAWNAME_WSS="${ZITI_EDGE_ROUTER_RAWNAME_WSS}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_ROUTER_BR_HOSTNAME="${ZITI_ROUTER_BR_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_ROUTER_BLUE_HOSTNAME="${ZITI_ROUTER_BLUE_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_ROUTER_RED_HOSTNAME="${ZITI_ROUTER_RED_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
export ZITI_ZAC_HOSTNAME="${ZITI_ZAC_RAWNAME}${ZITI_DOMAIN_SUFFIX}"
|
||||
|
||||
export ZITI_EDGE_CONTROLLER_API="${ZITI_EDGE_CONTROLLER_HOSTNAME}:${ZITI_EDGE_CONTROLLER_PORT}"
|
||||
|
||||
@@ -29,7 +29,7 @@ mkdir -p $ZITI_HOME
|
||||
cd $ZITI_HOME
|
||||
|
||||
# create the $ZITI_HOME/identites.json file - currently REQUIRED for the fabric
|
||||
cat > ${ZITI_HOME}/identities.json <<IdentitiesJsonHereDoc
|
||||
cat > ${ZITI_HOME}/identities.yml <<IdentitiesJsonHereDoc
|
||||
---
|
||||
default:
|
||||
caCert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_EDGE_CONTROLLER_HOSTNAME}-server.chain.pem
|
||||
|
||||
@@ -14,5 +14,16 @@ ziti-controller edge init "${ZITI_HOME}/controller.yaml" -u "${ZITI_USER}" -p "$
|
||||
# create a place for the internal db
|
||||
mkdir -p $ZITI_HOME/db
|
||||
|
||||
cat > ${ZITI_HOME}/identities.yml <<IdentitiesJsonHereDoc
|
||||
---
|
||||
default:
|
||||
caCert: "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_CONTROLLER_HOSTNAME}-server.chain.pem"
|
||||
cert: "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_NETWORK}-dotzeet.cert"
|
||||
key: "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_NETWORK}-dotzeet.key"
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_MGMT_PORT}
|
||||
IdentitiesJsonHereDoc
|
||||
|
||||
|
||||
ziti-controller run "${ZITI_HOME}/controller.yaml"
|
||||
|
||||
/openziti/pki/ziti-controller-intermediate/keys/ziti-dotzeet.key
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo 'export ZITI_EDGE_ROUTER_RAWNAME="'"${ZITI_EDGE_ROUTER_RAWNAME}"'"' >> ziti.env
|
||||
echo 'export ZITI_EDGE_ROUTER_HOSTNAME="'"${ZITI_EDGE_ROUTER_RAWNAME}${ZITI_DOMAIN_SUFFIX}"'"' >> ziti.env
|
||||
. /openziti/ziti.env
|
||||
|
||||
until $(curl -s -o /dev/null --fail -k "https://${ZITI_EDGE_CONTROLLER_API}"); do
|
||||
@@ -6,10 +9,19 @@ until $(curl -s -o /dev/null --fail -k "https://${ZITI_EDGE_CONTROLLER_API}"); d
|
||||
sleep 2
|
||||
done
|
||||
|
||||
if [[ "$1" == "wss" ]]; then
|
||||
echo "CREATING WSS EDGE ROUTER"
|
||||
"/openziti/create-wss-router-pki.sh"
|
||||
else
|
||||
echo "CREATING EDGE ROUTER"
|
||||
"/openziti/create-router-pki.sh"
|
||||
fi
|
||||
|
||||
echo "logging into ziti controller: ${ZITI_EDGE_API_HOSTNAME}"
|
||||
ziti edge login "${ZITI_EDGE_CONTROLLER_API}" -u "${ZITI_USER}" -p "${ZITI_PWD}" -c "${ZITI_PKI}/${ZITI_EDGE_CONTROLLER_ROOTCA_NAME}/certs/${ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME}.cert"
|
||||
|
||||
echo "CREATING CONFIG"
|
||||
#sleep 1000
|
||||
"/openziti/create-edge-router-config.sh"
|
||||
|
||||
echo "---------- Creating edge-router ${ZITI_EDGE_ROUTER_HOSTNAME}...."
|
||||
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/bin/bash
|
||||
${curdir}/create-controller-config.sh
|
||||
${curdir}/create-edge-router-config.sh
|
||||
${curdir}/create-edge-wss-router-config.sh
|
||||
|
||||
|
||||
echo "
|
||||
---
|
||||
default:
|
||||
caCert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_CONTROLLER_HOSTNAME}-server.chain.pem
|
||||
cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_NETWORK}-dotzeet.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_NETWORK}-dotzeet.key
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_MGMT_PORT}
|
||||
" > $ZITI_HOME/identities.yml
|
||||
|
||||
|
||||
echo "v: 3
|
||||
|
||||
identity:
|
||||
cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BR_HOSTNAME}-client.cert
|
||||
server_cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BR_HOSTNAME}-server.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_ROUTER_BR_HOSTNAME}-server.key
|
||||
ca: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BR_HOSTNAME}-server.chain.pem
|
||||
|
||||
ctrl:
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
|
||||
link:
|
||||
listener: tls:${ZITI_ROUTER_BR_HOSTNAME}:6001
|
||||
" > $ZITI_HOME/${ZITI_ROUTER_BR_NAME}.yaml
|
||||
|
||||
echo "v: 3
|
||||
|
||||
identity:
|
||||
cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BLUE_HOSTNAME}-client.cert
|
||||
server_cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BLUE_HOSTNAME}-server.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_ROUTER_BLUE_HOSTNAME}-server.key
|
||||
ca: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BLUE_HOSTNAME}-server.chain.pem
|
||||
|
||||
ctrl:
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
" > $ZITI_HOME/${ZITI_ROUTER_BLUE_NAME}.yaml
|
||||
|
||||
|
||||
echo "v: 3
|
||||
|
||||
identity:
|
||||
cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_RED_HOSTNAME}-client.cert
|
||||
server_cert: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_RED_HOSTNAME}-server.cert
|
||||
key: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/keys/${ZITI_ROUTER_RED_HOSTNAME}-server.key
|
||||
ca: ${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_RED_HOSTNAME}-server.chain.pem
|
||||
|
||||
ctrl:
|
||||
endpoint: tls:${ZITI_CONTROLLER_HOSTNAME}:${ZITI_FAB_CTRL_PORT}
|
||||
|
||||
listeners:
|
||||
# example xgress_transport
|
||||
- binding: transport
|
||||
address: tls:0.0.0.0:7002
|
||||
options:
|
||||
retransmission: true
|
||||
|
||||
dialers:
|
||||
- binding: transport
|
||||
options:
|
||||
retransmission: true
|
||||
|
||||
" > $ZITI_HOME/${ZITI_ROUTER_RED_NAME}.yaml
|
||||
Executable → Regular
@@ -56,10 +56,6 @@ function generateEnvFile {
|
||||
export ZITI_EDGE_CONTROLLER_RAWNAME="${ZITI_NETWORK}"
|
||||
export ZITI_ZAC_RAWNAME="${ZITI_NETWORK}"
|
||||
export ZITI_EDGE_ROUTER_RAWNAME="${ZITI_NETWORK}"
|
||||
export ZITI_EDGE_ROUTER_RAWNAME_WSS="${ZITI_NETWORK}"
|
||||
export ZITI_ROUTER_BR_RAWNAME="${ZITI_NETWORK}"
|
||||
export ZITI_ROUTER_BLUE_RAWNAME="${ZITI_NETWORK}"
|
||||
export ZITI_ROUTER_RED_RAWNAME="${ZITI_NETWORK}"
|
||||
|
||||
export ZITI_HOME=${HOME}/.ziti/quickstart/${ZITI_NETWORK}
|
||||
export ENV_FILE="${ZITI_HOME}/${ZITI_NETWORK}.env"
|
||||
|
||||
@@ -1,116 +0,0 @@
|
||||
#!/bin/bash
|
||||
commands_to_test=(ziti ziti-router ziti-controller bash tee jq curl cat dos2unix)
|
||||
|
||||
if [[ "" == "$1" ]]
|
||||
then
|
||||
echo " "
|
||||
echo "USAGE: $0 <path to ziti binaries> <network name>"
|
||||
echo " "
|
||||
echo " Please provide the path to the ziti binaries"
|
||||
exit 1
|
||||
else
|
||||
export PATH="$PATH:$1"
|
||||
fi
|
||||
|
||||
# verify all the commands required in the automation exist before trying to run the full suite
|
||||
for cmd in "${commands_to_test[@]}"
|
||||
do
|
||||
# checking all commands are on the path before continuing...
|
||||
if ! [[ -x "$(command -v ${cmd})" ]]; then
|
||||
missing_requirements="${missing_requirements} * ${cmd}\n"
|
||||
fi
|
||||
done
|
||||
|
||||
# are requirements ? if yes, stop here and help 'em out
|
||||
if ! [[ "" = "${missing_requirements}" ]]; then
|
||||
echo " "
|
||||
echo "The commands listed below are required to be on the path for this script to function properly."
|
||||
echo "Please ensure the commands listed are on the path and then try again."
|
||||
printf "\n${missing_requirements}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "All required commands are found - continuing"
|
||||
echo "${missing_requirements}"
|
||||
|
||||
# set a variable to the location of the script running in case it's needed
|
||||
export curdir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
|
||||
# if no network name is supplied, use the current user name as the network name
|
||||
if [[ "" == "$2" ]]
|
||||
then
|
||||
export network_name="${USER}"
|
||||
else
|
||||
export network_name="$2"
|
||||
fi
|
||||
echo "Network name set to: ${network_name}"
|
||||
|
||||
|
||||
. ${curdir}/env.sh
|
||||
|
||||
echo "This script relies on the following hosts being active on your network and since this is a local"
|
||||
echo "installation it expects them all to be at localhost/127.0.0.1. Please make sure the following"
|
||||
echo "entries are in your hosts file before continuing:"
|
||||
echo " - ${ZITI_CONTROLLER_HOSTNAME}"
|
||||
echo " - ${ZITI_EDGE_CONTROLLER_HOSTNAME}"
|
||||
echo " - ${ZITI_ZAC_HOSTNAME}"
|
||||
echo " - ${ZITI_EDGE_ROUTER_HOSTNAME}"
|
||||
echo " - ${ZITI_EDGE_WSS_ROUTER_HOSTNAME}"
|
||||
echo " - ${ZITI_ROUTER_BR_HOSTNAME}"
|
||||
echo " - ${ZITI_ROUTER_BLUE_HOSTNAME}"
|
||||
echo " - ${ZITI_ROUTER_RED_HOSTNAME}"
|
||||
echo ""
|
||||
echo " example:"
|
||||
echo " 127.0.0.1 ${ZITI_CONTROLLER_HOSTNAME} ${ZITI_EDGE_CONTROLLER_HOSTNAME} ${ZITI_ZAC_HOSTNAME} ${ZITI_EDGE_ROUTER_HOSTNAME} ${ZITI_EDGE_WSS_ROUTER_HOSTNAME} ${ZITI_ROUTER_BR_HOSTNAME} ${ZITI_ROUTER_BLUE_HOSTNAME} ${ZITI_ROUTER_RED_HOSTNAME}"
|
||||
echo ""
|
||||
|
||||
DIRNAME=$(dirname $0)
|
||||
[[ ${USE_DNSMASQ:-} -eq 1 ]] && source ${DIRNAME}/run-dns.sh
|
||||
|
||||
while true; do
|
||||
read -p "Are the hosts in your hosts file? " yn
|
||||
case $yn in
|
||||
[Yy]* )
|
||||
break;;
|
||||
[Nn]* )
|
||||
echo ""; echo "Ok - come back when you're ready."
|
||||
exit;;
|
||||
* ) echo "Please answer yes or no. (yes/NO)";;
|
||||
esac
|
||||
done
|
||||
|
||||
mkdir -p $ZITI_HOME
|
||||
cd $ZITI_HOME
|
||||
|
||||
|
||||
if [ -d "${ZITI_PKI}/${ZITI_CONTROLLER_ROOTCA_NAME}" ]
|
||||
then
|
||||
echo "Reusing existing PKI...."
|
||||
else
|
||||
echo "Generating PKI"
|
||||
. ${curdir}/create-pki.sh
|
||||
fi
|
||||
|
||||
. ${curdir}/create-config-files.sh
|
||||
. ${curdir}/prep-ziti.sh
|
||||
. ${curdir}/start-ziti.sh
|
||||
. ${curdir}/test-ziti.sh
|
||||
|
||||
echo "starting a new bash shell to retain all environment variables without polluting the initial shell"
|
||||
bash --rcfile <(cat << HERE
|
||||
. ~/.bashrc
|
||||
. ~/.bash_aliases
|
||||
export PS1="ZITI IS RUNNING ${network_name}: "
|
||||
|
||||
echo "adding pki-functions to bash shell"
|
||||
. ${curdir}/pki-functions.sh
|
||||
|
||||
alias zec='ziti edge'
|
||||
alias zlogin='ziti edge login "${ZITI_EDGE_CONTROLLER_API}" -u "${ZITI_USER}" -p "${ZITI_PWD}" -c "${ZITI_PKI}/${ZITI_EDGE_CONTROLLER_ROOTCA_NAME}/certs/${ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME}.cert"'
|
||||
alias psz='ps -ef | grep ziti'
|
||||
|
||||
echo "generating env file"
|
||||
for f in $(env); do if [[ $f = ZITI_* ]]; then echo "export $f" >> make-env.sh ; fi; done
|
||||
|
||||
HERE
|
||||
)
|
||||
@@ -1,44 +0,0 @@
|
||||
# if needed, initialize the controller
|
||||
ziti-controller edge init "${ZITI_HOME}/controller.yaml" -u "${ZITI_USER}" -p "${ZITI_PWD}"
|
||||
|
||||
mkdir -p ${ZITI_HOME}
|
||||
|
||||
sleep 1
|
||||
|
||||
# run the controller
|
||||
ziti-controller run "${ZITI_HOME}/controller.yaml" > "${ZITI_HOME}/ziti-controller.log" 2>&1 &
|
||||
|
||||
# wait for the controller to come up...
|
||||
sleep 2
|
||||
|
||||
ziti edge login "${ZITI_EDGE_CONTROLLER_API}" -u "${ZITI_USER}" -p "${ZITI_PWD}" -c "${ZITI_PKI}/${ZITI_EDGE_CONTROLLER_ROOTCA_NAME}/certs/${ZITI_EDGE_CONTROLLER_INTERMEDIATE_NAME}.cert"
|
||||
|
||||
ziti edge create edge-router-policy allEdgeRouters --edge-router-roles '#all' --identity-roles '#all'
|
||||
ziti edge create service-edge-router-policy allSvcRouter --edge-router-roles '#all' --service-roles '#all'
|
||||
|
||||
sleep 1
|
||||
|
||||
ziti-fabric create router "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BR_HOSTNAME}-client.cert"
|
||||
ziti-fabric create router "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_BLUE_HOSTNAME}-client.cert"
|
||||
ziti-fabric create router "${ZITI_PKI}/${ZITI_CONTROLLER_INTERMEDIATE_NAME}/certs/${ZITI_ROUTER_RED_HOSTNAME}-client.cert"
|
||||
|
||||
sleep 1
|
||||
|
||||
echo "---------- Creating edge-router ${ZITI_EDGE_ROUTER_HOSTNAME}...."
|
||||
ziti edge create edge-router "${ZITI_EDGE_ROUTER_HOSTNAME}" -o "${ZITI_HOME}/${ZITI_EDGE_ROUTER_HOSTNAME}.jwt"
|
||||
echo "--- DONE"
|
||||
echo ""
|
||||
|
||||
echo "---------- Enrolling edge-router ${ZITI_EDGE_ROUTER_HOSTNAME}...."
|
||||
ziti-router enroll "${ZITI_HOME}/${ZITI_EDGE_ROUTER_HOSTNAME}.yaml" --jwt "${ZITI_HOME}/${ZITI_EDGE_ROUTER_HOSTNAME}.jwt"
|
||||
echo "--- DONE"
|
||||
echo ""
|
||||
|
||||
echo "---------- Creating edge-router ${ZITI_EDGE_WSS_ROUTER_HOSTNAME}...."
|
||||
ziti edge create edge-router "${ZITI_EDGE_WSS_ROUTER_HOSTNAME}" -o "${ZITI_HOME}/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}.jwt"
|
||||
echo "--- DONE"
|
||||
echo ""
|
||||
echo "---------- Enrolling edge-router ${ZITI_EDGE_WSS_ROUTER_HOSTNAME}...."
|
||||
ziti-router enroll "${ZITI_HOME}/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}.yaml" --jwt "${ZITI_HOME}/${ZITI_EDGE_WSS_ROUTER_HOSTNAME}.jwt"
|
||||
echo "--- DONE"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user