Ignite 2015 wrap-up: Very much a V1.0 product


I’m just back from the Microsoft Ignite conference in Chicago. With over 23,000 people attending, it was a huge event and the central concourse reminded me of a very busy railway station from time to time. Microsoft has announced that they are going to run Ignite in Chicago in 2016 (May 9-13) and I bet they’ve received a ton of advice from attendees that will help to make the 2016 event better.

The most common points I have heard expressed were:

Stop the shouting! Microsoft hired a company called EventForce to run the logistics and EventForce hired a bunch of college students to help attendees get from place to place. Because the McCormick Place conference center is so large this is a necessary service, but it would have been nice if some coaching had been provided so that the “purple shirts”  and the other security staff didn’t feel the need to shout at attendees. At times, it felt like cattle queuing to enter a milking shed. Attendees pay good money to attend Ignite; they don’t need to be insulted.

Fix the Wi-Fi. It’s a terrifically difficult challenge to provide a fast and robust Wi-Fi service for so many devices, but we’re talking about the world’s largest software company here and a company that is capable of running massively scalable infrastructures in the cloud. The service was awful in many places for Monday and Tuesday and seemed to improve as the week progressed. It would be nice if it worked from the start.

Make the buses run all day. The conference center is equipped with a hotel (the Hyatt Regency), at least two Starbucks, and a McDonalds. That’s not much choice if you want to duck out of sessions for a couple of hours to refresh yourself or do some work in private. But the bus service to the hotels stopped during the middle of the day, forcing attendees to take a cab or walk 3 or more miles back to the center of Chicago. On the upside, the people running the bus service were friendly and helpful and the buses use a special road to get back to downtown and so avoid the need to grapple with most of the traffic.

Provide edible food. No one expects great food at a conference. Imagine how difficult it is to prepare and serve meals for so many people in the 90 minute break assigned for lunch. Now make it more difficult by serving food that is attractive and edible. But people pay for the food in their conference fee and it was not good to find so many attendees voicing opinions that Ignite served the very worst food ever experienced at a major conference. That’s not the kind of thing you want to hear.

Shorten the keynote. Microsoft is in a quandary here. Ignite brings together many different groups, all of whom want to hear something about their own area of technology. So the keynote seemed to be an attempt to satisfy everyone in the audience and it lasted forever. I sat down at 8:30AM and escaped at 11:50AM. And that was too long. The keynote contained lots of great content and Julia White proved to be a real hit with her contribution, but it lasted way too long. And the annoying warm up act of the two talking heads who pratted on inanely before the keynote started did my head in.


Rationalize and streamline the scheduling. The conference center is big and room are spread apart. Many attendees seemed to be in perpetual motion to get from place to place and some clocked up many miles on their tracking device of choice (unsurprisingly, the Microsoft Band was noticeable by its popularity). Microsoft wanted to provide an event that substituted for TechEd, MEC, the SharePoint Conference, the Lync Conference, and others, so why didn’t particular areas of the conference center become fulcrum points for these communities by grouping related sessions together? It would have been nice not to have to see every floor and every area in the center. On the other hand, exercise is goodness.

Let speakers propose sessions they want to give. Asking experienced conference speakers to make themselves available for a session to be assigned to them is not a good way to create a compelling agenda. It’s an interesting idea that didn’t work. I think it’s just fine for Microsoft to assign sessions to its employees to ensure that the content it wants covered is delivered, but the same tactic doesn’t work with external speakers. Let us do our thing and cover technology with passion… and let’s do more “unplugged” sessions too. These work really well as long as they are moderated correctly.

More beer please. I didn’t attend the conference celebration because having dinner with 23,000 others and experiencing the lines for food, bathrooms, and beer didn’t seem like something I would enjoy. But I heard from many that the beer ran out early. Clearly not a good thing to happen in an event catering for IT types.

On a positive note, any of the sessions I attended were of the standard that I expected. This is only one person’s view and I heard from quite a few attendees that they were disappointed with the marketing-like content of some sessions. It’s also hard to come up with a schedule that everyone likes and I know some were disappointed when attractive sessions clashed or the schedule meant that fewer could get to a session than you’d expect. The Exchange compliance session was one of this – an interesting topic with huge expertise on the panel, attended by just a few people.

