Here’s a simple configuration for a Juniper vMX 14.x and EVPN-MPLS configuration.

You can separate vlans with a routing-instance which uses the virtual-switch type.

version 14.1R1.10;
system {
host-name IX;
root-authentication {
encrypted-password “$1$iiqdh9ru$CBQygri2MkpfgtgdGo8GO1”; ## SECRET-DATA
}
login {
user lab {
uid 2000;
class super-user;
authentication {
encrypted-password “$1$oW1NeMUu$N7IVMfy8GfJ02jzQzJ39h/”; ## SECRET-DATA
}
}
}
services {
telnet {
connection-limit 5;
}
}
syslog {
user * {
any emergency;
}
file messages {
any notice;
authorization info;
}
file interactive-commands {
interactive-commands any;
}
}
}
interfaces {
ge-0/0/0 {
description “IX <> GS #1”;
mtu 2000;
mac 50:01:00:01:00:02;
unit 0 {
family inet {
address 10.0.0.1/30;
}
family mpls;
}
}
ge-0/0/1 {
description “IX <> GS #2”;
mtu 2000;
mac 50:01:00:01:00:03;
unit 0 {
family inet {
address 10.0.1.1/30;
}
family mpls;
}
}
ge-0/0/2 {
description “IX <> AM6 #1”;
mtu 2000;
mac 50:01:00:01:00:04;
unit 0 {
family inet {
address 10.0.0.5/30;
}
family mpls;
}
}
ge-0/0/3 {
description “IX <> AM6 #2”;
mtu 2000;
mac 50:01:00:01:00:05;
unit 0 {
family inet {
address 10.0.1.5/30;
}
family mpls;
}
}
ge-0/0/4 {
description “IX <> DC2 #1”;
mtu 2000;
mac 50:01:00:01:00:06;
unit 0 {
family inet {
address 10.0.0.9/30;
}
family mpls;
}
}
ge-0/0/5 {
description “IX <> DC2 #2”;
mtu 2000;
mac 50:01:00:01:00:07;
unit 0 {
family inet {
address 10.0.1.9/30;
}
family mpls;
}
}
ge-0/0/9 {
flexible-vlan-tagging;
encapsulation flexible-ethernet-services;
mac 50:01:00:01:00:0b;
unit 10 {
family bridge {
interface-mode trunk;
vlan-id-list 10;
}
}
}
em0 {
unit 0 {
family inet {
address 192.168.56.10/24;
}
}
}
lo0 {
unit 0 {
family inet {
address 10.10.10.1/32;
}
}
}
}
routing-options {
router-id 10.10.10.1;
autonomous-system 65000;
forwarding-table {
export lbp;
}
}
protocols {
rsvp {
interface ge-0/0/0.0;
interface ge-0/0/1.0;
interface ge-0/0/2.0;
interface ge-0/0/3.0;
interface ge-0/0/4.0;
interface ge-0/0/5.0;
}
mpls {
no-cspf;
label-switched-path IX-to-GS {
to 10.10.10.2;
}
label-switched-path IX-to-DC2 {
to 10.10.10.3;
}
label-switched-path IX-to-AM6 {
to 10.10.10.4;
}
interface ge-0/0/0.0;
interface ge-0/0/1.0;
interface ge-0/0/2.0;
interface ge-0/0/3.0;
interface ge-0/0/4.0;
interface ge-0/0/5.0;
}
bgp {
group EVPN {
type internal;
local-address 10.10.10.1;
family inet-vpn {
unicast;
}
family evpn {
signaling;
}
multipath;
neighbor 10.10.10.2;
neighbor 10.10.10.3;
neighbor 10.10.10.4;
}
}
ospf {
traffic-engineering;
area 0.0.0.0 {
interface lo0.0 {
passive;
}
interface ge-0/0/0.0;
interface ge-0/0/1.0;
interface ge-0/0/2.0;
interface ge-0/0/3.0;
interface ge-0/0/4.0;
interface ge-0/0/5.0;
}
}
ldp {
interface ge-0/0/0.0;
interface ge-0/0/1.0;
interface ge-0/0/2.0;
interface ge-0/0/3.0;
interface ge-0/0/4.0;
interface ge-0/0/5.0;
}
}
policy-options {
policy-statement lbp {
then {
load-balance per-packet;
}
}
}
routing-instances {
evpn-test {
instance-type virtual-switch;
interface ge-0/0/9.10;
route-distinguisher 65432:10;
vrf-target target:65432:10;
protocols {
evpn {
extended-vlan-list 10;
}
}
bridge-domains {
bd10 {
domain-type bridge;
vlan-id 10;
bridge-options {
interface ge-0/0/9.10;
}
}
}
}
}