redis for pcf documentation - pivotal softwareredis is an easy to use, high speed key-value store...

100
Redis for PCF Documentation ® Version 1.10 Published: 5 Oct 2018 Rev: 01 © 2018 Pivotal Software, Inc.

Upload: others

Post on 17-Mar-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

  • RedisforPCF

    Documentation®

    Version1.10

    Published:5Oct2018

    Rev:01

    ©2018PivotalSoftware,Inc.

  • 235

    1012172224252838414754626481828898

    100

    TableofContents

    TableofContentsRedisforPCFRedisforPCFReleaseNotesIsRedisforPCFrightforyourenterprise?On-DemandServiceOfferingDedicated-VMandShared-VMServiceOfferingsNetworkingforOn-DemandServicesRedisforPCFSecurityIntroductionforOperatorsInstallingRedisforPCFUpgradingRedisforPCFSettingLimitsforOn-DemandServiceInstancesConfiguringAutomatedBackupsforRedisforPCFMonitoringRedisforPCFRedisforPCFSmokeTestsTroubleshootingRedisforPCFIntroductionforAppDevelopersQuickstartGuideforAppDevelopersUsingRedisforPCFTroubleshootingInstancesSampleRedisConfiguration

    ©CopyrightPivotalSoftwareInc,2013-2018 2 1.10

  • RedisforPCFPagelastupdated:

    ThisisdocumentationforRedisforPivotalCloudFoundry(PCF).YoucandownloadtheRedisforPCFtilefromPivotalNetwork .

    Thisdocumentation:

    DescribesthefeaturesandarchitectureofRedisforPCF.

    InstructsthePCFoperatoronhowtoinstall,configure,maintain,andbackupRedisforPCF.

    Instructstheappdeveloperonhowtochooseaserviceplan,createanddeleteRedisserviceinstances,andbindanapp.

    ProductSnapshotElement Details

    Version v1.10.5

    Releasedate March7,2018

    Softwarecomponentversion RedisOSSv3.2.11

    CompatibleOpsManagerversion(s) v1.11.0andv1.12.0

    CompatibleElasticRuntimeversion(s) v1.11.0andv1.12.0

    IaaSsupport AWS,Azure,GCP,OpenStack,andvSphere

    IPsecsupport Yes

    AboutRedisRedisisaneasytouse,highspeedkey-valuestorethatcanbeusedasadatabase,cache,andmessagebroker.Itsupportsarangeofdatastructuresincludingstrings,lists,hashes,sets,bitmaps,hyperloglogs,andgeospatialindexes.ItiseasytoinstallandconfigureandispopularwithengineersasastraightforwardNoSQLdatastore.Itisusedforeverythingfromaquickwaytostoredatafordevelopmentandtestingthroughtoenterprise-scaleappslikeTwitter.

    AboutRedisforPCFRedisforPCFpackagesRedisforeasydeploymentandoperabilityonPivotalCloudFoundry(PCF).

    RedisforPCFoffersOn-Demand,Dedicated-VM,andShared-VMservices.

    On-DemandService—ProvidesadedicatedVMrunningaRedisinstance.Theoperatorcanconfigureuptothreeplanswithdifferentconfigurations,memorysizes,andquotas.AppdeveloperscanprovisionaninstanceforanyoftheOn-Demandplansoffered,andconfigurecertainRedissettings.

    Dedicated-VMService—ProvidesadedicatedVMrunningaRedisinstance.TheDedicated-VMServiceispre-provisionedbytheoperatorwithafixednumberofVMsandmemorysize.Appdeveloperscanthenuseoneofthosepre-provisionedVMs.

    Shared-VMService—ProvidessupportforanumberofRedisinstancesrunninginasingleVM.Itisdesignedfortestinganddevelopment.TheShared-VMinstancesarepre-provisionedbytheoperatorwithafixednumberofinstancesandmemorysize.Appdeveloperscanthenuseoneofthesepre-provisionedinstances.

    Formoreinformationontheplans,see:

    On-DemandServiceOffering

    Dedicated-VMandShared-VMServiceOfferings

    Note:RedisforPCFv1.10isnolongersupported.Thesupportperiodforv1.10hasexpired.Tostayup-to-datewiththelatestsoftwareandsecurityupdates,upgradetoRedisforPCFv1.11orlater.

    ©CopyrightPivotalSoftwareInc,2013-2018 3 1.10

    https://network.pivotal.io/products/p-redis

  • IsRedisforPCFRightforyourEnterpriseForinformationonrecommendedusecases,andtheenterprise-readinessofRedisforPCF,seeIsRedisforPCFRightforyourEnterprise.

    UpgradingtotheLatestVersionForinformationonhowtoupgradeandthesupportedupgradepaths,seeUpgradingRedisforPCF.

    MoreInformationThefollowingtablelistswhereyoucanfindtopicsrelatedtotheinformationonthispage:

    Formoreinformationabout… See…

    Productcompatibility ProductVersionMatrix

    HowtoupgradeRedisforPCF UpgradingRedisforPCF

    HowtouseRedis RedisDocumentation

    RedisforPCFandOtherPCFServicesSomePCFservicesofferon-demandserviceplans.Theseplansletdevelopersprovisionserviceinstanceswhentheywant.

    Thesecontrastwiththemorecommonpre-provisionedserviceplans,whichrequireoperatorstoprovisiontheserviceinstancesduringinstallationandconfigurationthroughtheservicetileUI.

    ThefollowingPCFservicesofferon-demandserviceplans:

    MySQLforPCFv2.0andlater

    RabbitMQforPCF

    RedisforPCF

    PivotalCloudCache(PCC)

    Theseservicespackageanddelivertheiron-demandserviceofferingsdifferently.Forexample,someservices,likeRedisforPCF,haveonetile,andyouconfigurethetiledifferentlydependingonwhetheryouwanton-demandserviceplansorpre-provisionedserviceplans.

    Forotherservices,likePCC,youinstallonetileforon-demandserviceplansandadifferenttileforpre-provisionedserviceplans.

    ThefollowingtablelistsandcontraststhedifferentwaysthatPCFservicespackageon-demandandpre-provisionedserviceofferings.

    PCFservicetile Standaloneproductrelatedtotheservice Versionssupportingondemand Versionssupportingpre-provisioned

    RabbitMQforPCF PivotalRabbitMQ v1.8andlater Allversions

    RedisforPCF Redis v1.8andlater Allversions

    MySQLforPCF MySQLv2.x(basedonPerconaServer)

    v1.x(basedonMariaDBandGalera)

    PCC PivotalGemFire Allversions NA

    GemFireforPCF PivotalGemFire NA Allversions

    FeedbackPleaseprovideanybugs,featurerequests,orquestionstothePivotalCloudFoundryFeedbacklist.

    ©CopyrightPivotalSoftwareInc,2013-2018 4 1.10

    http://docs.pivotal.io/compatibility-matrix.pdfhttp://redis.io/documentationmailto:"[email protected]"

  • RedisforPCFReleaseNotesPagelastupdated:

    ViewReleaseNotesforAnotherVersionToviewthereleasenotesforanotherproductversion,selecttheversionfromthedrop-downlistatthetopofthispage.

    v1.10.5ReleaseDate:March7,2018

    Thisreleaseupdatesthestemcellverison.

    Compatibility

    Component Version

    Stemcell 3468.x

    PCF v1.11.xandv1.12.x

    cf-redis-release v431.5.0

    on-demand-service-broker v0.19.0

    consul v187.0.0

    routing v0.163.0

    service-metrics v1.5.11

    service-backup v18.1.9

    syslog-migration v10.0.0

    loggregator v97.0

    RedisOSS v3.2.11

    KnownIssuesTheredis-odbservicebrokerlistensonport 12345 .Thisisinconsistentwithotherservices,buthasnoeffectontileoperations.

    TheWhenChangedoptionforerrandshasunexpectedbehavior.Donotselectthischoiceasanerrandrun-rule.Formoreinformationaboutthisunexpectedbehavior,seeErrandRunRules .

    DefaultpersistenceissettofullpersistenceusinganAOFfile.Ifaninstanceisrestartedfrequently–forexample,forupgrades–thisfilecangrowsignificantly,leadingtoverylargepersistentdiskusage.IfyourRedisinstancehassignificantlylargerpersistentdiskusagethanexpected,checkthesizeofyour appendonly.aof file,usuallyat /var/vcap/store/redis ,toverifythatthisisthesourceoftheusage.Ifso,youcanmitigatethisbyrunningtheBGREWRITEAOF command.

    Theredis-odbfailsifarbitraryparametersarechangedinan update-service command.

    SwitchingLuaScriptingto off forplanswithpreexistinginstancescancauseupgradeerrandfailures.Forinformationaboutresolvingthisissue,seeUpgradeerrandfailswithUnknowncommandeval .

    v1.10.4ReleaseDate:February7,2018

    FixesFixesabugthatblockstileupgradesinsomePivotalCloudFoundry(PCF)installations.

    ©CopyrightPivotalSoftwareInc,2013-2018 5 1.10

    https://docs.pivotal.io/tiledev/tile-errands.html#run-ruleshttps://redis.io/commands/bgrewriteaofhttps://pvtl.force.com/s/article/lua-scripting-toggled-eval-error

  • Compatibility

    Component Version

    Stemcell 3445.x

    PCF v1.11.xandv1.12.x

    cf-redis-release v431.2.0

    on-demand-service-broker v0.19.0

    consul v187.0.0

    routing v0.163.0

    service-metrics v1.5.11

    service-backup v18.1.9

    syslog-migration v10.0.0

    loggregator v97.0

    RedisOSS v3.2.11

    KnownIssuesTheredis-odbservicebrokerlistensonport 12345 .Thisisinconsistentwithotherservices,buthasnoeffectontileoperations.

    TheWhenChangedoptionforerrandshasunexpectedbehavior.Donotselectthischoiceasanerrandrun-rule.Formoreinformationaboutthisunexpectedbehavior,seeErrandRunRules .

    DefaultpersistenceissettofullpersistenceusinganAOFfile.Ifaninstanceisrestartedfrequently–forexample,forupgrades–thisfilecangrowsignificantly,leadingtoverylargepersistentdiskusage.IfyourRedisinstancehassignificantlylargerpersistentdiskusagethanexpected,checkthesizeofyour appendonly.aof file(usuallyat /var/vcap/store/redis )toverifythatthisisthesourceoftheusage.Ifso,youcanmitigatethisbyrunningtheBGREWRITEAOF command.

    SwitchingLuaScriptingto off forplanswithpreexistinginstancescancauseupgradeerrandfailures.Forinformationaboutresolvingthisissue,seeUpgradeerrandfailswithUnknowncommandeval .

    v1.10.3ReleaseDate:February2,2018

    Compatibility

    Component Version

    Stemcell 3445.x

    PCF v1.11.xandv1.12.x

    cf-redis-release v431.2.0

    on-demand-service-broker v0.19.0

    consul v187.0.0

    routing v0.163.0

    service-metrics v1.5.11

    service-backup v18.1.9

    syslog-migration v10.0.0

    loggregator v97.0

    RedisOSS v3.2.11

    KnownIssuesTheredis-odbservicebrokerlistensonport 12345 .Thisisinconsistentwithotherservices,buthasnoeffectontileoperations.

    ©CopyrightPivotalSoftwareInc,2013-2018 6 1.10

    https://docs.pivotal.io/tiledev/tile-errands.html#run-ruleshttps://redis.io/commands/bgrewriteaofhttps://pvtl.force.com/s/article/lua-scripting-toggled-eval-error

  • TheWhenChangedoptionforerrandshasunexpectedbehavior.Donotselectthischoiceasanerrandrun-rule.Formoreinformationaboutthisunexpectedbehavior,seeErrandRunRules .

    Duetoabugwiththepropertiesmigrationlogic,tileupgradesinsomePCFinstallationsmaybeblocked.

    DefaultpersistenceissettofullpersistenceusinganAOFfile.Ifaninstanceisrestartedfrequently–forexample,forupgrades–thisfilecangrowsignificantly,leadingtoverylargepersistentdiskusage.IfyourRedisinstancehassignificantlylargerpersistentdiskusagethanexpected,checkthesizeofyour appendonly.aof file,usuallyat /var/vcap/store/redis ,toverifythatthisisthesourceoftheusage.Ifso,youcanmitigatethisbyrunningtheBGREWRITEAOF command.

    SwitchingLuaScriptingto off forplanswithpreexistinginstancescancauseupgradeerrandfailures.Forinformationaboutresolvingthisissue,seeUpgradeerrandfailswithUnknowncommandeval .

    v1.10.2ReleaseDate:January22,2018

    Featureslua-timeout-limit ,aRedisconfigurationthatisexposedtoappdevelopersthrougharbitraryparameters,hasbeendisabledforsecurityconcerns.

    Compatibility

    Component Version

    Stemcell 3445.x

    PCF v1.11.xandv1.12.x

    cf-redis-release v431.2.0

    on-demand-service-broker v0.19.0

    consul v187.0.0

    routing v0.163.0

    service-metrics v1.5.11

    service-backup v18.1.9

    syslog-migration v10.0.0

    loggregator v97.0

    RedisOSS v3.2.11

    KnownIssuesTheredis-odbservicebrokerlistensonport 12345 .Thisisinconsistentwithotherservices,buthasnoeffectontileoperations.

    TheWhenChangedoptionforerrandshasunexpectedbehavior.Donotselectthischoiceasanerrandrun-rule.Formoreinformationaboutthisunexpectedbehavior,seeErrandRunRules .

    Duetoabugwiththepropertiesmigrationlogic,tileupgradesinsomePCFinstallationsmaybeblocked.

    DefaultpersistenceissettofullpersistenceusinganAOFfile.Ifaninstanceisrestartedfrequently–forexample,forupgrades–thisfilecangrowsignificantly,leadingtoverylargepersistentdiskusage.IfyourRedisinstancehassignificantlylargerpersistentdiskusagethanexpected,checkthesizeofyour appendonly.aof file,usuallyat /var/vcap/store/redis ,toverifythatthisisthesourceoftheusage.Ifso,youcanmitigatethisbyrunningtheBGREWRITEAOF command.

    SwitchingLuaScriptingto off forplanswithpreexistinginstancescancauseupgradeerrandfailures.Forinformationaboutresolvingthisissue,seeUpgradeerrandfailswithUnknowncommandeval .

    v1.10.1ReleaseDate:November15,2017

    *

    ©CopyrightPivotalSoftwareInc,2013-2018 7 1.10

    https://docs.pivotal.io/tiledev/tile-errands.html#run-ruleshttps://redis.io/commands/bgrewriteaofhttps://pvtl.force.com/s/article/lua-scripting-toggled-eval-errorhttps://docs.pivotal.io/tiledev/tile-errands.html#run-ruleshttps://redis.io/commands/bgrewriteaofhttps://pvtl.force.com/s/article/lua-scripting-toggled-eval-error

  • Compatibility

    Component Version

    Stemcell 3445.x

    PCF v1.11.xandv1.12.x

    cf-redis-release v431.1.0

    on-demand-service-broker v0.17.2

    consul v178.0.0

    routing v0.162.0

    service-metrics v1.5.10

    service-backup v18.1.6

    syslog-migration v10.0.0

    loggregator v97.0.0

    RedisOSS v3.2.11

    v1.10.0ReleaseDate:October10,2017

    FeaturesIncludesmetricsfortheon-demandservice.ThisenablesoperatorstomonitorthehealthoftheirRedisinstances.

    Introducesanewformatforon-demandmetrics.Thisisthestandardformatforallservicesandwilleventuallyreplaceotherformats.

    Usesanewreleaseforsyslogthatallowstheoperatortoconfigurethelogformattobeeitherthepre-existingoneorRFC5424.RFC5424isthestandardformatforPCFservices.Thepreviousformatwilleventuallybedeprecated.

    EnablesTLSencryptionforsyslogforwarding.

    LuaScriptingdefaultstooffforallon-demandserviceplans.Pivotal’ssecurityrecommendationistokeepLuaScriptingturnedoff.

    Allowstheoperatortoopt-outoftheon-demandservicewithoutconfiguringon-demandplans.

    Compatibility

    Component Version

    Stemcell 3445.x

    PCF v1.11.xandv1.12.x

    cf-redis-release v431.0.0

    on-demand-service-broker v0.17.0

    consul v178.0.0

    routing v0.162.0

    service-metrics v1.5.7

    service-backup v18.1.0

    syslog-migration v9.0.0

    loggregator v97.0.0

    RedisOSS v3.2.8

    KnownIssueslua-timeout-limit ,aRedisconfigurationthatisexposedtoappdevelopersthrougharbitraryparameters,doesnothaveanyeffectduetoabuginRedisv3.2.8.

    ©CopyrightPivotalSoftwareInc,2013-2018 8 1.10

  • Theredis-odbservicebrokerlistenson12345.Thisisinconsistentwithotherservices.

    TheWhenChangedoptionforerrandshasunexpectedbehavior inwhatchangestriggertheerrand.Donotselectthisoptionforerrands.

    Logsforservice-backupandservice-metricsreleasesaretruncatedwhensyslogisnotconfigured.

    Duetoabugwiththepropertiesmigrationlogic,tileupgradesinsomePCFinstallationsmaybeblocked.

    DefaultpersistenceissettofullpersistenceusinganAOFfile.Ifaninstanceisrestartedfrequently–forexample,forupgrades–thisfilecangrowsignificantly,leadingtoverylargepersistentdiskusage.IfyourRedisinstancehassignificantlylargerpersistentdiskusagethanexpected,checkthesizeofyour appendonly.aof file,usuallyat /var/vcap/store/redis ,toverifythatthisisthesourceoftheusage.Ifso,youcanmitigatethisbyrunningtheBGREWRITEAOF command.

    SwitchingLuaScriptingto off forplanswithpreexistinginstancescancauseupgradeerrandfailures.Forinformationaboutresolvingthisissue,seeUpgradeerrandfailswithUnknowncommandeval .

    ©CopyrightPivotalSoftwareInc,2013-2018 9 1.10

    https://docs.pivotal.io/tiledev/tile-errands.htmlhttps://redis.io/commands/bgrewriteaofhttps://pvtl.force.com/s/article/lua-scripting-toggled-eval-error

  • IsRedisforPCFrightforyourenterprise?Pagelastupdated:

    ThistopicprovidesrecommendedusecasesforRedisforPivotalCloudFoundry(PCF)andinformationfordeterminingtheproduct’sfitforyourenterprise’susecase.

    RecommendedUseCasesDedicated-VMandShared-VMplansaredesignedfordatastoreusecases.On-Demandplans,introducedinRedisforPCFv1.8,areconfiguredbydefaultforcacheusecasesbutcanalsobeusedasadatastore.

    Rediscanbeusedinmanydifferentways,including:

    Key/valuestore:ForstringsandmorecomplexdatastructuresincludingHashes,Lists,Sets,andSortedSets

    Sessioncache:Persistenceenabledpreservationofstate

    Fullpagecache:Persistenceenabledpreservationofstate

    Databasecache:Middle-tierdatabasecachingtospeedupcommonqueries

    Dataingestion:BecauseRedisisinmemory,itcaningestdataveryquickly

    MessageQueues:Listandsetoperations. PUSH , POP ,andblockingqueuecommands.

    LeaderboardsandCounting:Incrementsanddecrementssetsandsortedsetsusing ZRANGE , ZADD , ZREVRANGE , ZRANK , INCRBY ,and GETSET

    Pub/Sub:Builtinpublishandsubscribeoperations: PUBLISH , SUBSCRIBE ,and UNSUBSCRIBE

    SuccessfulusecaseshandlethedowntimethatoccurswiththeRedisforPCFservice.Thishappensintwoways:

    Forusecaseswithloweravailabilityrequirements,writesimplefailoverlogicthatenablestheapptoworkwhileRedisforPCFisdown.

    Forusecaseswithhigheravailabilityrequirements,writemorecomplexfailoverlogicthatenablestheapptofailovertoanothersingletonRedisforPCFinstance.

    ServiceOfferingsFordescriptionsofthethreeRedisforPCFserviceofferings,see:

    On-DemandServiceOffering

    Dedicated-VMandShared-VMServiceOfferings

    Enterprise-ReadinessChecklistReviewthefollowingtabletodetermineifRedisforPCFhasthefeaturesneededtosupportyourenterprise.

    Resilience MoreInformation

    Availability

    AllRedisforPCFservicesaresinglenodeswithoutclusteringcapabilities.Thismeansthatplanneddowntime,forexample,upgrades,canresultin2–10minutesofdowntime,dependingonthenatureoftheupgrade.Unplanneddowntime,forexample,VMfailure,alsoaffectstheRedisservice.RedisforPCFhasbeenusedsuccessfullyinenterprise-readyappsthatcantoleratedowntime.Pre-existingdataisnotlostduringdowntimewiththedefaultpersistenceconfiguration.Successfulappsincludethosewherethedowntimeispassivelyhandledortheapphandlesfailoverlogic.

    RecommendedUseCases

    SupportforMultipleAZs

    FailureRecovery

    VMfailuresandprocessfailuresarehandledautomaticallybyBOSHandRedisforPCF.ManualbackupandrestoreinstructionsareavailableforallthreeRedisservices.AutomaticbackupcapabilitiesareenabledfortheDedicated-VMservice.

    ManualBackupandRestoreFlow AutomaticBackupsforDedicated-VM

    Note:TheShared-VMserviceshouldonlybeusedfordevelopmentandtesting.Donotuseforproduction.

    ©CopyrightPivotalSoftwareInc,2013-2018 10 1.10

    https://docs.pivotal.io/redis/1-10/manual-br.html

  • Dedicated-VMService

    IsolationIsolationisprovidedwhenusingtheOn-DemandandDedicated-VMservice.IndividualappsandworkflowsshouldhavetheirownRedisforPCFinstancetomaximizeisolation.

    Day2Operations MoreInformation

    ResourcePlanning

    OperatorscanconfigurethenumberofVMsandthesizeofthoseVMs.FortheOn-Demandservice,theoperatordoesthisbycreatingplanswithspecificVMsizesandquotasforeachplan.FortheDedicated-VMandShared-VMservices,thenumberandsizeofVMsarepre-provisionedbytheoperator.BOSHerrandsusedforregistration,upgradeandcleanupuseshort-livedVMsthatcannotbeconfiguredbutcanbeturnedonoroff.

    On-DemandResourcePlanning Pre-provisioningDedicated-VMandShared-VMInstances

    HealthMonitoring

    TheOn-DemandserviceandDedicated-VMserviceemitmetrics.TheseincludeRedis-specificmetricsandRedisforPCFmetrics.GuidanceoncriticalmetricsandalertinglevelsiscapturedwiththeRedisforPCFKPIs.

    KPIs

    Scalability

    FortheOn-DemandService,theoperatorcanconfigurethreeplanswithdifferentresourcesizes.TheoperatorcanalsoscaleuptheVMsizeassociatedwiththeplan.Additionally,theoperatorcanincreasethequota,whichcapsthenumberofinstancesallowedforeachOn-Demandplan.FortheDedicated-VMService,theoperatorscanchangethenumberofdedicatednodesdeployedaswellaschangetheVMsizeassociatedfortheDedicated-VMs.Topreventdataloss,onlyscalingupissupported.FortheShared-VMService,theoperatorscanchangetheRedisinstancememorylimitaswellaschangetheinstancelimit.Topreventdataloss,onlyscalingupissupported.

    ScalingtheOn-DemandServiceScalingtheDedicated-VMService

    LoggingAllRedisservicesemitlogs.Operatorscanconfiguresyslogforwardingtoaremotedestination.ThisenablesviewinglogsfromeveryVMintheRedisforPCFdeploymentinoneplace,effectivetroubleshootingwhenlogsarelostonthesourceVM,andsettingupalertsforimportanterrorlogstomonitorthedeployment.

    Configuringsyslogforwarding

    CustomizationTheOn-Demandservicecanbeconfiguredtobestfittheneedsofaspecificapp.TheDedicated-VMandShared-VMservicecannotbecustomized.

    ConfiguringtheOn-Demandservice

    UpgradesForinformationaboutpreparinganupgradeandaboutunderstandingtheeffectsonyourRedisforPCFandotherservices,seeUpgradingRedisforPCF.RedisforPCFupgradesrunapostdeploymentBOSHerrandcalledsmoketeststovalidatethesuccessoftheupgrade.

    UpgradesSmokeTests

    Encryption MoreInformation

    EncryptedCommunicationinTransit

    RedisforPCFhasbeentestedwiththeIPsecAdd-onforPCF.BeyondthatRedisforPCFdoesnotprovideadditionalencryptionontopofRedis.

    SecuringDatainTransitwiththeIPsecadd-on OSRedisSecurity

    SupportforMultipleAZsRedisforPCFsupportsconfiguringmultipleavailabilityzones(AZs).However,assigningmultipleAZstoRedisinstancesdoesnotguaranteehighavailabilityasclusteredRedisisnotsupported.Redisinstancesoperateassinglenodes.

    On-DemandplanscanbeconfiguredtodeployinstancestoanyAZ.

    Shared-VMinstancesrunonasinglenodeintheAZinwhichthetileisdeployed.

    Dedicated-VMinstancescanbeassignedtoanyoftheconfiguredAZs.

    ©CopyrightPivotalSoftwareInc,2013-2018 11 1.10

    https://docs.pivotal.io/redis/1-9/architecture.html#resourcehttps://docs.pivotal.io/redis/1-9/installing.html#dedicated-vm-confighttps://docs.pivotal.io/addon-ipsec/index.htmlhttps://redis.io/topics/security

  • On-DemandServiceOfferingPagelastupdated:

    RedisforPCFoffersOn-Demand,Dedicated-VM,andShared-VMserviceplans.Thissectiondescribesthearchitecture,lifecycle,andconfigurationsoftheon-demandplan,aswellasnetworkinginformationfortheon-demandservice.ForsimilarinformationfortheDedicated-VMandShared-VMplans,seeDedicated-VMandShared-VMServiceOfferings.

    ArchitectureDiagramforOn-DemandPlanThisdiagramshowsthearchitectureoftheservicebrokerandon-demandplansandhowtheuser’sappbindstoaRedisinstance.

    ©CopyrightPivotalSoftwareInc,2013-2018 12 1.10

  • On-DemandServicePlans

    ThreeOn-DemandCachePlansOn-demandplansarebestfitforcacheusecasesandareconfiguredassuchbydefault.

    ©CopyrightPivotalSoftwareInc,2013-2018 13 1.10

  • RedisforPCFoffersthreeon-demandplansasthe p.redis servicewithinthePCFRedistile.BelowisadescriptionofeachplanasitappearsintheMarketplaceanditsintendedusecase.

    SmallCachePlan:ARedisinstancedeployedtoadedicatedVM,suggestedtobeconfiguredwith~1GBofmemoryand>3.5GBofpersistentdisk.

    MediumCachePlan:ARedisinstancedeployedtoadedicatedVM,suggestedtobeconfiguredwith~2GBofmemoryand>10GBofpersistentdisk.

    LargeCache:ARedisinstancedeployedtoadedicatedVM,suggestedtobeconfiguredwith~4GBofmemoryand>14GBofpersistentdisk.

    Foreachserviceplan,theoperatorcanconfigurethePlanname,Plandescription,ServerVMtypeandServerDisktype,orchoosetodisabletheplancompletely.

    FeaturesofOn-DemandServicePlansEachon-demandserviceinstanceisdeployedtoitsownVMandissuitableforproductionworkloads.

    Theserviceplansareoperator-configuredandenabled.Onceenabled,appdeveloperscanviewtheavailableplansintheMarketplaceandprovisionaRedisinstancefromthatplan.

    Operatorscanupdatethecacheplansettings,includingtheVMsizeanddisksize,aftertheplanshavebeencreated.

    OperatorsandappdeveloperscanchangecertainRedisconfigurationsfromthedefault.SeeConfigurationforOn-DemandServicePlansformoreinformation.

    Thedefault maxmemory-policy is allkeys-lru andcanbeupdatedforothercachepolicies.

    Themaximumnumberofinstancesismanagedbyaper-planandglobalquota.Themaximumnumberofinstancescannotsurpass50.Forinformationonsettingquotas,seeSettingLimitsforOn-DemandServiceInstances.

    ConfigurationofOn-DemandServicePlansForon-demandplans,certainRedisconfigurationscanbesetbytheoperatorduringplanconfiguration,andbytheappdeveloperduringinstanceprovisioning.OtherRedisconfigurationscannotbechangedfromthedefault.

    OperatorConfigurableRedisSettingsTheRedissettingsthatanoperatorcanconfigureinthetileUIinclude:

    RedisClientTimeout

    RedisTCPKeepalive

    MaxClients

    LuaScripting

    PlanQuota

    Formoreinformation,seeAdditionalRedisConfigurations.

    AppDeveloperConfigurableRedisSettingsTheRedissettingsthatanappdevelopercanconfigureinclude:

    maxmemory-policy

    notify-keyspace-events

    slowlog-log-slower-than

    slowlog-max-len .

    Formoreinformation,seeCustomizeanOn-DemandServiceInstance.

    OperatorNotesforOn-DemandServicePlansInstancesoftheon-demandplancanbedeployeduntiltheirnumberreacheseitheranoperator-setper-planquotaoraglobalquota.Forinformationonsettingquotas,seeSettingLimitsforOn-DemandServiceInstances.

    ©CopyrightPivotalSoftwareInc,2013-2018 14 1.10

  • InstancesareprovisionedbasedontheOn-DemandServicesSDK andservicebrokeradapterassociatedwiththisplan.

    maxmemory in redis.conf issetto45%ofthesystemmemory.

    Anyon-demandplancanbedisabledfromtheplanpageinOpsManager.

    KnownLimitationsforOn-DemandServicePlansLimitationsfortheOn-DemandServiceinclude:

    OperatorsmustnotdownsizetheVMsordisksizeasthiscancausedatalossinpre-existinginstances.

    Operatorscanupdatecertainplansettingsaftertheplanshavebeencreated.Toensureupgradeshappenacrossallinstances,settheupgradeinstanceserrandtoOn.

    IftheoperatorupdatestheVMsize,disksize,ortheRedisconfigurationsettings(enablingLuaScripting,max-clients,timeout,andTCPkeep-alive),thesesettingsareimplementedinallinstancesalreadycreated.

    Backupsarenotavailableforon-demandplans.

    LifecycleforOn-DemandServicePlanHereisthelifecycleofRedisforPCF,fromanoperatorinstallingthetilethroughanappdeveloperusingtheservicethenanoperatordeletingthetile.

    ©CopyrightPivotalSoftwareInc,2013-2018 15 1.10

    http://docs.pivotal.io/on-demand-service-broker/

  • ©CopyrightPivotalSoftwareInc,2013-2018 16 1.10

  • Dedicated-VMandShared-VMServiceOfferingsPagelastupdated:

    RedisforPivotalCloudFoundry(PCF)offersOn-Demand,Dedicated-VM,andShared-VMserviceplans.Thissectiondescribesthearchitecture,lifecycle,andconfigurationsofDedicated-VMandShared-VMplans.ForsimilarinformationfortheOn-Demandserviceplan,seeOn-DemandServiceOffering.

    AboutthePre-ProvisionedPlansRedisforPCFincludestwopre-provisionedserviceplans:

    Dedicated-VMPlanAninstanceofthisplanprovisionsasingleRedisprocessonasinglededicatedVM.Thisplanissuitableforproductionworkloadsandworkloadsthatrequireisolationordedicatedhardware.

    Shared-VMPlanAninstanceofthisplanprovisionsasingleRedisprocessonasinglesharedVM.Thisplanissuitableforworkloadswhichdonotrequirededicatedhardware.

    ArchitectureDiagramforSharedandDedicatedPlansThisdiagramshowshowthearchitectureoftheservicebrokerandShared-VMandDedicated-VMplansandhowtheuser’sappbindstoaRedisinstance.

    ©CopyrightPivotalSoftwareInc,2013-2018 17 1.10

  • ConfigurationforDedicated-VMandShared-VMServicePlansForDedicated-VMandShared-VMplans,thedefaultRedisconfigurationscannotbechanged.Asample redis.conf fromaDedicated-VMplaninstanceisprovidedhere.

    Redisisconfiguredwitha maxmemory-policy of no-eviction .Thispolicymeansthatwhenthememoryisfull,theservicedoesnotevictanykeysorperformanywriteoperationsuntilmemorybecomesavailable.

    Persistenceisconfiguredforboth RDB and AOF .

    Bydefault,themaximumnumberofconnections, maxclients ,issetat10000.Redismightreducethisnumberwhenrunonasystemwithalowmaximumnumberoffiledescriptors.YoucanretrievetheactualsettingonyourRedisserviceinstanceswiththeRediscommand CONFIGGETmaxclients .YoucanusetheRediscommand CONFIGSETmaxclients totemporarilyreduce maxclients ,butyoucannotincreaseitabove10000.Thereisnowaytoconfiguresharedanddedicatedplanstouseacustomlimit.

    Replicationandeventnotificationarenotconfigured.

    ConfigurationfortheDedicated-VMServicePlanAninstanceofthisplan,provisionsasingleRedisprocess,onasinglededicatedVM.Thisplanissuitableforproductionworkloadsandworkloadsthatrequireisolationordedicatedhardware.

    ©CopyrightPivotalSoftwareInc,2013-2018 18 1.10

  • OperatorNotesfortheDedicated-VMServicePlanThefollowingRediscommandsareenabled:

    MONITOR

    SAVE

    BGSAVE

    BGREWRITEAOF

    The maxmemory valuefortheRedisprocessissettobe45%oftheRAMforthatinstance.

    ThepersistentdiskshouldbesettobeatleastthesizeoftheRAMavailabletotheVMorgreater,inordertoaccountforthefinalandtemporaryRDBfilegeneratedbytheRedisbackgroundsave.

    Thisplandeploystheoperator-configurednumberofdedicatedRedisVMsalongsideasingleservicebrokerVM.

    Theseinstancesarepre-provisionedduringthedeploymentofthetilefromOpsManagerintoapool.TheVMsareprovisionedandconfiguredwithaRedisprocessreadytobeusedwhenaninstanceofthe dedicated-vm planisrequested.

    Adefaultdeploymentprovisions 5instances ofthe dedicated-vm planintothepool.Thisnumbercanbeincreasedonthe ResourceConfig tabinOpsManager,eitherintheinitialdeploymentorthereafter.ThenumberofVMscannotbedecreasedoncedeployed.

    Whenauserprovisionsaninstance,itismarkedasinuseandtakenoutofthepool.

    Whenauserdeprovisionsaninstance,theinstanceiscleansedofanydataandconfigurationtorestoreittoafreshstateandplacedbackintothepool,readytobeusedagain.

    Thisplancanbedisabledbysettingthenumberofinstancesofthe Dedicatednode jobinOpsManagerto 0 .

    ThenumberofDedicated-VMplaninstancesavailabletodevelopersissetbytheoperator.Configurationsofupto100Dedicated-VMplaninstanceshavebeentested.

    Youcandisablethisplanbysettingthenumberofinstancesofthe Dedicatednode jobinOpsManagerto 0 .

    KnownLimitationsoftheDedicated-VMServicePlan

    Limitationsofthe dedicated-vm planinclude:

    NoabilitytochangetheRedisconfiguration.The CONFIG commandisdisabled.

    CannotscaledownthenumberofVMsontheplanoncedeployed.

    CannotscaledownthesizeofVMsontheplanoncedeployed(thisprotectsagainstdataloss).

    ConfigurationfortheShared-VMServicePlanAninstanceofthisplanprovisionsasingleRedisprocessonasinglesharedVM.Thisplanissuitableforworkloadswhichdonotrequirededicatedhardware.

    OperatorNotesfortheShared-VMPlanThisplandeploysaRedisinstanceinasharedVMandasingleservicebrokerVM.

    Thisplancanbedisabledbysettingthe Maxinstanceslimit onthe Shared-VMPlan tabinOpsManagertobe 0 .

    Themaximumnumberofinstancescanbeincreasedfromthedefault5tothevaluethatyouwant.IfyouincreasethenumberofinstancesthatcanberunonthissingleVM,youshouldconsiderincreasingtheresourcesallocatedtotheVM,inparticularRAMandCPU.Youcanovercommittosomeextent,butmaystarttoseeperformancedegradations.

    YoucanalsoincreasethemaximumamountofRAMallocatedtoeachRedisprocess(serviceinstance)thatisrunningonthisVM

    Ifyoudecreasetheserviceinstancelimit,anyinstancesthatarerunningwherethecountisnowgreaterthanthelimitarenotterminated.Theyarelefttoberemovednaturally,untilthetotalcountdropsbelowthenewlimityoucannotcreateanynewinstances.

    Forexampleifyouhadalimitof10andallwereusedandreducedthisto8,thetwoinstanceswillbeleftrunninguntilyouterminatethemyourself.

    ThenumberofSharedVMinstancesavailabletodevelopersissetbytheoperator.ThemaximumnumberofsharedVMinstancesisrelativetothememoryallocatedtoeachSharedVMinstanceandthetotalmemoryoftheRedisservicebroker.Fordetails,seeConfiguringServicePlans.

    KnownLimitationsoftheShared-VMPlan

    Limitationsofthe shared-vm planinclude:

    ©CopyrightPivotalSoftwareInc,2013-2018 19 1.10

  • ItcannotbescaledbeyondasingleVM.

    Thefollowingcommandsaredisabled: CONFIG , MONITOR , SAVE , BGSAVE , SHUTDOWN , BGREWRITEAOF , SLAVEOF , DEBUG ,and SYNC .

    ConstrainingCPUand/ordiskusageisnotsupported.

    BecausetheShared-VMplandoesnotmanage“noisyneighbor”problems,Pivotaldoesnotrecommenditforproductionapps.

    LifecycleforDedicated-VMandShared-VMServicePlansHereisthelifecycleofRedisforPCF,fromanoperatorinstallingthetilethroughanappdeveloperusingtheservicethenanoperatordeletingthetile.

    ©CopyrightPivotalSoftwareInc,2013-2018 20 1.10

  • ©CopyrightPivotalSoftwareInc,2013-2018 21 1.10

  • NetworkingforOn-DemandServicesPagelastupdated:

    ThissectiondescribesnetworkingconsiderationsfortheRedisforPivotalCloudFoundry(PCF)on-demandservice.

    BOSH2.0andtheServiceNetworkWhenyoudeployPCF,youmustcreateastaticallydefinednetworktohostthecomponentvirtualmachinesthatconstitutethePCFinfrastructure.

    PCFcomponents,liketheCloudControllerandUAA,runonthisinfrastructurenetwork.InPCFv2.0andearlier,on-demandPCFservicesrequirethatyouhostthemonanetworkthatrunsseparatelyfromthisnetwork.

    Cloudoperatorspre-provisionserviceinstancesfromOpsManager.Then,foreachservice,OpsManagerallocatesandrecoversstaticIPaddressesfromapre-definedblockofaddresses.

    Toenableon-demandservicesinPCFv2.0andearlier,operatorsmustcreateaservicenetworksinOpsManagerDirectorandselecttheServiceNetworkcheckbox.Operatorsthencanselecttheservicenetworktohoston-demandserviceinstanceswhentheyconfigurethetileforthatservice.

    DefaultNetworkandServiceNetworkOn-demandPCFservicesrelyontheBOSH2.0abilitytodynamicallydeployVMsinadedicatednetwork.Theon-demandservicebrokerusesthiscapabilitytocreatesingle-tenantserviceinstancesinadedicatedservicenetwork.

    On-demandservicesusethedynamically-provisionedservicenetworktohostthesingle-tenantworkerVMsthatrunasserviceinstanceswithindevelopmentspaces.ThisarchitectureletsdevelopersprovisionIaaSresourcesfortheirserviceinstancesatcreationtime,ratherthantheoperatorpre-provisioningafixedquantityofIaaSresourceswhentheydeploytheservicebroker.

    Bymakingservicessingle-tenant,whereeachinstancerunsonadedicatedVMratherthansharingVMswithunrelatedprocesses,on-demandserviceseliminatethe“noisyneighbor”problemwhenoneapplicationhogsresourcesonasharedcluster.Single-tenantservicescanalsosupportregulatorycompliancewheresensitivedatamustbecompartmentalizedacrossseparatemachines.

    Anon-demandservicesplitsitsoperationsbetweenthedefaultnetworkandtheservicenetwork.Sharedcomponentsoftheservice,suchasexecutivecontrollersanddatabases,runcentrallyonthedefaultnetworkalongwiththeCloudController,UAA,andotherPCFcomponents.Theworkerpooldeployedtospecificspacesrunsontheservicenetwork.

    ThediagrambelowshowsworkerVMsinanon-demandserviceinstancerunningonaseparateservicesnetwork,whileothercomponentsrunonthedefaultnetwork.

    ©CopyrightPivotalSoftwareInc,2013-2018 22 1.10

  • RequiredNetworkingRulesforOn-DemandServicesPriortodeployinganyservicetilethatusestheon-demandbroker(ODB),theoperatormustrequestthenetworkconnectionsneededtoallowvariouscomponentsofPivotalCloudFoundry(PCF)tocommunicatewithODB.ThespecificsofhowtoopenthoseconnectionsvariesforeachIaaS.

    Thefollowingtableshowstheresponsibilitiesofthekeycomponentsinanon-demandarchitecture.

    KeyComponents TheirResponsibility

    BOSHDirector

    CreatesandupdatesserviceinstancesasinstructedbyODB

    BOSHAgentBOSHincludesanAgentoneveryVMthatitdeploys.TheAgentlistensforinstructionsfromtheDirectorandcarriesoutthoseinstructions.TheAgentreceivesjobspecificationsfromtheDirectorandusesthemtoassignarole,orJob,totheVM.

    BOSHUAA AsanOAuth2provider,BOSHUAAissuestokensforclientstousewhentheyactonbehalfofBOSHusers.

    ERT Containstheappsthatareconsumingservices

    ODB InstructsBOSHtocreateandupdateservices,andconnectstoservicestocreatebindings

    Deployedserviceinstance

    Runsthegivendataservice(forexample,thedeployedRedisforPCFserviceinstancerunstheRedisforPCFdataservice)

    Regardlessofthespecificnetworklayout,theoperatormustensurenetworkrulesaresetupsothatconnectionsareopenasdescribedinthetablebelow.

    Thiscomponent…

    Mustcommunicatewith…

    DefaultTCPPort

    Communicationdirection(s) Notes

    ODB

    BOSHDirector

    BOSHUAA

    25555

    8443 One-way Thedefaultportsarenotconfigurable.

    ODB ERT 8443 One-way Thedefaultportisnotconfigurable.

    ErrandVMs

    ERT

    ODB

    DeployedServiceInstances

    8443

    8080

    6379

    12345

    One-way Thedefaultportsarenotconfigurable.

    BOSHAgent BOSHDirector 4222 Two-wayTheBOSHAgentrunsoneveryVMinthesystem,includingtheBOSHDirectorVM.TheBOSHAgentinitiatestheconnectionwiththeBOSHDirector.Thedefaultportisnotconfigurable.

    DeployedappsonERT

    Deployedserviceinstances

    6379 One-way ThisisthedefaultportwhereRedisisdeployed.

    ERT ODB 12345 One-way Thedefaultportisnotconfigurable.

    ForacompletelistofportsandrangesusedinRedisforPCF,seeNetworkConfiguration.

    ©CopyrightPivotalSoftwareInc,2013-2018 23 1.10

  • RedisforPCFSecurityPagelastupdated:

    SecurityPivotalrecommendsthefollowingbestpracticesforsecurity:

    (Required)ToallowthisservicetohavenetworkaccessyoumustcreateApplicationSecurityGroups.Formoreinformation,seeNetworks,Security,andAssigningAZs.

    RunRedisforPCFinitsownnetwork.Formoreinformationaboutcreatingservicenetworks,seeCreatingNetworksinOpsManager .

    YoucanuseRedisforPCFwiththeIPsecAdd-onforPCF.ForinformationabouttheIPsecAdd-onforPCF,seeSecuringDatainTransitwiththeIPsecAdd-on .

    DonotuseasingleRedisforPCFinstanceformulti-tenancy.AsingleRedisinstanceoftheOn-DemandorDedicated-VMserviceshouldonlysupportasingleworkload.

    TheShared-VMserviceisdesignedformulti-tenancy,butyoushouldnotuseitforproductionusecasesbecauseitisnotconsideredadequatelysecureforthatpurpose.

    Neverchangethenetworkthatapre-existingDedicated-VMdeploymentworkswith.Ifthenetworkischanged,thebindingsfortheexistingDedicated-VMinstancesstopworking,buttheseinstancesstillappearasavailabletonewapps.Becausetheexistinginstancesmighthavedataonthemandnewappscanbindtothem,datamightunintentionallybeleakedtonewappsthatbindtotheseinstances.

    ©CopyrightPivotalSoftwareInc,2013-2018 24 1.10

    https://docs.pivotal.io/pivotalcf/1-11/customizing/gcp-om-config.html#networkhttps://docs.pivotal.io/addon-ipsec/index.html

  • IntroductionforOperatorsPagelastupdated:

    ThistopicisforPivotalCloudFoundry(PCF)operators.Itintroducessomebestpractices,butdoesnotprovidedetailsaboutoperation.

    BestPracticesPivotalrecommendsthatoperatorsfollowtheseguidelines:

    ResourceAllocation—WorkwithappdeveloperstoanticipatememoryrequirementsandtoconfigureVMsizes.InstancesofDedicted-VMandShared-VMserviceshaveidenticalVMsizes.However,withtheOn-Demandservice,appdeveloperscanchoosefromthreedifferentplans,eachwithitsownVMsizeandquota.SeetheserviceofferingfortheOn-DemandPlanandResourceUsagePlanningforOn-Demandplans.

    Logs—Configureasyslogoutput.Storinglogsinanexternalservicehelpsoperatorsdebugissuesbothcurrentandhistorical.SeeConfigureSyslogOutput.

    Monitoring—Setupamonitoringdashboardformetricstotrackthehealthoftheinstallation.

    BackingUpData—WhenusingRedisforpersistence,configureautomaticbackupssothatdatacanberestoredinanemergency.Validatethebacked-updatawithatestrestore.On-Demandinstancesareconfiguredforcacheusesandarenotintendedforbackups.SeeConfiguringAutomatedBackupsandManuallyBackingupandRestoring .

    Using—InstancesoftheOn-DemandandDedicated-VMservicesrunondedicatedVMs.Appsinproductionshouldhaveadedicatedinstancetopreventperformanceissuescausedbysharinganinstance.TheShared-VMservicedoesnotprovideaDedicated-VMperinstance,andPivotalrecommendsthatyouonlyuseitfordevelopmentandtesting.SeetheserviceofferingsfortheOn-DemandPlanandtheDedicatedandSharedPlans.

    RedisKeyCountandMemorySizeRediscanhandleupto2 keys,andwastestedinpracticetohandleatleast250millionkeysperinstance.Everyhash,list,set,andsortedset,canhold2 elements.VMmemoryismorelikelytobealimitingfactorthannumberofkeysthatcanbehandled.

    ErrandsRedisforPCFincludestheerrandslistedbelow.

    Post-DeployErrandsBrokerRegistrar—Registersthecf-redis-brokerwithPCFtoofferthe p-redis service( shared-vm and dedicated-vm plans).

    SmokeTests—Runslifecycletestsfor shared-vm and dedicated-vm plansifthesehavebeenenabledandthereisremainingquotaavailable.Thetestscoverprovisioning,binding,reading,writing,unbinding,anddeprovisioningofserviceinstances.

    RegisterOn-DemandBroker—Registerstheon-demandRedisbrokerwithPCFtoofferthe p.redis service(on-demandplans).

    On-DemandSmokeTests—Runslifecycletestsforenabledplansofthe p.redis serviceifthereisremainingquotaavailable.Thetestscoverprovisioning,binding,reading,writing,unbindinganddeprovisioningofserviceinstances.

    UpgradeAllOn-DemandServiceInstances—Upgradeson-demandserviceinstancestousethelatestplanconfiguration,servicereleases,andstemcell.

    Theabovepost-deployerrandsarerunbydefaultwheneverApplyChangesistriggered,whetherornottherehasbeenaconfigurationchangeintheRedisforPCFtileitself.

    Pre-DeleteErrandsBrokerDeregistrar—Deregistersthe cf-redis-broker .

    DeleteAllOn-DemandServiceInstancesandDeregisterBroker—Deletesallon-demandinstancesandderegisterstheon-demandRedisbroker.

    Theabovepre-deleteerrandsarerunbydefaultwhenevertheRedisforPCFtileisdeleted.

    32

    32

    ©CopyrightPivotalSoftwareInc,2013-2018 25 1.10

    https://docs.pivotal.io/redis/1-10/manual-br.html

  • TurningoffPost-DeployErrandsPivotalrecommendsthatyourunningthepost-deployerrandsatanytriggerofApplyChanges.However,thispracticecanextendthedurationofapplyingchangesbyseveralminuteseverytime.Thissectionhelpsyoudecidewhenitissafetoskipsomepost-deployerrands.

    ChangestoRedisforPCFTileConfiguration

    IfthechangesincludeconfigurationchangesontheRedisforPCFtileoranewstemcellversion,theoperatormustrunallpost-deployerrands.

    InstallingAnotherTile

    WheninstallinganothertilethatdoesnotmakeanychangestotheBOSHDirectororElasticRuntimetile,itisnotnecessarytorunanyoftheRedisforPCFtile’spost-deployerrands.

    ChangestoOtherTiles

    SometimesthechangedoesnotincludechangestotheRedisforPCFtile’sconfiguration.ThenitmightnotbenecessarytorunalloftheRedisforPCFtile’spost-deployerrands.

    BrokerRegistrarErrandRequiredtoruniftheCFsystemdomainischangedintheElasticRuntimetile.

    NotnecessarytorunifthechangeonlyinvolvesothertilesexceptElasticRuntimetile.

    RegisterOn-DemandBrokerErrandRequiredtorunifthenetworkrangethattheRedisOn-demandBrokerisdeployedinischangedintheBOSHDirectortile.

    NotnecessarytorunifthechangeonlyinvolvesothertilesexceptBOSHDirector.

    SmokeTestsandOn-DemandSmokeTestsErrandsRequiredtoruniftheirrespectiveregisterbrokererrandisrequired.

    Requiredtorunbothifanewerstemcellminorversionisuploaded.TheRedisforPCFtilefloatstothenewestminorversion.Formoreinformation,seeUnderstandingFloatingStemcells .

    GoodpracticetorunbothforanychangeintheBOSHDirectororElasticRuntimetile.

    NotnecessarytoruneitherifthechangeonlyinvolvesothertilesexceptElasticRuntimeandBOSHDirector.

    UpgradeAllOn-DemandServiceInstancesErrandRequiredtorunifanewerstemcellminorversionisuploaded.TheRedisforPCFtilefloatstothenewestminorversion.Formoreinformation,seeUnderstandingFloatingStemcells .

    Notnecessarytoruniftherearenoon-demandinstancesprovisioned.

    SmokeTestsOpsManagerrunsRedisforPCFsmoketestsasapost-installerrand.Theoperatorcanalsorunthesmoketestserrandbyrunningthecommand:bosh2-dREDIS-DEPLOYMENT-NAMErun-errandsmoke-tests

    Formoreinformation,seeRedisforPCFSmokeTests.

    PivotalrecommendsagainstchangingtheBOSHDirector’snetworkconfigurationinawaythatchangestherangeswheretheRedisforPCFtiledeploysVMs.

    ©CopyrightPivotalSoftwareInc,2013-2018 26 1.10

    https://docs.pivotal.io/pivotalcf/customizing/understanding-stemcells.htmlhttps://docs.pivotal.io/pivotalcf/customizing/understanding-stemcells.html

  • Note:Smoketestsfailunlessyouenableglobaldefaultapplicationsecuritygroups(ASGs).YoucanenableglobaldefaultASGsbybindingtheASGtothe system orgwithoutspecifyingaspace.ToenableglobaldefaultASGs,use cfbind-running-security-

    group.

    ©CopyrightPivotalSoftwareInc,2013-2018 27 1.10

  • InstallingRedisforPCFPagelastupdated:

    DownloadandInstalltheTileToaddRedisforPivotalCloudFoundry(PCF)toOpsManager,followtheprocedureforaddingPCFOpsManagertiles:

    1. DownloadtheproductfilefromPivotalNetwork .SelectthelatestreleasefromtheReleases:drop-downmenu.

    2. UploadtheproductfiletoyourOpsManagerinstallation.

    3. ClickAddnexttotheuploadedproductdescriptionintheAvailableProductsviewtoaddthisproducttoyourstagingarea.

    4. (Optional)Clickthenewlyaddedtiletoconfigureyourpossibleserviceplans,syslogdraining,andbackups.

    5. ClickApplyChangestoinstalltheservice.

    SeethenetworkconfigurationsectionforguidanceontheportsandrangesusedintheRedisservice.

    ConfigureRedisforPCFServicePlansSelecttheRedistileintheOpsManagerInstallationDashboardtodisplaytheconfigurationpage,andallocateresourcestoRedisserviceplans.

    ©CopyrightPivotalSoftwareInc,2013-2018 28 1.10

    https://network.pivotal.io/products/p-redis

  • On-DemandServiceSettings1. Createaservicenetwork .FromanIAASperspective,creationofaservicenetworkisidenticaltoanyothernetworkpreviouslycreatedfortileson

    OpsManager.TheonlychangeisthattheOperatorneedstomarkthenetworkasa“ServiceNetwork”inOpsManagertoinstructOpsManagertonotperformIPmanagementinthatnetwork.IfyouwishtouseRedisforPCFwithouttheOn-Demandservice,youwillstillneedtocreateanemptyservicenetwork toinstallthetile.

    2. ClickOn-DemandServiceSettings,andthenentertheMaximumserviceinstancesacrossallon-demandplans.Themaximumnumberofinstancesyousetforallyourcacheplanscombinedcannotexceedthisnumber.

    Reviewtheguidancetounderstandtheresourceimplicationsforon-demandinstances.SeeResourceUsagePlanningforOn-Demandplans.

    3. SelecttheAllowoutboundinternetaccessfromserviceinstancescheckbox.Thischeckboxmustbetickedtoallowexternallogforwarding,sendingbackupartifactstoexternaldestinations,andcommunicatingwithanexternalBOSHblobstore.

    4. ClickCachePlan1,2,or3toconfigureit.

    Youcanconfigureuptothreecacheplanswithappropriatememoryanddisksizesforyourusecase(s).ResourceconfigurationoptionsmayvaryondifferentIAASs.

    Thedefaultnamesofthethreecacheplansprovidedreflectthatinstancesoftheseplansareintendedtobeusedfordifferentcachesizes,asfollows:

    cache-small:ARedisinstancedeployedtoadedicatedVM,suggestedtobeconfiguredwith~1GBofmemoryand>3.5GBofpersistentdiskcache-medium:ARedisinstancedeployedtoadedicatedVM,suggestedtobeconfiguredwith~2GBofmemoryand>10GBofpersistentdiskcache-large:ARedisinstancedeployedtoadedicatedVM,suggestedtobeconfiguredwith~4GBofmemoryand>14GBofpersistentdisk

    Note:OutboundnetworktrafficrulesalsodependonyourIaaSsettings.ConsultyourOpsManageradministratortoensurethatyourIaaSallowsoutboundtraffictotheexternalnetworksyouneed.

    ©CopyrightPivotalSoftwareInc,2013-2018 29 1.10

    https://docs.pivotal.io/redis/1-8/architecture.html#architecture_networkshttps://discuss.pivotal.io/hc/en-us/articles/115010154387

  • Configurethefollowingsettingsforyourcacheplan(s).Anypre-populateddefaultsettingshavebeenpre-configuredaccordingtothememory/disksizeofeachplan.

    Field Description

    Plan SelectActiveorPassive.Aninactiveplandoesnotneedanyfurtherconfiguration.

    PlanName Enteranamethatwillappearintheservicecatalog.

    PlanDescription Enteradescriptionthatwillappearintheservicecatalog.Specifydetailsthatwillberelevanttoappdevelopers.

    PlanQuotaAppdeveloperscancreateinstancesuntilthisquotaisreached.Formoreinformation,seeSettingLimitsforOn-DemandServiceInstances.

    CFServiceAccessSelectaserviceaccesslevel.Thissettingdoesnotmodifythepermissionsthathavebeenpreviouslyset,andallowsformanualaccesstobeconfiguredfromtheCLI.

    ©CopyrightPivotalSoftwareInc,2013-2018 30 1.10

  • AZtodeployRedisinstancesofthisplan

    ThisistheAZinwhichtodeploytheRedisinstancesfromtheplan.ThismustbeoneoftheAZsoftheservicenetwork(configuredintheOpsManagerDirectortile).

    ServerVMtype SelecttheVMtype.Pivotalrecommendsthatthepersistentdiskshouldbeatleast3.5xtheVMmemory.

    ServerDisktype Selectthedisktype.Pivotalrecommendsthatthepersistentdiskshouldbeatleast3.5xtheVMmemory.

    RedisClientTimeoutRedisClientTimeoutreferstotheservertimeoutforanidleclientspecifiedinseconds.Thedefaultsettingis3600.Adjustthissettingasneeded.

    RedisTCPKeepaliveRedisTCPKeepalivereferstotheinterval(inseconds)atwhichTCPACKSaresenttoclients.Thedefaultsettingis60.Adjustthissettingasneeded.

    MaxClientsMaxClientsreferstothemaximumnumberofclientsthatcanbeconnectedatanyonetime.Perplan,thedefaultsettingis1000forsmall,5000formediumand10000forlarge.Adjustthissettingasneeded.

    LuaScripting EnableordisableLuaScriptingasneeded.PivotalrecommendsthatLuaScriptingbedisabled.

    5. ClicktheSavebutton.

    UpdatingOn-DemandServicePlans

    Operatorscanupdatecertainsettingsaftertheplanshavebeencreated.IftheOperatorupdatestheVMsize,disksize,ortheRedisconfigurationsettings(enablingLuaScripting,max-clients,timeoutandTCPkeep-alive),thesesettingswillbeimplementedinallinstancesthatarealreadycreated.

    OperatorsshouldnotdownsizetheVMsordisksizeasthiscancausedatalossinpre-existinginstances.Additionally,Operatorscannotmakeaplanthatwaspreviouslyactive,inactive,untilallinstancesofthatplanhavebeendeleted.

    RemovingOn-DemandServicePlans

    IfyouwanttoremovetheOn-DemandServicefromyourtile,dothefollowing:

    1. GototheResourceConfigpageontheRedisforPCFtile,andsettheRedisOn-DemandBrokerjobinstancesto0.

    2. NavigatetotheErrandspageontheRedisforPCFtile,andsetthefollowingerrandstooff:

    RegisterOn-demandRedisBrokerOn-demandBrokerSmokeTestsUpgradeallOn-demandRedisServiceInstancesDeregisterOn-demandRedisBroker

    3. Createanemptyservicenetwork.Forinstructions,seethisKnowledgeBasearticle .

    4. GotoeachofthethreeCachePlanpagesontheRedisforPCFtile,andseteachcacheplantoPlanInactive.Forexample:

    ©CopyrightPivotalSoftwareInc,2013-2018 31 1.10

    https://discuss.pivotal.io/hc/en-us/articles/115010154387

  • Shared-VMPlan

    1. SelecttheShared-VMPlantab.

    2. Configurethesefields:

    RedisInstanceMemoryLimit—Maximummemoryusedbyashared-VMinstanceRedisServiceInstanceLimit—Maximumnumberofshared-VMinstances

    MemoryandinstancelimitsdependonthetotalsystemmemoryofyourRedisbrokerVMandrequiresomeadditionalcalculation.Formoreinformation,seeMemoryLimitsforShared-VMPlansbelow.

    3. ClickSave.

    4. Ifyoudonotwanttousetheon-demandservice,youmustmakealloftheon-demandserviceplansinactive.Clickthetabforeachon-demandplan,andselectPlanInactive.SeetheexampleinStep4ofRemovingOn-DemandServicePlansabove.

    5. TochangetheallocationofresourcesfortheRedisbroker,clicktheResourceConfigtab.

    TheRedisbrokerserverrunsalloftheRedisinstancesforyourShared-VMplan.FromtheResourceConfigpage,youcanchangetheCPU,RAM,EphemeralDisk,andPersistentDiskmadeavailable,asneeded.

    MemoryLimitsforShared-VMPlans

    Additionalcalculationisrequiredtoconfigurememorylimitsforshared-VMplans.Withtheseplans,severalserviceinstancessharetheVM,andtheRedisbrokeralsorunsonthissameVM.Therefore,thememoryusedbyalltheshared-vminstancescombinedshouldbeatmost45%ofthememoryoftheRedisbrokerVM.

    Toconfigurethelimitsinthesefields,estimatethemaximummemorythatcouldbeusedbyallyourRedisshared-VMinstancescombined.Ifthatfigureishigherthan45%oftheRedisbrokerVM’stotalsystemmemory,youcandooneofthefollowing:

    DecreasetheRedisInstanceMemoryLimit.

    DecreasethenumberofinstancesinRedisServiceInstanceLimit.

    IncreasetheRAMfortheRedisBrokerintheResourceConfigtabasshownbelow.

    Herearesomeexamplesforsettingtheselimits:

    RedisBrokerVMTotalMemory RedisInstanceMemoryLimit RedisServiceInstanceLimit

    ©CopyrightPivotalSoftwareInc,2013-2018 32 1.10

  • 16GB 512MB 1416GB 256MB 28

    64GB 512MB 56

    Dedicated-VMPlan

    1. ToconfiguretheDedicated-VMplan,clicktheResourceConfigtabtochangetheallocationofresourcesfortheDedicatedNode.

    Thedefaultconfigurationcreatesfivededicatednodes(VMs).EachnodecanrunoneRedisdedicated-VMinstance.Youcanchangethenumberofdedicatednodes,andconfigurethesizeofthepersistentandephemeraldisks,andtheCPUandRAMforeachnode.ThedefaultVMsizeissmall.ItisimportantthatyousetthecorrectVMsizetohandleanticipatedloads.Withdedicated-VMplans,thereisoneRedisserviceinstanceoneachVM.Themaximummemoryaninstancecanuseshouldbeatmost45%ofthetotalsystemRAMontheVM.Youcansetthiswiththe maxmemory configuration.Theappcanuse100%of maxmemory –thatis,upto45%ofthesystemRAM.Pivotalrecommendsthepersistentdiskbesetto3.5xtheamountofsystemRAM.

    2. ClicktheSavebutton.

    3. YoumustdisabletheOn-DemandServiceifyoudonotwishtouseit.Pleaseseethedirectionshere.

    ConfigureResourcesforDedicated-VMandShared-VMPlansToconfigureresourcesfortheShared-VMandDedicated-VMplans,clicktheResourceConfigsettingstabontheRedisforPCFtile.

    TheShared-VMplanisontheRedisBrokerresource.

    TheDedicated-VMplanisontheDedicatedNoderesource.

    ThefollowingarethedefaultresourceandIPrequirementsforRedisforPCFwhenusingtheShared-VMorDedicated-VMplans:

    Product Resource Instances CPU Ram Ephemeral Persistent StaticIP DynamicIP

    Redis RedisBroker 1 2 3072 4096 9216 1 0

    Redis DedicatedNode 5 2 1024 4096 4096 1 0

    Redis BrokerRegistrar 1 1 1024 2048 0 0 1

    Redis BrokerDe-Registrar 1 1 1024 2048 0 0 1

    Redis Compliation 2 2 1024 4096 0 0 1

    Note:ItispossibletoconfigurealargerRedisServiceInstanceLimit,ifyouareconfidentthatthemajorityofthedeployedinstanceswillnotusealargeamountoftheirallocatedmemory,forexampleindevelopmentortestenvironments.

    However,thispracticeisnotsupportedandcancauseyourservertorunoutofmemory,preventingusersfromwritinganymoredatatoanyRedisshared-VMinstance.

    Note:AsofRedisforPCFv1.11,theon-demandserviceisatfeatureparitywiththededicated-VMservice.Thededicated-VMserviceplanwillbedeprecated.Pivotalrecommendsusingtheon-demandserviceplan.

    ©CopyrightPivotalSoftwareInc,2013-2018 33 1.10

  • DisableSharedandDedicatedVMPlansYoucandisableSharedandDedicatedVMPlansbydoingthefollowingwhileconfiguringRedistile:

    1. EnsureatleastoneOn-Demandplanisactive.

    2. Configurethefollowingtabs:

    Shared-VMPlan:a.SetRedisServiceInstanceLimitto0.b.ClickSave.

    Errands:a.SetBrokerRegistrartoOff.b.SetSmokeTeststoOff.c.SetBrokerDeregistrartoOff.d.LeaveallfourOn-DemanderrandsOn.e.ClickSave.

    ResourceConfig:a.DecreaseRedisBrokerPersistentdisktypetothesmallestsizeavailable.b.DecreaseRedisBrokerVMtypetothesmallestsizeavailable.c.SetDedicatedNodeInstancesto0.d.ClickSave.

    AdditionalRedisConfigurationsTheoperatorcanconfigurefurtherpropertiesperplanbeyondmemoryanddisksizes.Appropriatedefaultshavebeenpre-configuredaccordingtothememory/disksizeofeachplan.

    Operatorscanupdatecertainplansettingsaftertheplanshavebeencreated.IftheOperatorupdatestheVMsize,disksize,ortheRedisconfigurationsettings(enablingLuaScripting,max-clients,timeoutandTCPkeep-alive),thesesettingswillbeimplementedinallinstancesalreadycreated.OperatorsshouldnotdownsizetheVMsordisksizeasthiscancausedatalossinpre-existinginstances.

    Thefollowingtabledescribespropertiesthatoperatorscanupdateintheconfigurationpage.

    Property Default Description

    RedisClientTimeout

    3600 Servertimeoutforanidleclientspecifiedinseconds(e.g.,3600)

    RedisTCPKeepalive

    60 Themaxnumberofconnectedclientsatthesametime

    MaxClients1000/5000/10000(small/medium/large)

    Themaxnumberofconnectedclientsatthesametime

    LuaScripting

    Enabled Enable/DisableLuascripting

    PlanQuota 20MaximumnumberofRedisserviceinstancesforthisplan,acrossallorgsandspaces.Formoreinformation,seeSettingLimitsforOn-DemandServiceInstances.

    Forsettingsthatappdeveloperscanconfigure,seeCustomizeanOn-DemandServiceInstance.

    ConfigureSyslogForwardingPivotalrecommendsthatoperatorsconfiguresyslogforwardingtoaremotedestination.Forwardingyoursystemlogstoaremotedestinationenables:

    ViewinglogsfromeveryVMintheRedisforPCFdeploymentinoneplace

    EffectivetroubleshootingwhenlogsarelostonthesourceVM

    Settingupalertsforimportanterrorlogstomonitorthedeployment

    AlllogsfollowtheRFC5424format.

    ©CopyrightPivotalSoftwareInc,2013-2018 34 1.10

  • Followthesestepstoconfiguresyslogforwarding:

    1. ClicktheRedisforPCFtiletodisplaytheconfigurationpage,andthenclicktheSyslogtabonthesidebarnavigation.

    2. SelecteithertheYeswithoutencryptionortheYeswithTLSencryptionradiobutton.

    3. EntertheSyslogaddressandport,andselectthetransportprotocolofyourremotedestination.YoucanonlyuseTCPifyouareusingTLSencryption.

    Theinformationrequiredforthesefieldsisprovidedbyyourremotedestination.Addressshouldbesomethingsuchas logs.papertrailapp.com ,andtheportwillbeanumbersuchas 41635 .

    4. Selecttheformatforyourlogs.RFC5424 isthesuggestedformat.

    ForinstancesoftheRedison-demandplan,alllogsfollowRFC5424format.InstancesoftheDedicated-VMandShared-VMplansallowfortheOperatortoselecttheirlogformattobeeithertheirlegacyformatorRFC5424.PCFismovingtowardallsyslogsconsistentlyusingRFC5424format.

    5. IfyouselectedYeswithTLSencryption,completethesefields:

    PermittedPeerreferstotheremotesyslogdestination.ItallowseachVMtoestablishanencryptedtunnelwiththeremotesyslogdestination.

    Note:Tousesyslogforon-demandinstancesyoumustenableoutboundinternetaccessintheOn-DemandServiceSettingstab.

    ©CopyrightPivotalSoftwareInc,2013-2018 35 1.10

    https://tools.ietf.org/html/rfc5424

  • ThePermittedPeeriseithertheacceptedfingerprint(SHA1)ornameoftheremotepeer,forexample *.example.com .TLSCAcertificatereferstothetrustedcertificateauthoritiesfortheremotesyslogdestination.Largecertificatechains(>8kb)arenotsupported.

    6. ClickSave.

    Networks,Security,andAssigningAZs

    NetworkConfigurationPivotalrecommendsthateachtypeofRedisforPCFserviceruninitsownnetwork.Forexample,runaRedisforPCFon-demandserviceonaseparatenetworkfromaRedisforPCFshared-VMservice.

    Thefollowingportsandrangesareusedinthisservice:

    Port Protocol DirectionandNetwork Reason

    83008301

    TCPTCPandUDP

    InboundtoCloudFoundrynetwork,outboundfromservicebrokerandserviceinstancenetworks*

    CommunicationbetweentheCFconsul_serverandconsul_agentsonRedisdeployment;usedformetrics

    4001(forPCFv1.11only)

    TCPInboundtoCloudFoundrynetwork,outboundfromservicebrokerandserviceinstancenetworks*

    UsedbytheRedismetron_agenttoforwardmetricstotheCloudFoundryetcdserver(forPCFv1.11only)

    12350 TCPOutboundfromCloudFoundrytothecf-redis-brokerservicebrokernetwork

    (Onlyifusingacf-redis-broker)Accesstothecf-redis-brokerfromthecloudcontrollers.

    12345 TCPOutboundfromCloudFoundrytotheon-demandservicebrokernetwork

    (OnlyifusinganOn-Demandservice)Foraccesstotheon-demandservicebrokerfromthecloudcontrollers

    6379 TCPOutboundfromCloudFoundrytoanyserviceinstancenetworks(dedicated-nodeandon-demand)

    Accesstoalldedicatednodesandon-demandnodesfromtheDiegoCellandDiegoBrainnetwork(s)

    32768-61000

    TCPOutboundfromCloudFoundrytothecf-redis-brokerservicebrokernetwork

    FromtheDiegoCellandDiegoBrainnetwork(s)totheservicebrokerVM.Thisisonlyrequiredforthesharedserviceplan.

    80or443(Typically)

    httporhttpsrespectively

    Outboundfromanyserviceinstancenetworks Accesstothebackupblobstore

    844325555

    TCPOutboundfromanyon-demandservicebrokernetworktotheboshdirectornetwork

    Fortheon-demandservice,theon-demandservicebrokerneedstotalkto bosh director

    *Typicallytheservicebrokernetworkandserviceinstancenetwork(s)arethesame.

    ApplicationSecurityGroupsToallowthisservicetohavenetworkaccessyoumustcreateApplicationSecurityGroups(ASGs) .EnsureyoursecuritygroupallowsaccesstotheRedisServiceBrokerVMandDedicatedVMsconfiguredinyourdeployment.YoucanobtaintheIPaddressesfortheseVMsinOpsManagerundertheResourceConfigsectionfortheRedistile.

    ApplicationContainerNetworkConnections

    ApplicationcontainersthatuseinstancesoftheRedisservicerequirethefollowingoutboundnetworkconnections:

    Destination Ports Protocol Reason

    ASSIGNED_NETWORK 32768-61000 tcp Enableapplicationtoaccesssharedvmserviceinstance

    ASSIGNED_NETWORK 6379 tcp Enableapplicationtoaccessdedicatedvmserviceinstance

    Note:WithoutASGs,thisserviceisunusable.

    ©CopyrightPivotalSoftwareInc,2013-2018 36 1.10

    http://docs.pivotal.io/pivotalcf/1-10/adminguide/app-sec-groups.html

  • CreateanASGcalled redis-app-containers withtheaboveconfigurationandbindittotheappropriatespaceor,togiveallstartedappsaccess,bindtothedefault-running ASGsetandrestartyourapps.Example:

    [{"protocol":"tcp","destination":"ASSIGNED_NETWORK","ports":"6379"}]

    AssigningAZsAsofRedisforPCF1.9,youcanassignmultipleAZstoRedisjobs,howeverthiswillnotguaranteehighavailability.

    Formoreinformation,seeAboutMultipleAZsinRedisforPCF .

    ValidatingInstallationSmoketestsarerunaspartofRedisforPCFinstallationtovalidatethattheinstallsucceeded.Smoketestsaredescribedhere .

    UninstallingRedisforPCFTouninstallRedisforPCF,dothefollowing:

    1. InthePCFOpsManagerInstallationdashboard,clickthetrashcaniconinthelowerrighthandcorneroftheRedisforPCFtile.

    2. Confirmdeletionoftheproduct,andthenclickApplyChanges.

    ©CopyrightPivotalSoftwareInc,2013-2018 37 1.10

    https://docs.pivotal.io/redis/1-10/#other-noteshttps://docs.pivotal.io/redis/1-8/smoke-tests.html

  • UpgradingRedisforPCFPagelastupdated:

    ThissectioncontainstheupgradeprocedureandupgradepathsforRedisforPCF.

    CompatibleUpgradePathsConsiderthefollowingcompatibilityinformationbeforeupgradingRedisforPCF.

    Formoreinformation,seetheProductVersionMatrix .

    OpsManagerVersionSupportedUpgradesforRedisInstallations

    From To

    v1.5.x,v1.6.x

    v1.4.0–v1.4.3v1.4.4–latestv1.4.x

    v1.5.0–v1.5.7

    v1.4.4–latestv1.4.xNextv1.4.x–latestv1.4.x

    v1.5.0–latestv1.5.x

    v1.5.0–latestv1.5.x Nextv1.5.x–latestv1.5.x

    v1.7.x v1.5.0–latestversion v1.5.1–latestversion

    v1.8.x v1.5.17–latestversion v1.6.0–latestversion

    v1.9.x–latestversion v1.6.0–latestversion v1.8.0–latestversion

    v1.10.0–v1.10.2 v1.7.2–latestversion v1.8.0–latestversion

    v1.10.9–latestversion v1.7.2–latestversion v1.9.0–latestversion

    v1.11.x v1.9.0–latestversion 1.10.0–latestversion

    v1.12.x v1.10.0–latestversion

    UpgradeRedisforPCFThisproductenablesareliableupgradeexperiencebetweenversionsoftheproductthatisdeployedthroughOpsManager.

    Forinformationontheupgradepathsforeachreleasedversion,seetheabovetable.

    ToupgradeRedisforPCF,dothefollowing:

    1. DownloadthelatestversionoftheproductfromPivotalNetwork .

    2. Uploadthenew .pivotal filetoOpsManager.

    3. Ifrequired,uploadthestemcellassociatedwiththeupdate.

    4. Ifrequired,updateanynewmandatoryconfigurationparameters.

    5. ClickApplychanges.Therestoftheprocessisautomated.

    DuringtheupgradedeploymenteachRedisinstanceexperiencesasmallperiodofdowntimeaseachRedisinstanceisupdatedwiththenewsoftwarecomponents.ThisdowntimeisbecausetheRedisinstancesaresingleVMsoperatinginanonHAsetup.

    Thelengthofthedowntimedependsonwhetherthereisastemcellupdatetoreplacetheoperatingsystemimage,orwhethertheexistingVMcansimplyhavetheredissoftwareupdated.StemcellupdatesincuradditionaldowntimewhiletheIaaScreatesthenewVM,whereasupdateswithoutastemcellupdatearefaster.

    OpsManagerensurestheinstancesareupdatedwiththenewpackagesandanyconfigurationchangesareappliedautomatically.

    Upgradingtoanewerversionoftheproductdoesnotcauseanylossofdataorconfiguration.

    ©CopyrightPivotalSoftwareInc,2013-2018 38 1.10

    http://docs.pivotal.io/compatibility-matrix.pdfhttps://network.pivotal.io/products/p-redis

  • DowntimeDuringUpgradesandRedeploysAredeploycausesdowntimeoftheRedisforPCFtile.Thissectionclarifieswhateventstriggeraredeploy.

    OpsManagerChangesInOpsManager,anyfieldthatchangesthemanifestcausesaredeployoftheRedisforPCFtile.

    ElasticRuntimeChangesInElasticRuntime,changestoanyofthefollowingpropertiescantriggerdowntime:

    ..cf.consul_server.ips —ConsulServerResourceConfig

    $runtime.system_domain —RuntimeSystemDomain

    ..cf.ha_proxy.skip_cert_verify.value —DisableSSLcertificateverificationforthisenvironmentinElasticRuntime

    $runtime.apps_domain —RuntimeAppsDomain

    ..cf.nats.ips —NATSResourceConfig

    $self.service_network —ServiceNetworksinOpsManager

    WhentheoperatorappliesanyoftheabovechangestoElasticRuntime,downtimeistriggeredforthefollowing:

    RedisOn-DemandBrokerinRedisforPCFv1.8andlater

    Dedicated-VMandShared-VMServicesinRedisforPCFv1.9andearlier

    UpgradingallServiceInstancesForRedisforPCFv1.8andlater,downtimeforserviceinstancesoccursonlyaftertheoperatorrunsthe upgrade-all-service-instances BOSHerrand,afteralltileupgradesarecompletedsuccessfully.

    AnychangetoafieldontheRedisforPCFtilecausesBOSHtoredeployboththelegacyandtheOn-DemandRedisBrokersaftertheoperatorrunstheupgrade-all-service-instances errand.

    NetworkChangesafterDeploymentThissectionexplainshowchangingthenetworkafterdeployingRedisforPCFaffectsinstancesandapps.

    DedicatedandSharedVMsTochangethenetworkfordedicated-VMandshared-VMservices,clickAssignAZsandNetworksintheRedisforPCFtileconfigurationandusetheNetworkdropdown.Thenetworkappliestobothshared-VManddedicated-VMservices.

    YoucanalsochangethenetworkbyalteringtheCIDRintheOpsManagerDirectortile.

    Pivotaldiscourageschangingthenetworkthatapre-existingdedicated-VMdeploymentorshared-VMdeploymentworkswith.

    Ifthenetworkischanged,appbindingsforexistingdedicated-VMandshared-VMinstancesmightstopworking.Dedicated-VMsmightalsobereallocatedasnewserviceinstanceswithouttheirdatabeingcleaned,resultinginadataleakbetweenapps.

    On-DemandServiceInstancesTochangetheservicenetworkforon-demandserviceinstances,clickAssignAZsandNetworksintheRedistileconfigurationandusetheServiceNetworkdropdown.Theservicenetworkappliestoon-demandserviceinstances.

    YoucanalsochangetheservicenetworkbyalteringtheCIDRintheOpsManagerDirectortile.

    ©CopyrightPivotalSoftwareInc,2013-2018 39 1.10

  • Ifyouchangetheservicenetwork,youmustunbindandrebindexistingappstotheon-demandRedisinstance.

    Newon-demandserviceinstancesareplacedintothenewservicenetwork,butexistingon-demandserviceinstancesarenotmoved.Ifyouneedtomovethedatainon-demandRedisinstancestoanewservicenetwork,youmustcreateanewinstance,migratethedatamanually,anddeletetheoldinstance.

    Similarly,changingtheavailabilityzoneforanon-demandplanonlyappliestonewon-demandinstancesanddoesnotalterexistinginstances.

    ReleasePolicyWhenanewversionofRedisisreleased,PivotalaimstoreleaseanewversionofRedisforPCFcontainingthenewRedisversionsoonafter.

    WhenanewversionofRedisoranotherdependentsoftwarecomponent,suchasthestemcell,isreleasedduetoacriticalCVE,Pivotal’sgoalistoreleaseanewversionoftheRedisforPCFwithin48hours.

    ©CopyrightPivotalSoftwareInc,2013-2018 40 1.10

  • SettingLimitsforOn-DemandServiceInstancesOn-demandprovisioningisintendedtoaccelerateappdevelopmentbyeliminatingtheneedfordevelopmentteamstorequestandwaitforoperatorstocreateaserviceinstance.However,tocontrolcosts,operationsteamsandadministratorsmustensureresponsibleuseofresources.

    Thereareseveralwaystocontroltheprovisioningofon-demandserviceinstancesbysettingvariousquotasattheselevels:

    Global

    Plan

    Org

    Space

    Afteryousetquotas,youcan:

    ViewCurrentOrgandSpace-levelQuotas

    MonitorQuotaUseandServiceInstanceCount

    CalculateResourceCostsforOn-DemandPlans

    CreateGlobal-levelQuotasEachPivotalCloudFoundry(PCF)servicehasaseparateservicebroker.Aglobalquotaattheservicelevelsetsthemaximumnumberofserviceinstancesthatcanbecreatedbyagivenservicebroker.Ifaservicehasmorethanoneplan,thenthenumberofserviceinstancesforallplanscombinedcannotexceedtheglobalquotafortheservice.

    TheoperatorsetsaglobalquotaforeachPCFserviceindependently.Forexample,ifyouhaveRedisforPCFandRabbitMQforPCF,youmustsetaseparateglobalservicequotaforeachofthem.

    Whentheglobalquotaisreachedforaservice,nomoreinstancesofthatservicecanbecreatedunlessthequotaisincreased,orsomeinstancesofthatservicearedeleted.

    TheglobalquotaissetintheservicetileinOpsManager,shownforanexampleservicebelow.

    Note:Thisisanexampleimageonly.Thefollowingscreenmaylookslightlydifferentforyourserviceorreleaseversion.

    ©CopyrightPivotalSoftwareInc,2013-2018 41 1.10

  • CreatePlan-levelQuotasAservicemayofferoneormoreplans.Youcansetaseparatequotaperplansothatinstancesofthatplancannotexceedtheplanquota.Foraservicewithmultipleplans,thetotalnumberofinstancescreatedforallplanscombinedcannotexceedtheglobalquotafortheservice.

    Whentheplanquotaisreached,nomoreinstancesofthatplancanbecreatedunlesstheplanquotaisincreasedorsomeinstancesofthatplanaredeleted.

    TheplanquotaissetintheservicetileinOpsManager,shownforanexampleserviceplanbelow.

    Note:Thisisanexampleimageonly.Thefollowingscreenmaylookslightlydifferentforyourserviceorreleaseversion.

    ©CopyrightPivotalSoftwareInc,2013-2018 42 1.10

  • CreateandSetOrg-levelQuotas

    ©CopyrightPivotalSoftwareInc,2013-2018 43 1.10

  • Anorg-levelquotaappliestoallPCFservicesandsetsthemaximumnumberofserviceinstancesanorganizationcancreatewithinPCF.Forexample,ifyousetyourorg-levelquotato100,developerscancreateupto100serviceinstancesinthatorgusinganycombinationofPCFservices.

    Whenthisquotaismet,nomoreserviceinstancesofanykindcanbecreatedintheorgunlessthequotaisincreasedorsomeserviceinstancesaredeleted.

    Tocreateandsetanorg-levelquota,dothefollowing:

    1. Runthiscommandtocreateaquotaforserviceinstancesattheorglevel:

    cf create-quota QUOTA-NAME -m TOTAL-MEMORY -i INSTANCE-MEMORY -r ROUTES -s SERVICE-INSTANCES --allow-paid-service-plans

    wherethesevariablesare:

    QUOTA-NAME —AnameforthisquotaTOTAL-MEMORY —MaximummemoryusedbyallserviceinstancescombinedINSTANCE-MEMORY —MaximummemoryusedbyanysingleserviceinstanceROUTES —MaximumnumberofroutesallowedforallserviceinstancescombinedSERVICE-INSTANCES —Maximumnumberofserviceinstancesallowedfortheorg

    Forexample:cfcreate-quotamyquota-m1024mb-i16gb-r30-s50--allow-paid-service-plans

    2. Associatethequotayoucreatedabovewithaspecificorgbyrunningthefollowingcommand:

    cf set-quota ORG-NAME QUOTA-NAME

    Forexample: cfset-quotadev_orgmyquota

    Formoreinformationonmanagingorg-levelquotas,seeCreatingandModifyingQuotaPlans .

    CreateandSetSpace-levelQuotasAspace-levelservicequotaappliestoallPCFservicesandsetsthemaximumnumberofserviceinstancesthatcanbecreatedwithinagivenspaceinPCF.Forexample,ifyousetyourspace-levelquotato100,developerscancreateupto100serviceinstancesinthatspaceusinganycombinationofPCFservices.

    Whenthisquotaismet,nomoreserviceinstancesofanykindcanbecreatedinthespaceunlessthequotaisupdatedorsomeserviceinstancesaredeleted.

    Tocreateandsetaspace-levelquota,dothefollowing:

    1. Runthefollowingcommandtocreatethequota:

    cf create-space-quota QUOTA -m TOTAL-MEMORY -i INSTANCE-MEMORY -r ROUTES -s SERVICE-INSTANCES --allow-paid-service-plans

    wherethesevariablesare:

    QUOTA-NAME —AnameforthisquotaTOTAL-MEMORY —MaximummemoryusedbyallserviceinstancescombinedINSTANCE-MEMORY —MaximummemoryusedbyanysingleserviceinstanceROUTES —MaximumnumberofroutesallowedforallserviceinstancescombinedSERVICE-INSTANCES —Maximumnumberofserviceinstancesallowedfortheorg

    Forexample: cfcreate-space-quotamyspacequota-m1024mb-i16gb-r30-s50--allow-paid-service-plans

    2. Associatethequotayoucreatedabovewithaspecificspacebyrunningthefollowingcommand:

    cf set-space-quota SPACE-NAME QUOTA-NAME

    Forexample:cfset-space-quotamyspacemyspacequota

    Formoreinformationonmanagingspace-levelquotas,seeCreatingandModifyingQuotaPlans .

    ©CopyrightPivotalSoftwareInc,2013-2018 44 1.10

    https://docs.pivotal.io/pivotalcf/1-12/adminguide/quota-plans.htmlhttps://docs.pivotal.io/pivotalcf/1-12/adminguide/quota-plans.html

  • ViewCurrentOrgandSpace-levelQuotasTovieworgquotas,runthefollowingcommand.

    cforgORG-NAME

    Toviewspacequotas,runthefollowingcommand:

    cfspaceSPACE-NAME

    Formoreinformationonmanagingorgandspace-levelquotas,seetheCreatingandModifyingQuotaPlans .

    MonitorQuotaUseandServiceInstanceCountService-levelandplan-levelquotause,andtotalnumberofserviceinstances,areavailablethroughtheon-demandbrokermetricsemittedtoLoggregator.Thesemetricsarelistedbelow:

    MetricName Description

    on-demand-broker/SERVICE-NAME/quota_remaining Quotaremainingforallinstancesacrossallplans

    on-demand-broker/SERVICE-NAME/PLAN-NAME/quota_remaining Quotaremainingforaspecificplan

    on-demand-broker/SERVICE-NAME/total_instances Totalinstancescreatedacrossallplans

    on-demand-broker/SERVICE-NAME/PLAN-NAME/total_instances Totalinstancescreatedforaspecificplan

    CalculateResourceCostsforOn-DemandPlansOn-demandplansusededicatedVMs,disks,andvariousotherresourcesfromanIaaS,suchasAWS.Tocalculatemaximumresourcecostforplansindividuallyorcombined,youmultiplythequotabythecostofVMandPersistentDisktypesselectedintheplanconfiguration(s).ThespecificcostsdependonyourIaaS.

    TheimagebelowshowsanexampleoftheVMtypeandpersistentdiskselected,aswellasthequotaforthisplan.

    CalculateMaximumResourceCostPerOn-DemandPlan

    Note:Quotametricsarenotemittedifnoquotahasbeenset.

    Important:Althoughoperatorscanlimiton-demandinstanceswithplanquotasandaglobalquota,asdescribedintheabovetopics,IaaSresourceusagestillvariesbasedonthenumberofon-demandinstancesprovisioned.

    ©CopyrightPivotalSoftwareInc,2013-2018 45 1.10

    https://docs.pivotal.io/pivotalcf/1-12/adminguide/quota-plans.html

  • TocalculatethemaximumcostofVMsandpersistentdiskforeachplan,dothefollowingcalculation:

    planquotaxcostofselectedresources

    Forexample,ifyouselectedtheoptionsintheaboveimage,youhaveselectedaVMtypemicro.cpuandapersistentdisktype20GB,andtheplanquotais15.TheVMandpersistentdisktypeshaveanassociatedcostfortheIaaSyouareusing.Therefore,tocalculatethemaximumcostofresourcesforthisplan,multiplythecostoftheresourcesselectedbytheplanquota:

    (15xcostofmicro.cpuVMtype)+(15xcostof20GBpersistentdisk)

    CalculateMaximumResourceCostforAllOn-DemandPlansTocalculatethemaximumcostforallplanscombined,addtogetherthemaximumcostsforeachplan.Thisassumesthatthesumofyourindividualplanquotasislessthantheglobalquota.

    Hereisanexample:

    (plan1quotaxplan1resourcecost)+(plan2quotaxplan2resourcecost)=maxcostforallplans

    CalculateActualResourceCostofallOn-DemandPlansTocalculatethecurrentactualresourcecostacrossallyouron-demandplans:

    1. Findthenumberofinstancescurrentlyprovisionedforeachactiveplanbylookingatthe total_instance metricforthatplan.

    2. Multiplythe total_instance countforeachplanbythatplan’sresourcecosts.Recordthecostsforeachplan.

    3. AddupthecostsnotedinStep2togetyourtotalcurrentresourcecosts.

    Forexample:

    (plan1totalinstancesxplan1resourcecost)+(plan2totalinstancesxplan2resourcecost)=currentcostforallplans

    ©CopyrightPivotalSoftwareInc,2013-2018 46 1.10

  • ConfiguringAutomatedBackupsforRedisforPCFPagelastupdated:

    CreatingBackupsofRedisInstancesYoucanconfigurebackupstoberunforallinstances,acrossdedicated-VMandshared-VMserviceplans.BackupsarenotavailableforOn-Demandinstances.

    Thekeyfeaturesare:

    Runsonaconfigurableschedule

    Everyinstanceisbackedup,acrossbothserviceplans

    TheRedisbrokerstatefileisbackedup

    Foreachbackupartefact,afileiscreatedthatcontainstheMD5checksumforthatartifact.Thiscanbeusedtovalidatethattheartefactisnotcorrupted.

    YoucanconfigureAWSS3,SCP,AzureorGoogleCloudStorageasyourdestination

    DatafromRedisisflushedtodisk,beforethebackupisstartedbyrunninga BGSAVE oneachinstance

    Backupsarelabelledwithtimestamp,instanceGUIDandplanname

    ConfiguringBackupsToenablebackups,youwillfirstneedtochooseyourbackupdestinationtype-AWSS3,SCP,AzureorGoogleCloudStorage.

    ClickonthetileinOpsManager,followedbythe Backups linkontheleft-handmenu.

    S3BackupFields

    ©CopyrightPivotalSoftwareInc,2013-2018 47 1.10

  • Field Description Mandatory/Optional

    AccessKeyID

    TheaccesskeyforyourS3account Mandatory

    SecretAccessKey

    TheSecretKeyassociatedwithyourAccessKey Mandatory

    EndpointURL

    TheendpointofyourS3account,e.g. http://s3.amazonaws.com

    Optional,defaultstohttp://s3.amazonaws.com

    ifnotspecified

    BucketName

    Nameofthebucketyouwishthefilestobestoredin. Mandatory

    Path Pathinsidethebuckettosavebackupsto. Mandatory

    Backuptimeout

    Theamountoftime,inseconds,thatthebackupprocesswaitsfortheBGSAVEcommandtocompleteonyourinstance,beforetransferringtheRDBfiletoyourconfigureddestination

    Mandatory

    CronSchedule

    Backupsscheduleincrontabformat.Forexample,oncedailyat2amis * 2 * * * .Alsoacceptsapre-definedschedule:anyof @yearly , @monthly , @weekly , @daily , @hourly ,or @every ,where isanysupportedtimestring(e.g. 1h30m ).Formoreinformation,seethecronpackagedocumentation .

    Mandatory

    ©CopyrightPivotalSoftwareInc,2013-2018 48 1.10

    https://godoc.org/github.com/robfig/cron#hdr-Predefined_schedules

  • AWSIAMPolicyAnAWSIAMpolicydescribesthepermissionsrelatedtoyourbucket.Theminimumsetofpoliciesrequiredinordertouploadthebackupfilesare:

    {"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":["s3:ListBucket","s3:ListBucketMultipartUploads","s3:ListMultipartUploadParts","s3:PutObject"],"Resource":["arn:aws:s3:::","arn:aws:s3:::/*"]}]}

    Notes:

    Makesuretoreplace withyourcorrectvalues.

    s3:CreateBucket isonlyrequirediftheS3bucketdoesnotexist.

    Theadditional s3:CreateBucket actionisalsorequirediftheS3bucketdoesnotexist.

    SCPBackupFields

    ©CopyrightPivotalSoftwareInc,2013-2018 49 1.10

  • Field Description Mandatory/Optional

    Username Theusernametousefortransferringbackupstothescpserver Mandatory

    PrivateKey Theprivatesshkeyoftheuserconfiguredin Username Mandatory

    Hostname ThehostnameorIPaddressoftheSCPserver Mandatory

    DestinationDirectory

    Thepathinthescpserver,wherethebackupswillbetransferred Mandatory

    SCPPort Thescpportofthescpserver Mandatory

    CronSchedule

    Backupsscheduleincrontabformat.RefertotableforS3backupsfordetails Mandatory

    Backuptimeout

    Theamountoftime,inseconds,thatthebackupprocesswaitsfortheBGSAVEcommandtocompleteonyourinstance,beforetransferringtheRDBfiletothescpserver

    Mandatory

    ©CopyrightPivotalSoftwareInc,2013-2018 50 1.10

  • GCSBackupFields

    RedisforPCFusesserviceaccountcredentialstouploadbackupstoGoogleCloudStorage.TheserviceaccountshouldhaveStorageAdmin permissions.Pleaserefertothedocumentation fordetailsonhowtosetupaGCPserviceaccount.

    Field Description Mandatory/Optional

    ProjectID GCPProjectID Mandatory

    Bucketname

    Nameofthebucketyouwishthefilestobestoredin. Mandatory

    Serviceaccountprivatekey

    TheJSONSecretKeyassociatedwithyourServiceAccount.Seedocumentation fordetailsonhowtosetupserviceaccountkeys.

    Mandatory

    CronSchedule

    Backupsscheduleincrontabformat.Forexample,oncedailyat2amis*2***.Alsoacceptsapre-definedschedule:anyof@yearly,@monthly,@weekly,@daily,@hourly,or@every,whereisanysupportedtimestring(e.g.1h30m).Formoreinformation,seethecronpackagedocumentation.

    Mandatory

    Backuptimeout

    Theamountoftime,inseconds,thatthebackupprocesswaitsfortheBGSAVEcommandtocompleteonyourinstance,beforetransferringtheRDBfiletoyourconfigureddestination

    Mandatory

    AzureBackupFields

    ©CopyrightPivotalSoftwareInc,2013-2018 51 1.10

    https://cloud.google.com/storage/docs/authentication#service_accountshttps://cloud.google.com/storage/docs/authentication#generating-a-private-key

  • Field Description Mandatory/Optional

    Account Accountname Mandatory

    AzureStorageAccessKey

    AzurespecificcredentialsrequiredtowritetotheAzurecontainer Mandatory

    Containername

    NameoftheAzurecontainerwhichwillstorebackupfiles. Mandatory

    DestinationDirectory

    DirectorywherethebackupfileswillbestoredwithintheAzurecontainer. Mandatory

    BlobStoreBaseURL

    URLpointingtoAzureresource Optional

    CronSchedule

    Backupsscheduleincrontabformat.Forexample,oncedailyat2amis*2***.Alsoacceptsapre-definedschedule:anyof@yearly,@monthly,@weekly,@daily,@hourly,or@every,whereisanysupportedtimestring(e.g.1h30m).Formoreinformation,seethecronpackagedocumentation.

    Mandatory

    Backuptimeout

    Theamountoftime,inseconds,thatthebackupprocesswaitsfortheBGSAVEcommandtocompleteonyourinstance,beforetransferringtheRDBfiletoyourconfigureddestination

    Mandatory

    ©CopyrightPivotalSoftwareInc,2013-2018 52 1.10

  • Notes

    Foreachbackupdestination,thefield Backuptimeout causesbackupstofailafteraconfiguredtimeout.Redis’BGSAVEwillcontinuebutbackupswillnotbeuploadedtodestinatonsifthistimeoutishit.

    ManualBackupsYoumaywanttodoamanualbackupbeforedoingaprocedurethatmightcausedataloss.Forinstructions,seetheKnowledgeBasearticleManuallyBackingUpandRestoringRedisforPivotalCloudFoundry .

    ©CopyrightPivotalSoftwareInc,2013-2018 53 1.10

    https://discuss.pivotal.io/hc/en-us/articles/360002282154

  • MonitoringRedisforPCFPagelastupdated:

    TheLoggregatorFirehose exposesRedismetrics.Youcanusethird-partymonitoringtoolstoconsumeRedismetricstomonitorRedisperformanceandhealth.

    AsanexampleofhowtodisplayKPIsandmetrics,seetheCFRedisexampledashboard ,whichusesDatadog .Pivotaldoesnotendorseorprovidesupportforanythird-partysolution.

    MetricsPollingIntervalThemetricspollingintervaldefaultsto30seconds.ThiscanbechangedbynavigatingtotheMetricsconfigurationpageandenteringanewvalueinMetricspollinginterval(min:10).

    Metricsareemittedinthefollowingformat:

    origin:"p-redis"eventType:ValueMetrictimestamp:1480084323333475533deployment:"cf-redis"job:"cf-redis-broker"index:"{redacted}"ip:"10.0.1.49"valueMetric:

    KeyPerformanceIndicatorsKeyPerformanceIndicators(KPIs)forRedisforPCFaremetricsthatoperatorsfindmostusefulformonitoringtheirRedisservicetoensuresmoothoperation.KPIsarehigh-signal-valuemetricsthatcanindicateemergingissues.KPIscanberawcomponentmetricsorderivedmetricsgeneratedbyapplyingformulastorawmetrics.

    PivotalprovidesthefollowingKPIsasgeneralalertingandresponseguidancefortypicalRedisforPCFinstallations.Pivotalrecommendsthatoperatorscontinuetofine-tunethealertmeasurestotheirinstallationbyobservinghistoricaltrends.Pivotalalsorecommendsthatoperatorsexpandbeyondthisguidanceandcreatenew,installation-specificmonitoringmetrics,thresholds,andalertsbasedonlearningfromtheirowninstallations.

    ForalistofallotherRedismetrics,seeOtherRedisMetrics.

    RedisforPCFServiceKPIs

    TotalInstancesForOn-DemandService

    total_instances

    Description

    TotalinstancesprovisionedbyapplicationdevelopersacrossallOn-DemandServicesandforaspecificOn-Demandplan

    Use:Trackinstanceusebyappdevelopers.

    Origin:Doppler/FirehoseType:countFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement Daily

    RecommendedalertthresholdsYellowwarning:N/A

    ©CopyrightPivotalSoftwareInc,2013-2018 54 1.10

    https://docs.pivotal.io/pivotalcf/loggregator/architecture.html#firehosehttps://github.com/pivotal-cf/metrics-datadog-dashboardhttps://www.datadoghq.com

  • Redcritical:N/ARecommendedresponse N/A

    QuotaRemainingForOn-DemandService

    quota_remaining

    Description

    NumberofavailableinstancesacrossallOn-DemandServicesandforaspecificOn-Demandplan.

    Use:Trackremainingresourcesavailableforappdevelopers.

    Origin:Doppler/FirehoseType:countFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement Daily

    RecommendedalertthresholdsYellowwarning:3Redcritical:0

    Recommendedresponse Increasequotaallowedforthespecificplanoracrossallon-demandservices.

    TotalInstancesForShared-VMandDedicated-VMService

    /p-redis/service-broker/dedicated_vm_plan/total_instances/p-redis/service-broker/shared_vm_plan/total_instances

    Description

    TotalinstancesprovisionedforShared-VMandDedicated-VMServices.

    Use:TracktotalShared-VMandDedicated-VMinstancesavailableforappdevelopers.

    Origin:Doppler/FirehoseType:countFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement Application-specific

    RecommendedalertthresholdsYellowwarning:N/ARedcritical:N/A

    Recommendedresponse N/A

    QuotaRemainingForShared-VMandDedicated-VMService

    /p-redis/service-broker/dedicated_vm_plan/available_instances/p-redis/service-broker/shared_vm_plan/available_instances

    Description

    NumberofavailableinstancesfortheDedicated-VMserving.

    Use:Trackremainingresourcesavailableforappdevelopers.

    Origin:Doppler/FirehoseType:countFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement Daily

    RecommendedalertthresholdsYellowwarning:2Redcritical:0

    Recommendedresponse IncreaseVMsavailablefortheDedicated-VMservice.

    ©CopyrightPivotalSoftwareInc,2013-2018 55 1.10

  • RedisKPIs

    PercentofPersistentDiskUsed

    disk.persistent.percent

    Description

    PercentageofpersistentdiskbeingusedonaVM.ThepersistentdiskisspecifiedasanIaaS-specificdisktypewithasize.Forexample, pd-standard onGCP,or st1 onAWS,withdisksize5GB.ThisisametricrelevanttothehealthoftheVM.Apercentageofdiskusageapproaching100willcausetheVMdisktobecomeunusableasnomorefileswillbeallowedtobewritten.

    Use:Redisisanin-memorydatastorethatusesapersistentdisktobackupandrestorethedatasetincaseofupgradesandVMrestarts.

    Origin:JMXBridgeorBOSHHMType:percentFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement Averageoverlast10minutes

    RecommendedalertthresholdsYellowwarning:>75Redcritical:>90

    RecommendedresponseEnsurethatthediskisatleast3.5xVMmemory.Ifitis,thencontactGSS.Ifitisnot,thenthenincreasediskspace.

    UsedMemoryPercent

    info.memory.used_memory/info.memory.maxmemory

    Description

    Theratioofthesetwometricsreturnsthepercentageofavailablememoryused:info.memory.used_memory isametricofthetotalnumberofbytesallocatedbyRedisusingitsallocator(eitherstandardlibc,jemalloc,oranalternativeallocatorsuchastcmalloc).

    maxmemory isaconfigurationoptionforthetotalmemorymadeavailabletotheRedisinstance.

    Use:ThisisaperformancemetricthatismostcriticalforRedisinstanceswitha maxmemory-policy ofallkeys-lru

    Origin:Doppler/FirehoseType:percentageFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement

    Application-specificbasedonvelocityofdataflow.Someoptionsare:

    1. Individualdatapoints—Useifkeyevictionisinplace,forexample,incacheusecases.

    2. Averageoverlast10minutes—Useifthisgivesyouenoughdetail.

    3. Maximumoflast10minutes

    Ifkeyevictionisnotinplace,options1or3givemoreusefulinformationtoensurethathighusagetriggersanalert.

    Recommendedalertthresholds

    Yellowwarning:80%Notapplicableforcacheusage.Whenusedasacache,Rediswilltypicallyuseuptomaxmemoryandthenevictkeystomakespacefornewentries.

    Adifferentthresholdmightbeappropriateforspecificusecasesofnokeyeviction,toallowforreactiontime.Factorstoconsider:

    1. Trafficloadonapplication—HighertrafficmeansthatRedismemorywillfillupfaster.

    2. Averagesizeofdataadded/transaction—ThemoredataaddedtoRedisonasingletransaction,thefasterRediswillfillupitsmemory.

    ©CopyrightPivotalSoftwareInc,2013-2018 56 1.10

  • Redcritical:90%.Seewarning-specificthresholdinformation.

    RecommendedresponseNoactionassumingthemaxmemorypolicysetmeetsyourapplicationsneeds.Ifthemaxmemorypolicydoesnotpersistdataasyouwish,eithercoordinateabackupcadenceorupdateyourmaxmemorypolicyifusingtheon-demandRedisservice.

    ConnectedClients

    info.clients.connected_clients

    Description

    NumberofclientscurrentlyconnectedtotheRedisinstance.

    Use:Redisdoesnotcloseclientconnections.Theyremainopenuntilclosedexplicitlybytheclientoranotherscript.Oncethe connected_clients reaches maxclients ,Redisstopsacceptingnewconnectionsandbeginsproducing ERR max number of clients reached errors.

    Origin:Doppler/FirehoseType:numberFrequency:30s(default),10s(configurableminimum)

    Recommendedmeasurement Averageoverlast10minutes

    Recommendedalertthresholds

    Yellowwarning:Application-specific.Whenconnectedclientsreachesmaxclients,nomoreclientscanconnect.Thisalertshouldbeatthelevelwhereitcantellyouthatyourapplicationhasscaledtoacertainlevelandmayrequireaction.Redcritical:Application-specific.Whenconnectedclientsreachesmaxclients,nomoreclientscanconnect.Thisalertshouldbeatthelevelwhereitcantellyouthatyourapplicationhasscaledtoacertainlevelandmayrequireaction.

    RecommendedresponseIncreasemaxclientsforyourinstanceifusingtheon-demandservice,orreducethenumberofconnectedclients.

    BlockedClients

    info.clients.blocked_clients

    Description

    ThenumberofclientscurrentlyblockedwaitingforablockingrequesttheyhavemadetotheRedisserver.Redisprovidestwotypesofprimi