But you’ll get ups and downs at any conference and Microsoft provides an excellent Channel 9 service to allow attendees and people who weren’t at the event to catch up on all the sessions present at Ignite.

I also liked the Skype service provided to allow attendees to call home from the conference center. It was a small but nice gesture that leverages one of Microsoft’s products.

Ready to distribute copies of

Ready to distribute copies of “Office 365 for Exchange Professionals” with Technical Editor Jeff Guillet

And of course, we had the chance to launch our “Office 365 for Exchange Professionals” eBook at Ignite. Microsoft did a very nice job of producing 200 printed copies of the book that were given away to attendees. They also provided 400 copies on USB for my “Bumps and Blips” session on Thursday. And we were supported too by ENow Software, TransVault, Binary Tree, and NetMail, all of whom had special versions of the book for distribution to their customers. Copies of the book are available online. Because it’s an eBook that needs to be kept current with the evolution of the service, we will be updating it with a goal of releasing a new version at IT/DEV Connections in Las Vegas next September.

Best of all was the chance to meet up with so many people working in the industry. I’ve never seen so many Microsoft engineers at a single conference (expected because all of the other conferences are now gone); there were a huge number of great industry luminaries floating around (some at several feet off the group); lots of MVPs attended; and the exhibition hall – although very large – always had someone interesting to talk with or something interesting to investigate.

Overall, Ignite 2015 reminded me very much of a Microsoft V1.0 product. Obvious goodness and a great platform to build off, but lots of places to improve. I will be back in May 2016 for V2.0.

Follow Tony @12Knocksinna

Posted in Cloud, Technology | Tagged , | 10 Comments

New management cmdlets for Office 365 Groups

Several of the sessions about Office 365 Groups given at Microsoft Ignite in Chicago have addressed the obvious deficiency in management controls that exist in the initial implementation. Part of this was the total inability to create new groups or remove existing groups with PowerShell. You can run Get-GroupMailbox to return the properties of a group and Set-GroupMailbox to set some properties, but that’s hardly enough to satisfy the needs of those who want to manage groups.

The answer is the new set of *–UnifiedGroup and *-UnifiedGroupLinks cmdlet sets that are now rolling out to Office 365 tenants. These cmdlets provide a far more comprehensive set of controls over groups and replace the old cmdlets.

So we can now run New-UnifiedGroup to create a new Office 365 group and Remove-UnifiedGroup to clean up afterwards. Or even Set-UnifiedGroup to maintain group properties if we want to keep it. For example, here’s the command to create a new group object in Azure Active Directory.

New-UnifiedGroup –DisplayName “Ignite 2016” –Alias “Ignite2016” –EmailAddresses Ignite2016@contoso.com

The group is created as an empty object. You have to use the Add-UnifiedGroupLinks cmdlet to add members to the group. First, let’s add an owner:

Add-UnifiedGroup –Identity “Ignite2016” –LinkType Owners –Links TRedmond

To add a member:

Add-UnifiedGroup –Identity “Ignite2016” –LinkType Members  –Links JGuillet

A subscriber (who receives updates by email) can be added by changing the LinkType to “Subscribers”

This stuff isn’t fully documented yet because the roll-out is still in progress. Part of that roll-out is a transformation of existing groups from their existing Azure Active Directory object type to a form that can be synchronized back to on-premises Active Directory. This will allow hybrid Exchange deployments to access Office 365 Groups – the groups will remain in the cloud but they will show up in the on-premises GAL and will be treated as a distribution group. You’ll need to use AADConnect to synchronize AD with AAD to make this all happen.

You’ll see some evidence of the transformation in your tenant by running the Get-UnifiedGroup cmdlet. If this doesn’t return anything, you know that the existing Office 365 groups have not yet been transformed in AAD. When the groups are processed, they will show up when you run Get-UnifiedGroup, as will any new group that you create with New-UnifiedGroup.

You can also see the difference by running the Get-Recipient –RecipientTypeDetails “GroupMailbox” command. This will return all the old and new Office 365 Groups. The old groups have a recipient type of “UserMailbox” while the new groups use “MailUniversalDistributionGroup”, just like regular Exchange distribution groups. This is the change that allows cloud-to-on-premises synchronization of Office 365 groups.

For more information about Office 365 groups, see chapter 7 of “Office 365 for Exchange Professionals” where the topic is dealt with in some depth.

Follow Tony @12Knocksinna

Posted in Office 365 | Tagged , , , , , , | 12 Comments

Understanding how Exchange Online runs

Understanding how Office 365 operates is always an interesting challenge because Microsoft usually doesn’t say too much about how things work within the service. But the Exchange Online folks are pretty good at telling what they are up to, which brings us to the “Behind the Curtain: How we run Exchange Online” session at Microsoft Ignite in Chicago, featuring the talents of Vivek Sharma (Director of Office 365 product management) and Perry Clarke (VP of Exchange development). This provided an update to a similar session given at MEC in 2014 and is available on Microsoft’s Channel 9 service.

Both speakers are interesting people in their own right. In the past, Vivek had a lot to do with the implementation of PowerShell in Exchange 2007 and since then has focused on bringing Exchange Online through from the initial beginnings to BPOS to where it is today. Perry is one of Microsoft’s deep thinkers. A conversation with him is likely to explore what we’ll all be doing in five years’ time and it’s obvious that he has some pretty solid ideas on that point. He wrote the foreword for our just-published “Office 365 for Exchange Professionals” eBook and said some nice things about us, much to the amusement of some of the members of the Exchange development group.

The session began with some comments from Perry about how cloud services are changing the way people think about technology. Typically, companies look at three factors to assess a technology. Cost, risk, and user experience (or functionality). Perry maintains that the cost of an Exchange Online mailbox is at a point that no on-premises implementation can match, if costs are accurately calculated and everything is included. Part of this is because Microsoft has massive buying power for datacenters, storage, servers, and network to achieve price points that even the largest on-premises customer can only dream about.

A solid SLA track record (the most recent result was 99.99% for the first quarter of 2015) means that the perceived risk of companies putting their most important work on Office 365 is much less than it was four years ago when Microsoft launched the service. Finally, the functionality that can be delivered by a cloud service is so much ahead of what is possible for on-premises deployments because of the direct involvement of the engineering group (and some functionality, like Delve and Clutter is only available in the cloud). In a nutshell, Perry advanced a case that cloud services is the only way to achieve the desired combination of cost, risk, and functionality for a technology like email.

Returning back to the size and scale of Exchange Online, some data was offered to illustrate what Microsoft manages. It’s obvious from Microsoft’s financial results that they are enjoying growing revenue from commercial cloud services (the last quarter reported an annual growth of 106%). This growth is reflected in a 1350% increase in Exchange Online servers from Aug 1 2012 to 23 April 2015 compared to the 600% increase reported in 2014. The massive increase in servers is required to maintain capacity and to allow Microsoft to absorb new tenants who move to Office 365.

Interestingly, Exchange Online uses the same kind of rings to distribute new software. The rings are the developers, the Office 365 team, Microsoft in general, First Release Office 365 tenants, and finally, General availability. A similar approach is followed with the current Windows 10 insider program and is due to be used in the Windows Update for Business program announced at Monday’s Ignite keynote.

The increase in users means that Office 365 now deals with 55 billion client authentications annually. That kind of transactional volume cannot be handled when the infrastructure doesn’t scale efficiently.

Exchange Online uses 150 petabytes of storage, most of which is taken up by the 4 copies of the 1.2 million mailbox databases. The standard Office 365 mailbox quota is 50 GB, but naturally it takes time for users (maybe 90 million – Microsoft isn’t saying) to use this quota. The thought went through my mind of how many of the 8 TB 7200 rpm standard JBOD drives used by Office 365 fail daily and how they track and fix all the failures. The answer for how many is “a lot” and the management is done through a mixture of a very sophisticated service fabric and human intervention (to remove and replace the failed drives).

The service fabric controls and manages operations flowing across the service and deals with more than 500 million events that are collected hourly. In addition, 250 million synthetic test transactions are generated daily to validate that the Exchange Online service is working properly. The signals gathered by the transactions are analyzed by computers to detect and fix problems, just like the Managed Availability system in Exchange 2013. There’s no surprise here because Managed Availability is an obvious example of technology transfer from the cloud to on-premises (even more technology is being transferred in Exchange 2016). Machine learning is applied to correlate signals and compare them against known sets (that represent a satisfactory condition) to allow engineers to triangulate and identify the particular root problem.

An automation and orchestration workflow engine is used to maintain servers. The most common problems are hardware (disks and controllers), network, and software bugs. Problems can be automatically fixed or left to engineers, who can set off workflow items to address issues. Processes such as server deployments and upgrades are also dealt with through workflow in a way that allows Exchange Online to bring new capacity online within days of deciding that it’s needed. In this respect, new capacity means something like an additional 40 Database Availability Groups rather than a single server.

A DevOps model is used to run Exchange Online. In other words, development engineers don’t simply throw code over the wall to operations and then switch off. Instead, members of the development group up to and including VP level are on call to handle problems that arise in the service. This ensures that engineers take responsibility for the code that they write for the service. If they get it right, happiness and undisturbed nights. But if they get it wrong…

I find sessions that provide an insight into the trials and tribulations of operating a massive multi-tenant environment very interesting and worthwhile. Although you can follow them later online, there’s nothing quite like hearing someone speak in person. This session reinforced my view that something very special occurs to make Office 365 operate. Take the time to view it once the video is posted and make your own mind up.

Follow Tony @12Knocksinna

Posted in Office 365 | Tagged , , , , , | Leave a comment

Launching Office 365 for Exchange Professionals at Microsoft Ignite


Over 20,000 people are attending Microsoft Ignite this week, where we are all busy attending and giving sessions, meeting partners and friends, and generally making sure that we are well plugged into the technology community. Paul Cunningham, our co-author and esteemed web master of exchangeserverpro.com, isn’t with us but has promised to join us at IT/DEV Connections in Las Vegas next September.

But sad as it is to be without Paul, his absence won’t stop us celebrating the launch of our new eBook Office 365 for Exchange Professionals with some spirit this week. You can reserve your copy of the eBook from exchangeserverpro.com now, but if you’re at Ignite, you might like to try and secure a copy from one of the partners who have helped us deliver the book.

Microsoft logoMicrosoft is our most important partner. We received a huge amount of help and support from the Office 365 engineering teams as we built the content of the book and Microsoft has 600 copies for distribution at Ignite. Even though we always intended the book to be an electronic consumable (we provide PDF and EPUB files from exchangeserverpro.com), Microsoft arranged for 200 special printed copies. This isn’t just a matter of printing off the PDF; Microsoft arranged for a printer to do a limited print run, just as if we were doing a traditional book. Some people prefer printed books to electronic versions and these copies will be unique. Getting hold of a printed copy might be challenging, but here is how you can secure one.

We will have the formal launch of “Office 365 for Exchange Professionals” at 12 noon on Monday, May 4 at the “Geek Out” space under the large Office 365 sign in the exhibition area. Jeff Guillet (the technical editor for the book) and I will be there to celebrate the first edition of the book and will be giving away one hundred printed copies to those who join us.

Unique printed copies of Office 365 for Exchange Professional courtesy of Microsoft

Unique printed copies of Office 365 for Exchange Professional courtesy of Microsoft

Another 400 copies are available on USBs and will be distributed at my “Bumps and Blips on the Road to Cloud Nirvana: From On-Premises Microsoft Exchange to Office 365” (code BRK2164) at 1:30PM on Thursday. The problem here is that nearly 900 people have registered for the session. Clearly we can’t distribute 400 to 900 so Microsoft has stepped up to the plate to guarantee that everyone who comes to the session will receive either a USB containing the book or a voucher for a 1-year subscription to Office 365 Home.

If you miss out on a Microsoft-sponsored copy, you can visit our other partners on the exhibition floor:


ENow Software Inc is our monitoring partner. Apart from checking out MailScape 365 and the other ENow products, you should be sure to try their MEC Trivia game to be crowned the king of Exchange trivia.(booth 423)

We’ll be running the final of the MEC Trivia Quiz at the ScheduledMaintenance party on Tuesday night. ENow is sponsoring a grand prize of $1,000 for the person who is best at answering the quiz questions about anything to do with the history of Exchange. It all promises to be an interesting evening.

TransVault-Logo-cymkTransVault Software is our compliance partner. They’ll be happy to talk to you about all aspects of dealing with pesky PSTs and how to migrate content from different archives into Office 365. (booth 552)

BT_Logo_TaglineBinary Tree is our migration partner. Obviously the whole purpose of the book is to help on-premises customers move workload to Office 365 when they feel the time is right. Binary Tree offers a range of excellent migration options in their E2E Complete product, including the ability to deal with public folders. (booth 573)

NetMailNetmail is our data management partner. Netmail offers a variety of software and services for email, including security, archiving, encryption, and storage. Netmail is using Ignite to launch its new Detach secure attachment management solution for Exchange (2010/2013) and Office 365. (booth 520)

Our partners have a limited number of PDF copies and copies are likely to go fast. You’ll need to buy a copy from our site if you want an EPUB version of the book to read on iPad and other eReaders.

MVPs celebrating the release of Office 365 for Exchange Professionals

MVPs celebrating the release of Office 365 for Exchange Professionals

As I explained when we announced Office 365 for Exchange Professionals, we have chosen the eBook route because it allows us to keep pace with the development cadence of the cloud. Anyone who has tracked the announcements of new features and capabilities made on the Office blog over the last few weeks will understand the challenge involved in updating text to match what is delivered to Office 365 tenants, but we’re going to give it a go. The first update of the book is planned for release in September and we’ll probably launch it at IT/DEV Connections at the Aria Hotel in Las Vegas. As noted above, Paul Cunningham can’t resist coming over to a conference in Sin City, so the entire team will be there to celebrate.

Follow Tony @12Knocksinna

Posted in Office 365 | Tagged , , , , , , | 1 Comment

Exchange Unwashed Digest – April 2015

April was a very busy month. First, Microsoft had a lot of conferences to attend and therefore had many announcements to make. It seemed like every marketing manager had something to say, so we had a blizzard of announcements that needed to be reviewed and analyzed (rather than being simply recycled, as happens so often in the technical press). Secondly, I had lots to do for “Office 365 for Exchange Professionals” to complete the content of the eBook for its launch at Microsoft Ignite on May 4. The good news is that everything is done and dusted and we will have PDFs and EPUB content available on the exchangeserverpro.com site from May 4 onward. We have the work done to provide books through Amazon’s Kindle program but the whopping royalties demanded by Amazon makes that route less attractive for now.

In any case, here’s what appeared on my Exchange Unwashed blog on WindowsITPro.com in April 2015.

Clearing the decks for Ignite – more on Office 365 numbers, anti-malware, and PST imports (April 30): Lots of interesting things pass by in the Interweb every day. The three things that caught my attention as I prepared for Ignite was an update from Mary-Jo Foley about Office 365 numbers, including a new goal for Microsoft to reach by the end of 2018, the news that the infrastructure used by Outlook.com and Office 365 is converging, and the arrival of the Office 365 import service to allow tenants to import large quantities of PST data into online mailboxes.

Enhanced NDRs for Exchange Online but no news for on-premises servers (April 29): Microsoft is doing a nice job to provide better information in non-delivery reports that tell people when their email didn’t get through to an Office 365 recipient. It would be great to see this in Exchange on-premises too. Maybe Exchange 2016?

Office 365 Groups show up in Outlook 2016 Preview (April 28): I like Office 365 Groups and it’s nice to see them finally show up in a version of Outlook, which remains the most popular or at least the most used of all Office clients. It’s Outlook 2016 Preview of course but there’s a rumor that Microsoft will update Outlook 2013 to support groups too. In the meantime, I tell you how to access groups with Outlook 2013 with a method that works without all the fancy new user interface.

Microsoft on course for $6.3 billion run rate for commercial cloud services implying 90 million Office 365 mailboxes (April 23): Microsoft doesn’t release any data about the number of paid subscribers for Office 365 business, but I have been tracking their financial results in an attempt to make sense of the annualized run rate they report for commercial cloud services (which include Office 365). The current best guess is that we are now north of 90 million mailboxes.

Treat the new Office 365 150 MB maximum message size with caution (April 23): It’s obviously nice to be able to send a mega-attachment, but even nicer if the intended recipient can actually receive it. Connectors, other mail servers, and clients all get in the way.

Customer lockbox the most interesting feature in Office 365 security announcements (April 22): I was interested in the announcements made for the RSA security conference but this post didn’t get too much of a reaction, perhaps because the implementation of most of the stuff described in it won’t be delivered until 2016. Kind of what you expect from a marketing announcement…

Microsoft teases about Exchange 2016 but the real detail will be at Ignite (April 21): The Exchange development group posted on EHLO about Exchange 2016 and managed to communicate not a lot about what will actually be in the new version. But they have Ignite audiences to excite and delight, so we’ll hear all in Chicago.

Struggling with the Dropbox integration with Office Online (April 17): Microsoft made a big thing about the integration between Dropbox and the Office Online apps but the prospect of users being able to save direct into Dropbox left enterprise administrators cold. However, it’s a good way to get information back out of Dropbox, if people will use this method to retrieve files and store them in a more compliance-friendly repository. But they probably won’t.

Why do so many different administration interfaces exist inside Office 365? (April 16): After four years of operation you’d kind of imagine that Office 365 would exhibit a certain consistency across the administrative interfaces used for its various applications. But it doesn’t. And there are good reasons why!

Four challenges facing Amazon WorkMail (April 14): So Amazon wants to run a cloud-based email service, which is nice. But I don’t think they will succeed and offer four major challenges that face the purveyors of books as they start to sell mailboxes.

Do you need Advanced Threat Protection? Maybe some new malware is en route to your mailbox! (April 9): Security researchers fear day zero exploits because they might use a new technique that is not easily detected by current anti-malware techniques. Microsoft’s grand plan is to provide an add-on ($2/month per mailbox) service that routes any suspicious content into a sandbox environment where it is probed and assessed to figure out whether it really is bad. ATP is coming soon. It will be interesting to see how many customers use it.

What’s your back-out plan if an Office 365 deployment is unsuccessful? (April 7): It’s unpopular to consider such thoughts, but it might just be the case that a move to embrace Office 365 turns out to be the wrong decision for a company. If so, what do you do then? It’s relatively easy to get information back out of Exchange Online, but not so easy for the other applications.

Enterprise Collaboration sessions selected for IT/DEV Connections 2015 (April 2): September seems so far away, but it will come around pretty soon and lots of work is ongoing to prepare for IT/DEV Connections. We’ve settled on an excellent group of experienced speakers to deliver the content for Enterprise Collaboration, which includes Exchange on-premises, Office 365, and other topics. Hopefully we’ll see you at the Aria Hotel in September.

Phew. That’s a lot of content – and more to come in May as we go through the information gathered at Ignite and report back on what’s important and what’s not. Stay tuned!

Follow Tony @12Knocksinna

Posted in Cloud, Exchange, Exchange 2013, Office 365 | Tagged , , , , , , , , , , , , , , | Leave a comment

Formatting the “Office 365 for Exchange Professionals” eBook

The last stage in our preparations to launch “Office 365 for Exchange Professionals” on May 4 at the Microsoft Ignite conference has centered on formatting the eBook. Those who buy a copy will be able to download PDF and EPUB versions. The PDF is best if you want to read on a PC while EPUB is supported by iPads and other eBook readers.

Word for Windows 2013 does an excellent job of generating PDF output and the only thing we have to check is how the text, graphics, and other elements flow from page to page. For example, it’s generally not good to split a table across two pages or to start a new section a line or two from the bottom of a page.

EPUB is a different matter. We generate the EPUB files using Caliber, a really nice open source eBook manager. Some might not like its user interface but I haven’t run into any problems. I like programs that just work and Caliber falls into this category, providing of course that the input you provide is reasonable. We put the Word document through several runs to produce an EPUB file, checking the output each time to detect issues that we had to fix. Here is the list of problems that we encountered.

Graphics with bad anchors: Word uses “anchors” to fix where graphics and other objects should appear on a page. Typically you want a graphic to move in line with the text to which it refers and the anchor is usually fixed to the figure caption. However, if you use Word as a simple word processor and only ever create documents of a few pages, you probably have never heard about anchors, nor do you worry about text flowing to the top and bottom of a graphic or around a graphic. Our mixed team of authors had varying degrees of experience with Word and we generated a variety of anchors in different places, many of which were absolutely wrong. You find this out when generating output files as graphics then appear in the strangest of places. The only solution is to go through all the chapters and fix the anchors correctly.

Anchors in a Word document

Anchors in a Word document

Oh, and by the way, always use the Insert Picture command to insert a graphic file (JPEG, BMP, etc.) in Word. You can paste a graphic into Word and this will format and print properly for PDF, but the graphics are likely to be dropped when you generate files in an eBook format.

The next thing to avoid are complex tables. Word allows you to get very creative with the way that you layout rows and columns in tables and the colors that are used to highlight table headings and so on. But complex tables have a nasty habit of being thoroughly munged during formatting, so it’s best to stay with simple tables that you can be sure will be supported on an eBook reader. For example, the table shown below has a reasonable chance of surviving the transfer to an eBook. Its sole problem is its width as eBooks tend to be narrower than an A4 or letter-size page. For this reason, narrow tables usually produce better result, so when we go through the book to apply final formatting, we check the width of tables and adjust as necessary.

A simple (but wide) table

A simple (but wide) table

It’s common to construct books from a set of files, each of which is a chapter or other significant section. If you use fields to track figure and table numbers such as Figure 3-1 and Table 7-2, you can run into problems when the time comes to combine everything. It all looks OK when you bring all the files together until you print the file. At that time the fields will be updated and you’ll end up with Figure 3-34 where it should be Figure 3-1. What’s happened here is that all the figures in chapters 1 and 2 have been numbered consecutively so the first figure in chapter 3 starts off at 34 instead of 1.

The fix is easy. Select all the text in the document (CTRL/A) and then lock the fields (CTRL-F11). The fields will now maintain whatever value they have and won’t renumber when printing (and outputting to PDF is a form of printing). Fields can be updated selectively by being unlocked (CTRL-Shift-F11) and then updated (F9).

During the final formatting of the book, we look through pages to make sure that the layout is attractive. We don’t want tables or code examples to split across pages and it always looks better if a section starts on a fresh page. Page breaks are inserted to create the necessary flow and everything looks great in the PDF output. However, those page breaks create a new problem for eBooks because the flow on these devices is more dynamic than in a PDF. We therefore have to remove the page breaks before generating the eBook output files. Fortunately, there’s a reasonably easy way to remove the breaks. In all cases, inserting extra carriage returns to format a document is a bad idea as the extra returns invariably get in the way of formatting.

Section break near the bottom of a page

Section break near the bottom of a page

Our book is about Exchange so it is reasonable to anticipate that PowerShell is mentioned frequently. In fact, we have tons of PowerShell examples and have formatted them in 8-point Consolas typeface to clearly identify code. But here’s the thing – most eBook readers are limited to the fonts that they support and all our nicely formatted PowerShell examples that look so well in the PDF file don’t look so well in the EPUB format and look even worse if you output in MOBI (for Amazon Kindle). The newer AMZ3 format supported embedded fonts but, very oddly, you can’t upload AMZ3 files to Amazon’s Kindle Publishing Platform.

We’ve played around with various approaches but the PowerShell sample code doesn’t look as well as we want in the EPUB files. I’m sure that it is possible to get around this problem with other tools but we don’t have the time to pursue that option at present. Another route might be to outsource the problem to a company that specializes in preparing output for eBook readers, but the costs of processing a 22MB, 630-page, 240,000-word document with 347 graphics and many PowerShell examples is likely to run into several thousands of dollars. Our EPUB output is not that bad!

Using the free PC EPUB reader to review Office 365 for Exchange Professionals

Using the free PC EPUB reader to review Office 365 for Exchange Professionals

One thing we did find out and fix is that it is a very bad idea to include PowerShell examples in the format that we use (enclosed in a 1×1 tables to separate them from text) in bulleted lists as extra bullets can appear when the Word document is converted to EPUB. Thanks to Justin Harris for helping us to chase this problem down to a good resolution.

These are just some of the issues we have run into in the last week. The good news is that the EPUB output has improved steadily and now looks quite good, especially on an iPad. But it also looks quite good on a PC using the free EPUB reader.

We have been asked if we will publish through Amazon in addition to selling books through exchangeserverpro.com. Well, we have done the work to understand the publishing process and what we need to generate both MOBI and AMZ3 format files. Apart from the substantial fees charged by Amazon, we have two major problems to overcome. First, we are not happy with the way that PowerShell code examples are output. That problem might go away when Amazon allow AMZ3 files to be uploaded.

The second issue is how Amazon deals with book updates. Given the dynamic nature of Office 365, we have a plan to produce regular updates for the book and are considering September as a good target for the first update. Given the work required to update the content, we would like to charge a fee for the update. We have not settled on the details yet, but those who have purchased a previous version will probably receive a large discount. Amazon doesn’t seem to have a mechanism to allow this to happen. Book updates use a mechanism that is suitable for updates to a novel where you might want to fix some formatting problems or misspellings, but we might want to rewrite large sections to reflect new functionality or information. It seems like the only way to do this on Amazon is to publish a brand new book. So we would have “Office 365 for Exchange Professionals (May 2015 edition)”, “Office 365 for Exchange Professionals (September 2015 edition), and so on. Pushing out new editions is OK but we wouldn’t be able to offer a discount to those who had bought before.

Update (June 2): We have sorted out the Amazon problems (in some degree) and a Kindle version is available at Amazon.com and its country-level stores. It’s not perfect, but life seldom is..

In the interim, we are locked and loaded and ready for May 4. Site subscribers have access to a discounted version of the book now (the files won’t be available until Monday), but if you’re interested, you can head over to exchangeserverpro.com to buy your copy!

Follow Tony @12Knocksinna

Posted in Office 365 | Tagged , , , , , , , | 1 Comment

Fixing a “FailedAndSuspended” content index for an Exchange 2013 database

For space reasons, this text is another bit that was cut out of my Exchange 2013 Inside Out: Mailbox and High Availability book. FWIW, here it is…

Imagine my annoyance when I ran the Get-MailboxDatabaseCopyStatus cmdlet on a test Exchange 2013 server and found that three of the databases reported a “Failed and Suspended” status for their content index. Despite the rumors to the contrary, I don’t spend my days idly running commands against Exchange to see what happens. I’d been playing with health sets and health reports in an effort to understand these concepts better and was provoked to finding out why my server was deemed unhealthy for data protection when I ran the command to extract the health report based on the data protection health set:

Get-HealthReport –Identity ExServer1 –HealthSet DataProtection

The content index is necessary to enable fast client searches so it is something to be concerned about. Failed and suspended means that Exchange hasn’t been able to fix any problems that it might encounter with the content indexes during normal operations and a reseed is necessary. I wasn’t all that worried in this instance because only test databases were involved, but it’s good to run a tidy shop so the problem had to be addressed.

The failed index

The failed index

These databases form part of a Database Availability Group (DAG). Normally when a content index fails and needs to be reseeded, you simply run the Update-MailboxDatabaseCopy cmdlet and specify the CatalogOnly switch to request Exchange to reseed the content index from a good copy belonging to another database copy. But when you’re running a single-copy database there’s no other good copy (of either the database or the content index) hanging around waiting to be called into play.

Hmmm… TechNet wasn’t too helpful on the topic of reseeding a single-copy database and the suggestions offered in various web sites all leaned toward a complete rebuild of the index. Eventually I decided to go with that plan because there didn’t seem to be any good alternative. Note that users are able to keep on working with their mailboxes even when a database has a failed index. It just means that searches performed with OWA will be slower.

In any case, I used the following steps to get my three errant databases back to good health.

  1. Stopped the Microsoft Exchange Search service
  2. Stopped the Microsoft Exchange Search Host Controller service
  3. Dismounted the database
  4. Deleted the [guid.single] folder in the folder holding the database file. Guid is the Globally Unique Identifier for the database. You can find this by running Get-MailboxDatabase database-name | Select Guid. For example, the folder you need would be something like d:\Databases\DB2\79c03cca-9b53-4959-982a-8773591c5f70.single
  5. Restart the Microsoft Exchange Search Host Controller service
  6. Restart the Microsoft Exchange Search service
  7. Remount the database

As each database was remounted, the Search service recognized that its content index was missing and began the process of rebuilding the index. The content index status will remain  as “Failed” until the rebuild is complete. A couple of minutes later all was well and the server reported full health. Of course, this was a relatively small database so the Search Foundation didn’t have too much work to do to recreate the content index. The process will take longer as the database size grows; it is definitely not something that you will want to do if the index fails for a large database.

I’m not recommending that you delete folders on a production server. Then again, I hope that on a production server you’ll have more than a single copy of any database within the DAG (remember, two copies provides basic redundancy, three is much better, and four copies provides a warm blanket feeling) and will therefore be able to run Update-MailboxDatabaseCopy. But if you do get into a hole, you might be able to use the steps outlined above to get out of it. And that’s always a good thing, isn’t it?

Follow Tony @12Knocksinna

Posted in Exchange 2013 | Tagged , , , , | 3 Comments